--- - name: run mailman server containers docker_compose: project_name: "mailman" definition: version: '2' services: mailman-web: image: maxking/mailman-web:0.3.5 depends_on: - database links: - database:database volumes: - /opt/mailman/web:/opt/mailman-web-data environment: DATABASE_TYPE: "postgres" DATABASE_URL: "postgres://mailman:{{ mailman_secrets.postgres_password }}@database/mailmandb" HYPERKITTY_API_KEY: "{{ mailman_secrets.hyperkitty_api_key }}" SERVE_FROM_DOMAIN: "lists.data.coop" MAILMAN_ADMIN_USER: "valberg" MAILMAN_ADMIN_EMAIL: "valberg@orn.li" SECRET_KEY: "{{ mailman_secrets.django_secret_key }}" VIRTUAL_HOST: "lists.data.coop" VIRTUAL_PORT: 8000 LETSENCRYPT_HOST: "lists.data.coop" LETSENCRYPT_EMAIL: "{{ letsencrypt_email }}" networks: - "mailman" - "postfix" - "external_services" mailman-core: image: maxking/mailman-core:0.3 volumes: - /opt/mailman/core:/opt/mailman/ stop_grace_period: 30s links: - mailman-web:mailmain-web - database:database depends_on: - database environment: DATABASE_URL: "postgres://mailman:{{ mailman_secrets.postgres_password }}@database/mailmandb" DATABASE_TYPE: "postgres" DATABASE_CLASS: "mailman.database.postgresql.PostgreSQLDatabase" HYPERKITTY_API_KEY: "{{ mailman_secrets.hyperkitty_api_key }}" networks: - "mailman" - "postfix" - "external_services" database: environment: POSTGRES_DB: mailmandb POSTGRES_USER: mailman POSTGRES_PASSWORD: "{{ mailman_secrets.postgres_password }}" restart: always image: postgres:13 volumes: - /opt/mailman/database:/var/lib/postgresql/data networks: - "mailman" networks: mailman: postfix: external: true external_services: external: true