From 4f408810fc5ed4afacc735eb43abf5dce9a99f9e Mon Sep 17 00:00:00 2001 From: Pedro Campos Date: Mon, 17 Jan 2022 05:53:56 -0300 Subject: [PATCH] Avoid docker image/volume collision by prefixing with project slug (#3528) Co-authored-by: Bruno Alla Co-authored-by: Bruno Alla --- docs/developing-locally-docker.rst | 8 +++++--- {{cookiecutter.project_slug}}/local.yml | 26 ++++++++++++------------- 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/docs/developing-locally-docker.rst b/docs/developing-locally-docker.rst index 17e47bfb..e0b522c8 100644 --- a/docs/developing-locally-docker.rst +++ b/docs/developing-locally-docker.rst @@ -167,16 +167,18 @@ docker The ``container_name`` from the yml file can be used to check on containers with docker commands, for example: :: - $ docker logs worker - $ docker top worker + $ docker logs _local_celeryworker + $ docker top _local_celeryworker +Notice that the ``container_name`` is generated dynamically using your project slug as a prefix + Mailhog ~~~~~~~ When developing locally you can go with MailHog_ for email testing provided ``use_mailhog`` was set to ``y`` on setup. To proceed, -#. make sure ``mailhog`` container is up and running; +#. make sure ``_local_mailhog`` container is up and running; #. open up ``http://127.0.0.1:8025``. diff --git a/{{cookiecutter.project_slug}}/local.yml b/{{cookiecutter.project_slug}}/local.yml index 89c08782..5090c5ce 100644 --- a/{{cookiecutter.project_slug}}/local.yml +++ b/{{cookiecutter.project_slug}}/local.yml @@ -1,8 +1,8 @@ version: '3' volumes: - local_postgres_data: {} - local_postgres_data_backups: {} + {{ cookiecutter.project_slug }}_local_postgres_data: {} + {{ cookiecutter.project_slug }}_local_postgres_data_backups: {} services: django:{% if cookiecutter.use_celery == 'y' %} &django{% endif %} @@ -10,7 +10,7 @@ services: context: . dockerfile: ./compose/local/django/Dockerfile image: {{ cookiecutter.project_slug }}_local_django - container_name: django + container_name: {{ cookiecutter.project_slug }}_local_django depends_on: - postgres {%- if cookiecutter.use_celery == 'y' %} @@ -33,16 +33,16 @@ services: context: . dockerfile: ./compose/production/postgres/Dockerfile image: {{ cookiecutter.project_slug }}_production_postgres - container_name: postgres + container_name: {{ cookiecutter.project_slug }}_local_postgres volumes: - - local_postgres_data:/var/lib/postgresql/data:Z - - local_postgres_data_backups:/backups:z + - {{ cookiecutter.project_slug }}_local_postgres_data:/var/lib/postgresql/data:Z + - {{ cookiecutter.project_slug }}_local_postgres_data_backups:/backups:z env_file: - ./.envs/.local/.postgres docs: image: {{ cookiecutter.project_slug }}_local_docs - container_name: docs + container_name: {{ cookiecutter.project_slug }}_local_docs build: context: . dockerfile: ./compose/local/docs/Dockerfile @@ -59,7 +59,7 @@ services: mailhog: image: mailhog/mailhog:v1.0.0 - container_name: mailhog + container_name: {{ cookiecutter.project_slug }}_local_mailhog ports: - "8025:8025" @@ -68,12 +68,12 @@ services: redis: image: redis:6 - container_name: redis + container_name: {{ cookiecutter.project_slug }}_local_redis celeryworker: <<: *django image: {{ cookiecutter.project_slug }}_local_celeryworker - container_name: celeryworker + container_name: {{ cookiecutter.project_slug }}_local_celeryworker depends_on: - redis - postgres @@ -86,7 +86,7 @@ services: celerybeat: <<: *django image: {{ cookiecutter.project_slug }}_local_celerybeat - container_name: celerybeat + container_name: {{ cookiecutter.project_slug }}_local_celerybeat depends_on: - redis - postgres @@ -99,7 +99,7 @@ services: flower: <<: *django image: {{ cookiecutter.project_slug }}_local_flower - container_name: flower + container_name: {{ cookiecutter.project_slug }}_local_flower ports: - "5555:5555" command: /start-flower @@ -112,7 +112,7 @@ services: context: . dockerfile: ./compose/local/node/Dockerfile image: {{ cookiecutter.project_slug }}_local_node - container_name: node + container_name: {{ cookiecutter.project_slug }}_local_node depends_on: - django volumes: