Files
docker-compose-cookbooks/zammad_dev/README.md
T
codeandClaude Fable 5 340866f9f4 complete all stack READMEs to the 9-section template
Existing content preserved and reordered to the canonical section order;
missing sections generated from each stack's compose data (ports, volumes,
env vars, image links). Fixes copy-paste errors in Dockhand sections
(qbittorrent pointed at archivebox; invokeai/thunderbird said SERVICENAME)
and persistant->persistent typos in gatus.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 06:25:05 +00:00

99 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Zammad
Proxy port: 8080 on zammad-nginx
Zammad has good support for their own repo, probably better to use that one.
This is just Zammad for my own
Official Documenation: https://docs.zammad.org/en/latest/install/docker-compose.html
Official Repository: https://github.com/zammad/zammad-docker-compose/blob/master/docker-compose.yml
```bash
mkdir -p data/elasticsearch
chown -R 1000:1000 data/
chmod -R 755 data/elasticsearch/
```
## Overview
Helpdesk and ticketing system with web, email, and chat channels.
## Project Details
- **Container Image:** [ghcr.io/zammad/zammad:latest](https://github.com/zammad/zammad)
- **Reverse Proxy Port:** `8080`
## Getting Started
1. Start the container: `docker compose up -d`
2. Open http://localhost:8080 in your browser
3. Follow the initial setup wizard to configure the application
## Environment Variable Notes
POSTGRES_VERSION – default: 17.5-alpine
POSTGRES_DB – default: zammad_production
POSTGRES_USER – default: zammad
POSTGRES_PASS – default: ChangeThisPassword
REDIS_VERSION – default: 7.4.5-alpine
MEMCACHE_VERSION – default: 1.6.39-alpine
ELASTICSEARCH_VERSION – default: 8.19.2
ELASTICSEARCH_JAVA_OPTS – default: -Xms1g -Xmx1g
MEMCACHE_SERVERS – default: zammad-memcached:11211
POSTGRES_HOST – default: zammad-postgresql
POSTGRES_PORT – default: 5432
POSTGRESQL_OPTIONS – default: ?pool=50
POSTGRESQL_DB_CREATE – default: true
REDIS_URL – default: redis://zammad-redis:6379
(see sample.env for the full list)
## Volume Notes
/var/lib/postgresql/data – host path /data/zammad/postgresql
/data – host path /data/zammad/redis
/data – host path /data/zammad/memcached
/usr/share/elasticsearch/data – host path /data/zammad/elasticsearch
/opt/zammad/storage – host path /data/zammad/storage
/opt/zammad/storage – host path /data/zammad/storage
/opt/zammad/storage – host path /data/zammad/storage
/opt/zammad/storage – host path /data/zammad/storage
/var/tmp/zammad – host path /data/zammad/backup
/opt/zammad/storage – host path /data/zammad/storage
/opt/zammad/storage – host path /data/zammad/storage
## Network Notes
Requires proxy network
## Docker Run
```bash
docker run -d \
--name zammad \
-p 8080:8080 \
-v /data/zammad/postgresql:/var/lib/postgresql/data \
-v /data/zammad/redis:/data \
-v /data/zammad/memcached:/data \
-v /data/zammad/elasticsearch:/usr/share/elasticsearch/data \
-v /data/zammad/storage:/opt/zammad/storage \
ghcr.io/zammad/zammad:latest
```
See compose.yaml for the full set of environment variables.
## Additional Notes / Gotchas
The zammad-init service intentionally uses `restart: on-failure` (one-shot init container).
## Dockhand Stack, Deploy from Git
Cookbooks Repository
stackname: zammad_dev
Compose file path: zammad_dev/compose.yaml
Additional env file (optional): zammad_dev/sample.env
Then "Load" zammad_dev/sample.env into the Environmental variables in dockhand
Create the Stack