Docker container configuration for SimpleSAMLphp built on top of Alpine Linux
Includes build routines for both vanilla SimpleSAMLphp and a container preconfigured with the Tozny IDP module.
This project builds two Docker images, one each for:
- a vanilla SimpleSAMLphp server
- a Tozny Authentication-enabled SimpleSAMLphp server
To build either project, cd
into the appropriate directory and run docker build .
. Both containers are otherwise available on Docker Hub.
There are two example Docker Compose projects available to illustrate how the new containers can be used with Nginx as a front-end proxy. To run either project, cd
into the appropriate directory, configure your parameters, and run docker-compose up
.
Create a configuration file called /params.yml
that defines your authentication sources and metadata (feel free to use params.yml.dist
as an example):
# params.yml
entity_id: This is a secret
secretsalt: This is a secret
adminpassword: This is a secret
authsources:
- name: This is a secret
idp: This is a secret
metadata:
- entityid: This is a secret
metadata_set: This is a secret
ssos:
binding: This is a secret
location: This is a secret
slo:
binding: This is a secret
location: This is a secret
certdata: This is a secret
name_id_format: This is a secret
This file needs to be mounted into the container, either directly via:
$ docker run -v $(pwd)/myparams.yml:/params.yml tozny/simplesamlphp
or as a volume in docker-compose.yml
. Either way, upon first run the container will automatically write SimpleSAMLphp's configuration files for you based on this document.
The two stacks will run on localhost
, the vanilla server will be exposed on port 8080 and the one with Tozny integrated on port 8090.
Docker files inspired heavily by: