cas-webapp-docker icon indicating copy to clipboard operation
cas-webapp-docker copied to clipboard

Apereo CAS Server web application running inside a docker container.

Central Authentication Service (CAS) License

Introduction

This repository hosts the Docker build configuration necessary to build a CAS image. See the Dockerfile for more info.

Versions

A docker image for CAS server. Images are tagged to match CAS server releases.

Requirements

  • Docker version 1.9.x ~ 18.x

Configuration

Image

  • The image will be available on the host via ports 8080 and 8443
  • You must check the Dockerfile to ensure the right branch from the CAS overlay project is pulled/cloned.
  • Check the CAS overlay project itself to figure out the targetted CAS release.

SSL

  • Update the thekeystore file with the server certificate and chain if you need access the CAS server via HTTPS.
  • The password for the keystore is changeit.
  • The build will automatically copy the keystore file to the image. The embedded container packaged in the overlay is pre-configured to use that keystore for HTTPS requests.
keytool -genkeypair -alias cas -keyalg RSA -keypass changeit \
        -storepass changeit -keystore ./thekeystore \
        -dname "CN=cas.example.org,OU=Example,OU=Org,C=AU" \
        -ext SAN="dns:example.org,dns:localhost,ip:127.0.0.1"

...and add cas.example.org to your hosts file:

# echo '127.0.0.1 cas.example.org' >> /etc/hosts

Be sure to adjust the above values to match your CAS domain.

CAS Configuration

The build will also auto-copy configuration files under the etc/cas directory to the corresponding locations inside the image.

Build

NOTE: On windows, you may want to run bash first so you can execute shell scripts.

./build.sh $CasVersion

The image will be built as apereo/cas:v$CasVersion.

Run

./run.sh $CasVersion

Release

  • New images shall be released at the time of a new CAS server release.
  • Image versions are reflected in the build|run.sh files and need to be updated per CAS/Image release.
  • Images are published to https://hub.docker.com/r/apereo/cas/
./push.sh $CasVersion