services: {%- if ',' in cookiecutter.__component_list_slug -%} {%- set components = cookiecutter.__component_list_slug.split(',') -%} {%- for component in components %} {{ component }}: image: "{{ component }}:${% raw %}{{% endraw %}{{ component.upper() }}_VERSION{% raw %}}{% endraw %}" container_name: "{{ cookiecutter.__service_slug }}-{{ component }}-${CONTEXT}" networks: {{ cookiecutter.__service_slug }}-${CONTEXT}: profiles: ["full", "{{ component }}"] extends: file: common-settings.yml service: common-settings ports: # - "8080:80" volumes: # - /opt/docker-data/{{ cookiecutter.__service_slug }}-{{ component }}-${CONTEXT}/{{ component }}/data/db:/usr/lib/{{ component }} # - /opt/docker-data/{{ cookiecutter.__service_slug }}-{{ component }}-${CONTEXT}/{{ component }}/data/logs:/var/log/{{ component }} # - /opt/docker-data/{{ cookiecutter.__service_slug }}-{{ component }}-${CONTEXT}/{{ component }}/config:/etc/{{ component }} environment: # {{ component.upper() }}_USER: ${% raw %}{{% endraw %}{{ component.upper() }}_USER{% raw %}}{% endraw %} # {{ component.upper() }}_PASSWORD: ${% raw %}{{% endraw %}{{ component.upper() }}_PASSWORD{% raw %}}{% endraw %} {%- endfor -%} {%- else %} {{ cookiecutter.__component_list_slug }}: image: "{{ cookiecutter.__component_list_slug }}:${% raw %}{{% endraw %}{{ cookiecutter.__component_list_slug.upper() }}_VERSION{% raw %}}{% endraw %}" container_name: "{{ cookiecutter.__service_slug }}-${CONTEXT}" networks: {{ cookiecutter.__service_slug }}-${CONTEXT}: extends: file: common-settings.yml service: common-settings ports: # - "8080:80" volumes: # - /opt/docker-data/{{ cookiecutter.__service_slug }}-${CONTEXT}/data/db:/usr/lib/{{ cookiecutter.__service_slug }} # - /opt/docker-data/{{ cookiecutter.__service_slug }}-${CONTEXT}/data/logs:/var/log/{{ cookiecutter.__service_slug }} # - /opt/docker-data/{{ cookiecutter.__service_slug }}-${CONTEXT}/config:/etc/{{ cookiecutter.__service_slug }} environment: # {{ cookiecutter.__component_list_slug.upper() }}_USER: ${% raw %}{{% endraw %}{{ cookiecutter.__component_list_slug.upper() }}_USER{% raw %}}{% endraw %} # {{ cookiecutter.__component_list_slug.upper() }}_PASSWORD: ${% raw %}{{% endraw %}{{ cookiecutter.__component_list_slug.upper() }}_PASSWORD{% raw %}}{% endraw %} {%- endif %} networks: {{ cookiecutter.__service_slug }}-${CONTEXT}: name: {{ cookiecutter.__service_slug }}-${CONTEXT} driver: bridge driver_opts: com.docker.network.enable_ipv6: "false" ipam: driver: default config: # - subnet: 172.21.184.0/24