Skip to content
This repository was archived by the owner on Nov 14, 2022. It is now read-only.

Commit

Permalink
🐳 Inject Traefik public networks from Cookiecutter
Browse files Browse the repository at this point in the history
Inject Traefik public networks from Cookiecutter as Docker Compose doesn't expand env vars in dict keys
  • Loading branch information
tiangolo committed Feb 28, 2018
1 parent d1f2c21 commit f92a3bf
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 11 deletions.
6 changes: 3 additions & 3 deletions {{cookiecutter.project_slug}}/.gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ build-prod:
deploy-branch:
stage: deploy
script:
- DOMAIN={{cookiecutter.domain_branch}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag_branch}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TRAEFIK_PUBLIC_NETWORK={{cookiecutter.traefik_public_network}} TAG=branch docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- DOMAIN={{cookiecutter.domain_branch}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag_branch}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TAG=branch docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- docker stack deploy -c docker-stack.yml --with-registry-auth {{cookiecutter.docker_swarm_stack_name_branch}}
environment:
name: branch
Expand All @@ -79,7 +79,7 @@ deploy-branch:
deploy-stag:
stage: deploy
script:
- DOMAIN={{cookiecutter.domain_staging}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag_staging}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TRAEFIK_PUBLIC_NETWORK={{cookiecutter.traefik_public_network}} TAG=stag docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- DOMAIN={{cookiecutter.domain_staging}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag_staging}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TAG=stag docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- docker stack deploy -c docker-stack.yml --with-registry-auth {{cookiecutter.docker_swarm_stack_name_staging}}
environment:
name: staging
Expand All @@ -93,7 +93,7 @@ deploy-stag:
deploy-prod:
stage: deploy
script:
- DOMAIN={{cookiecutter.domain_main}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TRAEFIK_PUBLIC_NETWORK={{cookiecutter.traefik_public_network}} TAG=prod docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- DOMAIN={{cookiecutter.domain_main}} TRAEFIK_TAG={{cookiecutter.traefik_constraint_tag}} TRAEFIK_PUBLIC_TAG={{cookiecutter.traefik_public_constraint_tag}} TAG=prod docker-compose -f docker-compose.yml -f docker-compose.admin.yml -f docker-compose.images.yml -f docker-compose.deploy.yml config > docker-stack.yml
- docker stack deploy -c docker-stack.yml --with-registry-auth {{cookiecutter.docker_swarm_stack_name_main}}
environment:
name: production
Expand Down
14 changes: 7 additions & 7 deletions {{cookiecutter.project_slug}}/docker-compose.deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ services:
- "traefik.enable=true"
- "traefik.port=5050"
- "traefik.tags=${TRAEFIK_PUBLIC_TAG}"
- "traefik.docker.network=${TRAEFIK_PUBLIC_NETWORK}"
- "traefik.docker.network={{cookiecutter.traefik_public_network}}"
# Traefik service that listens to HTTP
- "traefik.redirectorservice.frontend.entryPoints=http"
- "traefik.redirectorservice.frontend.redirect.entryPoint=https"
# Traefik service that listens to HTTPS
- "traefik.webservice.frontend.entryPoints=https"
networks:
- ${TRAEFIK_PUBLIC_NETWORK}
- {{cookiecutter.traefik_public_network}}
- default
swagger-ui:
deploy:
Expand Down Expand Up @@ -45,14 +45,14 @@ services:
- "traefik.enable=true"
- "traefik.port=80"
- "traefik.tags=${TRAEFIK_PUBLIC_TAG}"
- "traefik.docker.network=${TRAEFIK_PUBLIC_NETWORK}"
- "traefik.docker.network={{cookiecutter.traefik_public_network}}"
# Traefik service that listens to HTTP
- "traefik.redirectorservice.frontend.entryPoints=http"
- "traefik.redirectorservice.frontend.redirect.entryPoint=https"
# Traefik service that listens to HTTPS
- "traefik.webservice.frontend.entryPoints=https"
networks:
- ${TRAEFIK_PUBLIC_NETWORK}
- {{cookiecutter.traefik_public_network}}
- default
flower:
deploy:
Expand All @@ -61,14 +61,14 @@ services:
- "traefik.enable=true"
- "traefik.port=5555"
- "traefik.tags=${TRAEFIK_PUBLIC_TAG}"
- "traefik.docker.network=${TRAEFIK_PUBLIC_NETWORK}"
- "traefik.docker.network={{cookiecutter.traefik_public_network}}"
# Traefik service that listens to HTTP
- "traefik.redirectorservice.frontend.entryPoints=http"
- "traefik.redirectorservice.frontend.redirect.entryPoint=https"
# Traefik service that listens to HTTPS
- "traefik.webservice.frontend.entryPoints=https"
networks:
- ${TRAEFIK_PUBLIC_NETWORK}
- {{cookiecutter.traefik_public_network}}
- default
backend:
deploy:
Expand All @@ -89,5 +89,5 @@ volumes:
app-db-data: {}

networks:
${TRAEFIK_PUBLIC_NETWORK}:
{{cookiecutter.traefik_public_network}}:
external: true
1 change: 0 additions & 1 deletion {{cookiecutter.project_slug}}/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,3 @@ services:
- FIRST_SUPERUSER={{cookiecutter.first_superuser}}
- FIRST_SUPERUSER_PASSWORD={{cookiecutter.first_superuser_password}}
frontend:

0 comments on commit f92a3bf

Please sign in to comment.