Roles and playbooks for application deployment and management
Find a file
Darren Clarke 971b9f1b8c feat(podman_link): run the Zammad containers read-only
zammad-init, zammad-railsserver, zammad-scheduler, zammad-websocket and
zammad-nginx now run with a read-only root filesystem, no new
privileges and every capability dropped, so not even root inside a
container can change the Zammad code. The only writable paths are the
existing var, storage and sites-enabled mounts and memory-backed tmpfs
for /opt/zammad/tmp and /opt/zammad/log (plus podman's /tmp, /var/tmp
and /run), and for nginx /etc/nginx/conf.d, /var/lib/nginx and
/var/log/nginx. Everything written there is gone on the next start.

This needs the Link release whose Zammad image keeps the code
root-owned and stops the bridge initializers writing
public/assets/images/icons.svg at boot (link-stack a343f2c9); on older
images Zammad fails to start on a read-only root. The role now refuses
to run with a podman_link_stack_version older than 3.8.0-beta.6, so
the default pin must be bumped with that release.
2026-10-26 13:46:16 +00:00
.forgejo/workflows ci: link apps collection into collections path 2026-09-24 14:15:23 +01:00
meta feat: initial commit 2025-11-08 20:55:40 +00:00
playbooks fix(podman_matomo): playbook tag 2026-08-24 22:09:20 +01:00
roles feat(podman_link): run the Zammad containers read-only 2026-10-26 13:46:16 +00:00
.ansible-lint.yml feat: initial commit 2025-11-08 20:55:40 +00:00
.gitignore feat: initial commit 2025-11-08 20:55:40 +00:00
galaxy.yml feat: initial commit 2025-11-08 20:55:40 +00:00
renovate.json Update renovate.json 2026-07-23 15:28:09 +01:00