mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2024-11-14 21:57:09 +03:00
b312d516a4
## Description Replace Caddy with Traefik ## Rationale There is some trouble with the Caddy license (https://github.com/pydanny/cookiecutter-django/pull/1282#issuecomment-329617536) @drdaeman suggested using Traefik (https://github.com/pydanny/cookiecutter-django/pull/1282#issuecomment-353655273) which supports ACME and also plays very nice with Docker. ## Comments I am currently using the proposed setup on a live site and it working great so far. If this PR is of interest to the maintainers, then I could commit more changes and take care of the documentation. Of course, any suggestions by the more experienced people around here, are welcome!
68 lines
1.6 KiB
YAML
68 lines
1.6 KiB
YAML
version: '3'
|
|
|
|
volumes:
|
|
production_postgres_data: {}
|
|
production_postgres_data_backups: {}
|
|
production_traefik: {}
|
|
|
|
services:
|
|
django:{% if cookiecutter.use_celery == 'y' %} &django{% endif %}
|
|
build:
|
|
context: .
|
|
dockerfile: ./compose/production/django/Dockerfile
|
|
image: {{ cookiecutter.project_slug }}_production_django
|
|
depends_on:
|
|
- postgres
|
|
- redis
|
|
env_file:
|
|
- ./.envs/.production/.django
|
|
- ./.envs/.production/.postgres
|
|
command: /start
|
|
|
|
postgres:
|
|
build:
|
|
context: .
|
|
dockerfile: ./compose/production/postgres/Dockerfile
|
|
image: {{ cookiecutter.project_slug }}_production_postgres
|
|
volumes:
|
|
- production_postgres_data:/var/lib/postgresql/data
|
|
- production_postgres_data_backups:/backups
|
|
env_file:
|
|
- ./.envs/.production/.postgres
|
|
|
|
traefik:
|
|
build:
|
|
context: .
|
|
dockerfile: ./compose/production/traefik/Dockerfile
|
|
image: {{ cookiecutter.project_slug }}_production_traefik
|
|
depends_on:
|
|
- django
|
|
volumes:
|
|
- production_traefik:/etc/traefik/acme
|
|
ports:
|
|
- "0.0.0.0:80:80"
|
|
- "0.0.0.0:443:443"
|
|
|
|
redis:
|
|
image: redis:3.2
|
|
{%- if cookiecutter.use_celery == 'y' %}
|
|
|
|
celeryworker:
|
|
<<: *django
|
|
image: {{ cookiecutter.project_slug }}_production_celeryworker
|
|
command: /start-celeryworker
|
|
|
|
celerybeat:
|
|
<<: *django
|
|
image: {{ cookiecutter.project_slug }}_production_celerybeat
|
|
command: /start-celerybeat
|
|
|
|
flower:
|
|
<<: *django
|
|
image: {{ cookiecutter.project_slug }}_production_flower
|
|
ports:
|
|
- "5555:5555"
|
|
command: /start-flower
|
|
|
|
{%- endif %}
|