This commit is contained in:
Philipp Rothmann 2022-05-24 12:12:06 +02:00
parent c017d59e02
commit 6ef929aa5c
2 changed files with 114 additions and 8 deletions

View File

@ -6,3 +6,6 @@ DOMAIN=zammad.example.com
#EXTRA_DOMAINS=', `www.zammad.example.com`'
LETS_ENCRYPT_ENV=production
POSTGRES_USER=zammad
POSTGRES_PASS=zammad

View File

@ -2,16 +2,68 @@
version: "3.8"
services:
zammad-backup:
command: ["zammad-backup"]
depends_on:
- zammad-railsserver
- zammad-postgresql
entrypoint: /usr/local/bin/backup.sh
environment:
- BACKUP_SLEEP=86400
- HOLD_DAYS=10
- POSTGRESQL_USER=${POSTGRES_USER}
- POSTGRESQL_PASSWORD=${POSTGRES_PASS}
image: zammad/zammad-docker-compose:zammad-postgresql-5.1.1-11
volumes:
- zammad-backup:/var/tmp/zammad
- zammad-data:/opt/zammad
zammad-elasticsearch:
environment:
- discovery.type=single-node
image: zammad/zammad-docker-compose:zammad-elasticsearch-5.1.1-11
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
zammad-init:
command: ["zammad-init"]
depends_on:
- zammad-postgresql
environment:
- MEMCACHE_SERVERS=zammad-memcached:11211
- POSTGRESQL_USER=${POSTGRES_USER}
- POSTGRESQL_PASS=${POSTGRES_PASS}
- REDIS_URL=redis://zammad-redis:6379
image: zammad/zammad-docker-compose:zammad-5.1.1-11
volumes:
- zammad-data:/opt/zammad
deploy:
restart_policy:
condition: on-failure
zammad-memcached:
command: memcached -m 256M
image: memcached:1.6.10-alpine
app:
image: nginx:1.20.0
command: ["zammad-nginx"]
depends_on:
- zammad-railsserver
image: zammad/zammad-docker-compose:zammad-5.1.1-11
volumes:
- zammad-data:/opt/zammad
networks:
- proxy
- default
environment:
- NGINX_SERVER_SCHEME=http
deploy:
restart_policy:
condition: on-failure
labels:
- "traefik.enable=true"
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=80"
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=8080"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
@ -20,13 +72,64 @@ services:
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "coop-cloud.${STACK_NAME}.version="
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
zammad-postgresql:
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASS}
image: zammad/zammad-docker-compose:zammad-postgresql-5.1.1-11
volumes:
- postgresql-data:/var/lib/postgresql/data
zammad-railsserver:
command: ["zammad-railsserver"]
depends_on:
- zammad-memcached
- zammad-postgresql
- zammad-redis
environment:
- MEMCACHE_SERVERS=zammad-memcached:11211
- REDIS_URL=redis://zammad-redis:6379
image: zammad/zammad-docker-compose:zammad-5.1.1-11
volumes:
- zammad-data:/opt/zammad
zammad-redis:
image: redis:6.2.5-alpine
zammad-scheduler:
command: ["zammad-scheduler"]
depends_on:
- zammad-memcached
- zammad-railsserver
- zammad-redis
environment:
- MEMCACHE_SERVERS=zammad-memcached:11211
- REDIS_URL=redis://zammad-redis:6379
image: zammad/zammad-docker-compose:zammad-5.1.1-11
volumes:
- zammad-data:/opt/zammad
zammad-websocket:
command: ["zammad-websocket"]
depends_on:
- zammad-memcached
- zammad-railsserver
- zammad-redis
environment:
- MEMCACHE_SERVERS=zammad-memcached:11211
- REDIS_URL=redis://zammad-redis:6379
image: zammad/zammad-docker-compose:zammad-5.1.1-11
volumes:
- zammad-data:/opt/zammad
volumes:
elasticsearch-data:
postgresql-data:
zammad-backup:
zammad-data:
networks:
default:
proxy:
external: true