97 lines
No EOL
2.4 KiB
YAML
97 lines
No EOL
2.4 KiB
YAML
version: "2"
|
|
|
|
services :
|
|
|
|
boulder:
|
|
# To minimize fetching this should be the same version used below
|
|
image: containous/boulder:containous-acmev2
|
|
environment:
|
|
FAKE_DNS: 172.17.0.1
|
|
PKCS11_PROXY_SOCKET: tcp://boulder-hsm:5657
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- le.wtf:127.0.0.1
|
|
- boulder:127.0.0.1
|
|
ports:
|
|
- 4000:4000 # ACME
|
|
- 4001:4001 # ACMEv2
|
|
- 4002:4002 # OCSP
|
|
- 4003:4003 # OCSP
|
|
- 4430:4430 # ACME via HTTPS
|
|
- 4431:4431 # ACMEv2 via HTTPS
|
|
- 4500:4500 # ct-test-srv
|
|
- 6000:6000 # gsb-test-srv
|
|
- 8000:8000 # debug ports
|
|
- 8001:8001
|
|
- 8002:8002
|
|
- 8003:8003
|
|
- 8004:8004
|
|
- 8005:8005
|
|
- 8006:8006
|
|
- 8008:8008
|
|
- 8009:8009
|
|
- 8010:8010
|
|
- 8055:8055 # dns-test-srv updates
|
|
- 9380:9380 # mail-test-srv
|
|
- 9381:9381 # mail-test-srv
|
|
depends_on:
|
|
- bhsm
|
|
- bmysql
|
|
networks:
|
|
- default
|
|
|
|
bhsm:
|
|
# To minimize fetching this should be the same version used above
|
|
image: letsencrypt/boulder-tools:2018-03-07
|
|
hostname: boulder-hsm
|
|
environment:
|
|
PKCS11_DAEMON_SOCKET: tcp://0.0.0.0:5657
|
|
command: /usr/local/bin/pkcs11-daemon /usr/lib/softhsm/libsofthsm2.so
|
|
expose:
|
|
- 5657
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- boulder-hsm
|
|
|
|
bmysql:
|
|
image: mariadb:10.1
|
|
hostname: boulder-mysql
|
|
environment:
|
|
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
|
|
command: mysqld --bind-address=0.0.0.0
|
|
logging:
|
|
driver: none
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- boulder-mysql
|
|
|
|
## TRAEFIK part ##
|
|
|
|
traefik:
|
|
build:
|
|
context: ../..
|
|
image: containous/traefik:latest
|
|
command: --configFile=/etc/traefik/conf/acme.toml
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- traefik.boulder.com:172.17.0.1
|
|
volumes:
|
|
- "./acme.toml:/etc/traefik/conf/acme.toml:ro"
|
|
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
|
- "./acme.json:/etc/traefik/conf/acme.json:rw"
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
- "5001:443" # Needed for SNI challenge
|
|
- "5002:80" # Needed for HTTP challenge
|
|
expose:
|
|
- "8080"
|
|
labels:
|
|
- "traefik.port=8080"
|
|
- "traefik.backend=traefikception"
|
|
- "traefik.frontend.rule=Host:traefik.localhost.com"
|
|
- "traefik.enable=true"
|
|
depends_on:
|
|
- boulder |