Add Zammad
This commit is contained in:
		
					parent
					
						
							
								53ba5b9561
							
						
					
				
			
			
				commit
				
					
						ab429df4dd
					
				
			
		
					 6 changed files with 224 additions and 0 deletions
				
			
		
							
								
								
									
										158
									
								
								playbooks/templates/chaosknoten/configs/zammad/compose.yaml.j2
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										158
									
								
								playbooks/templates/chaosknoten/configs/zammad/compose.yaml.j2
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,158 @@ | |||
| --- | ||||
| version: '3.8' | ||||
| 
 | ||||
| {# | ||||
| 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" | 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 = lookup("community.general.passwordstore", "noc/vm-secrets/chaosknoten/zammad/DB_PASSWORD", create=false, missing="error") | 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: bitnami/elasticsearch:{{ ELASTICSEARCH_VERSION }} | ||||
|     restart: {{ RESTART }} | ||||
|     volumes: | ||||
|       - elasticsearch-data:/bitnami/elasticsearch/data | ||||
| 
 | ||||
|   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"] | ||||
| 
 | ||||
|   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 | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue