#!/bin/bash # Run on 10.100.1.24 as root — installs Zammad docker stack. # Prerequisites: geonet-console .env with OSS keys, nginx ssl.conf, DNS zammad.gisportal.id set -euo pipefail STACK=/opt/stacks/zammad mkdir -p "$STACK/config" cd "$STACK" if [ ! -f docker-compose.yml ]; then git clone https://github.com/zammad/zammad-docker-compose.git /tmp/zammad-clone cp -a /tmp/zammad-clone/. "$STACK/" rm -rf /tmp/zammad-clone fi # Bind internal nginx to localhost only (port 8080 is used by host nginx/jira) python3 - <<'PY' from pathlib import Path p = Path('docker-compose.yml') text = p.read_text() text = text.replace( ' - "${NGINX_EXPOSE_PORT:-8080}:${NGINX_PORT:-8080}"', ' - "127.0.0.1:8093:${NGINX_PORT:-8080}"', ) p.write_text(text) PY source /opt/stacks/geonet-console/.env cat > .env < config/storage.yml </dev/null || true docker compose pull docker compose up -d echo "Zammad stack started. Verify: curl -sI http://127.0.0.1:8093/"