Luca e9d217ac80 | ||
---|---|---|
inventory | ||
roles/zammad | ||
.gitignore | ||
README.md | ||
ansible.cfg | ||
site.yml |
README.md
Deploy Zammad via Ansible and docker-compose
Prerequisites
- Docker and docker-compose (v1, Ansible does not support v2)
- Traefik v2
- Externally defined Docker network
traefik
- Entrypoint
websecure
- Certificate resolver
lehttp
- Externally defined Docker network
- PostgreSQL on host
- Listening on socket in
/var/run/postgresql/
- Database (
zammad_database_name
, default:zammad
) and user (zammad_database_user
, default:zammad
) created - (To use containerized Postgres, replace
postgres
service inroles/zammad/templates/docker-compose.yml.j2
as follows:)
- Listening on socket in
postgres:
image: postgres:alpine
restart: unless-stopped
environment:
POSTGRES_DB: '{{ zammad_database_name }}'
POSTGRES_PASSWORD: '{{ zammad_database_password }}'
POSTGRES_USER: '{{ zammad_database_user }}'
networks:
- internal
- enough RAM (or set
zammad_enable_search
tono
)
Deploy
Add target host(s) to group zammad
in inventory/hosts
and copy inventory/host_vars/example
to inventory/host_vars/{hostname}
for each host.
Adjust values as needed and run:
ansible-playbook -D -t zammad site.yml
Upgrade
ansible-playbook -D -t zammad -e 'zammad_upgrade=yes' site.yml