diff --git a/docker-compose.yml b/docker-compose.yml index 02958b245..869b7d5de 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,8 +1,9 @@ version: '3' +name: labca services: boulder: # Should match one of the GO_DEV_VERSIONS in test/boulder-tools/tag_and_upload.sh. - image: &boulder_image letsencrypt/boulder-tools:${BOULDER_TOOLS_TAG:-go1.20.5_2023-06-20} + image: ghcr.io/hakwerk/labca-boulder:${LABCA_IMAGE_VERSION:-latest} environment: # To solve HTTP-01 and TLS-ALPN-01 challenges, change the IP in FAKE_DNS # to the IP address where your ACME client's solver is listening. @@ -13,12 +14,9 @@ services: # Forward the parent env's GOEXPERIMENT value into the container. GOEXPERIMENT: ${GOEXPERIMENT:-} volumes: - - .:/opt/boulder:cached - - /home/labca/boulder_labca:/opt/boulder/labca - - /home/labca/nginx_data/static:/opt/wwwstatic - - ./.gocache:/root/.cache/go-build:cached - - ./.hierarchy:/hierarchy/:cached - - ./.softhsm-tokens/:/var/lib/softhsm/tokens/:cached + - boulder_data:/opt/boulder/labca + - nginx_html:/opt/wwwstatic + - softhsm:/var/lib/softhsm/tokens:cached networks: bluenet: ipv4_address: 10.77.77.77 @@ -42,6 +40,7 @@ services: depends_on: - bmysql - bconsul + - control entrypoint: labca/entrypoint.sh working_dir: &boulder_working_dir /opt/boulder logging: @@ -76,8 +75,10 @@ services: bconsul: image: hashicorp/consul:1.14.2 + depends_on: + - control volumes: - - ./test/:/test/:cached + - boulder_data:/opt/boulder/labca networks: consulnet: ipv4_address: 10.55.55.10 @@ -85,27 +86,28 @@ services: ipv4_address: 10.77.77.10 rednet: ipv4_address: 10.88.88.10 - command: "consul agent -dev -config-format=hcl -config-file=/test/consul/config.hcl" + command: "consul agent -dev -config-format=hcl -config-file=/opt/boulder/labca/consul/config.hcl" + working_dir: /opt/boulder restart: always gui: - image: *boulder_image + image: ghcr.io/hakwerk/labca-gui:${LABCA_IMAGE_VERSION:-latest} networks: - bluenet volumes: - /var/run/docker.sock:/var/run/docker.sock - - /home/labca/admin:/go/src/labca - - ./.gocache:/root/.cache/go-build - - /home/labca/nginx_data/static:/opt/wwwstatic - - /home/labca/backup:/opt/backup - - .:/opt/boulder - - /home/labca/boulder_labca:/opt/boulder/labca + - ./docker-compose.yml:/opt/boulder/docker-compose.yml + - ldata:/opt/labca/data + - nginx_html:/opt/wwwstatic + - backup:/opt/backup + - boulder_data:/opt/boulder/labca expose: - 3000 depends_on: - bmysql - working_dir: /go/src/labca - command: ./setup.sh + - control + working_dir: /opt/labca + command: bin/labca-gui logging: driver: "json-file" options: @@ -122,27 +124,26 @@ services: - 80:80 - 443:443 volumes: - - /home/labca/nginx_data/conf.d:/etc/nginx/conf.d - - /home/labca/nginx_data/ssl:/etc/nginx/ssl - - /home/labca/nginx_data/static:/var/www/html + - nginx_conf:/etc/nginx/conf.d + - nginx_ssl:/etc/nginx/ssl + - nginx_html:/var/www/html + depends_on: + - control control: - image: *boulder_image + image: ghcr.io/hakwerk/labca-control:${LABCA_IMAGE_VERSION:-latest} networks: - bluenet volumes: - /var/run/docker.sock:/var/run/docker.sock - - /home/labca/admin/data:/opt/labca/data - - /home/labca/admin/data:/opt/labca/gui/data - - /home/labca/admin/bin:/opt/labca/bin - - /home/labca/labca:/opt/labca - - /home/labca/backup:/opt/backup - - /home/labca/control_logs:/opt/logs - - .:/opt/boulder - - /home/labca/boulder_labca:/opt/boulder/labca - - /home/labca/nginx_data/conf.d:/etc/nginx/conf.d - - /home/labca/nginx_data/ssl:/etc/nginx/ssl - - /home/labca/nginx_data/static:/var/www/html + - ./docker-compose.yml:/opt/boulder/docker-compose.yml + - ldata:/opt/labca/data + - backup:/opt/backup + - logs:/opt/logs + - boulder_data:/opt/boulder/labca + - nginx_conf:/etc/nginx/conf.d + - nginx_ssl:/etc/nginx/ssl + - nginx_html:/var/www/html expose: - 3030 environment: @@ -153,6 +154,14 @@ services: volumes: dbdata: + nginx_conf: + nginx_ssl: + nginx_html: + boulder_data: + ldata: + backup: + logs: + softhsm: networks: bluenet: