Some checks failed
		
		
	
	/ Ansible Lint (push) Failing after 50s
				
			Also execute manual update steps as outlined here: https://github.com/zammad/zammad-docker-compose/releases/tag/v14.0.0 Note that this is updating only a part of the compose file and other parts still are out-of-date and should be updated (like the Postgres).
		
			
				
	
	
		
			162 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
			
		
		
	
	
			162 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
---
 | 
						|
{#
 | 
						|
https://github.com/zammad/zammad-docker-compose
 | 
						|
Docker Compose does not allow defining variables in the compose file (only in .env files), so we use Jinja variables instead
 | 
						|
see https://github.com/zammad/zammad-docker-compose/blob/master/.env
 | 
						|
#}
 | 
						|
{%- set ELASTICSEARCH_VERSION = "8.19.4" | quote -%}
 | 
						|
{%- set IMAGE_REPO = "ghcr.io/zammad/zammad" | quote -%}
 | 
						|
{%- set MEMCACHE_SERVERS = "zammad-memcached:11211" | quote -%}
 | 
						|
{%- set MEMCACHE_VERSION = "1.6-alpine" | quote -%}
 | 
						|
{%- set POSTGRES_DB = "zammad_production" | quote -%}
 | 
						|
{%- set POSTGRES_HOST = "zammad-postgresql" | quote -%}
 | 
						|
{%- set POSTGRES_USER = "zammad" | quote -%}
 | 
						|
{%- set POSTGRES_PASS = secret__zammad_db_password | quote -%}
 | 
						|
{%- set POSTGRES_PORT = "5432" | quote -%}
 | 
						|
{%- set POSTGRES_VERSION = "15-alpine" | quote -%}
 | 
						|
{%- set REDIS_URL = "redis://zammad-redis:6379" | quote -%}
 | 
						|
{%- set REDIS_VERSION = "7-alpine" | quote -%}
 | 
						|
{%- set RESTART = "always" | quote -%}
 | 
						|
{%- set VERSION = "6" | quote -%}
 | 
						|
x-shared:
 | 
						|
  zammad-service: &zammad-service
 | 
						|
    environment: &zammad-environment
 | 
						|
      MEMCACHE_SERVERS: {{ MEMCACHE_SERVERS }}
 | 
						|
      POSTGRESQL_DB: {{ POSTGRES_DB }}
 | 
						|
      POSTGRESQL_HOST: {{ POSTGRES_HOST }}
 | 
						|
      POSTGRESQL_USER: {{ POSTGRES_USER }}
 | 
						|
      POSTGRESQL_PASS: {{ POSTGRES_PASS }}
 | 
						|
      POSTGRESQL_PORT: {{ POSTGRES_PORT }}
 | 
						|
      REDIS_URL: {{ REDIS_URL }}
 | 
						|
      # Allow passing in these variables via .env:
 | 
						|
      AUTOWIZARD_JSON:
 | 
						|
      AUTOWIZARD_RELATIVE_PATH:
 | 
						|
      ELASTICSEARCH_ENABLED:
 | 
						|
      ELASTICSEARCH_HOST:
 | 
						|
      ELASTICSEARCH_PORT:
 | 
						|
      ELASTICSEARCH_SCHEMA:
 | 
						|
      ELASTICSEARCH_NAMESPACE:
 | 
						|
      ELASTICSEARCH_REINDEX:
 | 
						|
      ELASTICSEARCH_SSL_VERIFY:
 | 
						|
      NGINX_PORT:
 | 
						|
      NGINX_SERVER_NAME:
 | 
						|
      NGINX_SERVER_SCHEME: https
 | 
						|
      POSTGRESQL_DB_CREATE:
 | 
						|
      POSTGRESQL_OPTIONS:
 | 
						|
      RAILS_TRUSTED_PROXIES:
 | 
						|
      ZAMMAD_WEB_CONCURRENCY:
 | 
						|
      ZAMMAD_SESSION_JOBS:
 | 
						|
      ZAMMAD_PROCESS_SCHEDULED:
 | 
						|
      ZAMMAD_PROCESS_DELAYED_JOBS_WORKERS:
 | 
						|
    image: {{ IMAGE_REPO }}:{{ VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
    volumes:
 | 
						|
      - zammad-storage:/opt/zammad/storage
 | 
						|
      - zammad-var:/opt/zammad/var
 | 
						|
    depends_on:
 | 
						|
      - zammad-memcached
 | 
						|
      - zammad-postgresql
 | 
						|
      - zammad-redis
 | 
						|
 | 
						|
services:
 | 
						|
 | 
						|
  zammad-backup:
 | 
						|
    command: ["zammad-backup"]
 | 
						|
    depends_on:
 | 
						|
      - zammad-railsserver
 | 
						|
      - zammad-postgresql
 | 
						|
    entrypoint: /usr/local/bin/backup.sh
 | 
						|
    environment:
 | 
						|
      <<: *zammad-environment
 | 
						|
      BACKUP_TIME: "03:00"
 | 
						|
      HOLD_DAYS: "10"
 | 
						|
      TZ: Europe/Berlin
 | 
						|
    image: postgres:{{ POSTGRES_VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
    volumes:
 | 
						|
      - zammad-backup:/var/tmp/zammad
 | 
						|
      - zammad-storage:/opt/zammad/storage:ro
 | 
						|
      - zammad-var:/opt/zammad/var:ro
 | 
						|
      - ./scripts/backup.sh:/usr/local/bin/backup.sh:ro
 | 
						|
 | 
						|
  zammad-elasticsearch:
 | 
						|
    image: elasticsearch:{{ ELASTICSEARCH_VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
    volumes:
 | 
						|
      - elasticsearch-data:/usr/share/elasticsearch/data
 | 
						|
    environment:
 | 
						|
      discovery.type: single-node
 | 
						|
      xpack.security.enabled: 'false'
 | 
						|
      ES_JAVA_OPTS: ${ELASTICSEARCH_JAVA_OPTS:--Xms1g -Xmx1g}
 | 
						|
 | 
						|
  zammad-init:
 | 
						|
    <<: *zammad-service
 | 
						|
    command: ["zammad-init"]
 | 
						|
    depends_on:
 | 
						|
      - zammad-postgresql
 | 
						|
    restart: on-failure
 | 
						|
    user: 0:0
 | 
						|
    volumes:
 | 
						|
      - zammad-storage:/opt/zammad/storage
 | 
						|
      - zammad-var:/opt/zammad/var
 | 
						|
 | 
						|
  zammad-memcached:
 | 
						|
    command: memcached -m 256M
 | 
						|
    image: memcached:{{ MEMCACHE_VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
 | 
						|
  zammad-nginx:
 | 
						|
    <<: *zammad-service
 | 
						|
    command: ["zammad-nginx"]
 | 
						|
    expose:
 | 
						|
      - "8080"
 | 
						|
    ports:
 | 
						|
      - "8080:8080"
 | 
						|
    depends_on:
 | 
						|
      - zammad-railsserver
 | 
						|
    volumes:
 | 
						|
      - zammad-var:/opt/zammad/var:ro # required for the zammad-ready check file
 | 
						|
 | 
						|
  zammad-postgresql:
 | 
						|
    environment:
 | 
						|
      POSTGRES_DB: {{ POSTGRES_DB }}
 | 
						|
      POSTGRES_USER: {{ POSTGRES_USER }}
 | 
						|
      POSTGRES_PASSWORD: {{ POSTGRES_PASS }}
 | 
						|
    image: postgres:{{ POSTGRES_VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
    volumes:
 | 
						|
      - postgresql-data:/var/lib/postgresql/data
 | 
						|
 | 
						|
  zammad-railsserver:
 | 
						|
    <<: *zammad-service
 | 
						|
    command: ["zammad-railsserver"]
 | 
						|
 | 
						|
  zammad-redis:
 | 
						|
    image: redis:{{ REDIS_VERSION }}
 | 
						|
    restart: {{ RESTART }}
 | 
						|
    volumes:
 | 
						|
      - redis-data:/data
 | 
						|
 | 
						|
  zammad-scheduler:
 | 
						|
    <<: *zammad-service
 | 
						|
    command: ["zammad-scheduler"]
 | 
						|
    volumes:
 | 
						|
      - /ansible_docker_compose/zammad-scheduler-database.yml:/opt/zammad/config/database.yml # workaround for connection pool issue
 | 
						|
 | 
						|
  zammad-websocket:
 | 
						|
    <<: *zammad-service
 | 
						|
    command: ["zammad-websocket"]
 | 
						|
 | 
						|
volumes:
 | 
						|
  elasticsearch-data:
 | 
						|
    driver: local
 | 
						|
  postgresql-data:
 | 
						|
    driver: local
 | 
						|
  redis-data:
 | 
						|
    driver: local
 | 
						|
  zammad-backup:
 | 
						|
    driver: local
 | 
						|
  zammad-storage:
 | 
						|
    driver: local
 | 
						|
  zammad-var:
 | 
						|
    driver: local
 |