--- docker_registry_id: "{{ service_name }}-registry" docker_registry_image_name: "library/registry" docker_registry_image_version: "2.7" docker_portus_secret_key_base: docker-portus-secret-key-base docker_portus_password: docker-portus-admin docker_postgres_portus_image_name: "postgres" docker_postgres_portus_image_version: "12" docker_portus_postgres_database: docker-portus-postgres docker_portus_postgres_username: docker-portus-postgres-admin docker_portus_postgres_password: docker-portus-postgres-admin docker_registry_docker: { networks: [ { name: front-tier, external: true, }, { name: back-tier, external: true, }, ], volumes: [ { name: "{{ service_name }}-registry-data", }, { name: "{{ service_name }}-postgres-portus-data" } ], services: [ { name: "{{ service_name }}-portus", image_name: "opensuse/portus", image_version: "2.4", environment: [ "PORTUS_MACHINE_FQDN_VALUE: \"{{ stage_server_url_host }}\"", "PORTUS_DB_HOST: \"{{ service_name }}-postgres-portus\"", "PORTUS_DB_DATABASE: \"{{ docker_portus_postgres_database }}\"", "PORTUS_DB_USERNAME: \"{{ docker_portus_postgres_username }}\"", "PORTUS_DB_PASSWORD: \"{{ docker_portus_postgres_password }}\"", "PORTUS_DB_POOL: \"5\"", "PORTUS_SECRET_KEY_BASE: \"{{ docker_portus_secret_key_base }}\"", "PORTUS_KEY_PATH: \"/certificates/portus.key\"", "PORTUS_PASSWORD: \"{{ docker_portus_password }}\"", "PORTUS_PUMA_TLS_KEY: \"/certificates/portus.key\"", "PORTUS_PUMA_TLS_CERT: \"/certificates/portus.crt\"", "RAILS_SERVE_STATIC_FILES: \"true\"", ], volumes: [ '"{{ service_name }}-postgres-portus-data:/var/lib/postgresql/data"', ], networks: [ '"front-tier"', '"back-tier"', ] }, { name: "{{ service_name }}-portus-background", image_name: "opensuse/portus", image_version: "2.4", environment: [ "CCONFIG_PREFIX: \"PORTUS\"", "PORTUS_MACHINE_FQDN_VALUE: \"{{ stage_server_url_host }}\"", "PORTUS_DB_HOST: \"{{ service_name }}-postgres-portus\"", "PORTUS_DB_DATABASE: \"{{ docker_portus_postgres_database }}\"", "PORTUS_DB_USERNAME: \"{{ docker_portus_postgres_username }}\"", "PORTUS_DB_PASSWORD: \"{{ docker_portus_postgres_password }}\"", "PORTUS_DB_POOL: \"5\"", "PORTUS_SECRET_KEY_BASE: \"{{ docker_portus_secret_key_base }}\"", "PORTUS_KEY_PATH: \"/certificates/portus.key\"", "PORTUS_PASSWORD: \"{{ docker_portus_password }}\"", "PORTUS_BACKGROUND: \"true\"", ], volumes: [ '"./secrets:/certificates:ro"', ], networks: [ '"back-tier"', ] }, { name: "{{ service_name }}-postgres-portus", image_name: "{{ docker_postgres_portus_image_name }}", image_version: "{{ docker_postgres_portus_image_version }}", environment: [ 'POSTGRES_DB: "{{ docker_portus_postgres_database }}"', 'POSTGRES_USER: "{{ docker_portus_postgres_username }}"', 'POSTGRES_PASSWORD: "{{ docker_portus_postgres_password }}"', ], volumes: [ '"{{ service_name }}-postgres-portus-data:/var/lib/postgresql/data"', ], networks: [ '"back-tier"', ], ports: "{{ docker_registry_postgres_ports | default([]) }}", }, { name: "{{ service_name }}-registry", image_name: "{{ docker_registry_image_name }}", image_version: "{{ docker_registry_image_version }}", command: [ '"/bin/sh"', '"/etc/docker/registry/init"', ], environment: [ "REGISTRY_HTTP_SECRET: \"3a025df1-c7df-4c63-9ec4-103ffe3bde42\"", "REGISTRY_AUTH_TOKEN_REALM: \"{{ stage_server_url }}/v2/token\"", "REGISTRY_AUTH_TOKEN_SERVICE: \"{{ stage_server_url_host }}\"", "REGISTRY_AUTH_TOKEN_ISSUER: \"{{ stage_server_url_host }}\"", "REGISTRY_AUTH_TOKEN_ROOTCERTBUNDLE: \"/secrets/portus.crt\"", "REGISTRY_HTTP_TLS_CERTIFICATE: \"/secrets/portus.crt\"", "REGISTRY_HTTP_TLS_KEY: \"/secrets/portus.key\"", ], volumes: [ '"{{ service_name }}-registry-data:/var/lib/registry"', '"./secrets:/secrets:ro"', '"./registry/init:/etc/docker/registry/init:ro"', '"./registry/config.yml:/etc/docker/registry/config.yml:ro"', ], networks: [ '"front-tier"' ], ports: "{{ docker_registry_ports | default([]) }}", } ] }