diff --git a/wiki/stack.yml b/wiki/stack.yml new file mode 100644 index 0000000..9439580 --- /dev/null +++ b/wiki/stack.yml @@ -0,0 +1,52 @@ +services: + wiki: + image: ghcr.io/requarks/wiki:2 + secrets: + - postgres-master + entrypoint: [ "/bin/sh", "-c" ] + command: + - | + export DB_PASS=$$(cat /run/secrets/postgres-master) + node server + environment: + DB_TYPE: postgres + DB_HOST: 10.0.4.10 + DB_PORT: 5432 + DB_USER: admin + DB_NAME: wiki + ports: + - "3000:3000" + networks: + - frostlabs + volumes: + - /home/doc/projects/swarm-data/wiki/config:/config + - /home/doc/projects/swarm-data/wiki/data:/data + deploy: + replicas: 1 + placement: + constraints: + - node.labels.task == compute + restart_policy: + condition: on-failure + delay: 5s + max_attempts: 3 + resources: + limits: + memory: 2G + reservations: + memory: 512M + labels: + - traefik.enable=true + - traefik.swarm.network=frostlabs + - traefik.http.routers.wiki.rule=Host(`wiki.frostlabs.me`) + - traefik.http.routers.wiki.entrypoints=websecure + - traefik.http.routers.wiki.tls=true + - traefik.http.routers.wiki.tls.certresolver=cloudflare + - traefik.http.services.wiki.loadbalancer.server.port=3000 +networks: + frostlabs: + external: true + +secrets: + postgres-master: + external: true