Files
ai-disclosure-standard/deploy/swarm-stack.yaml
jbergner 662afb3acc
Some checks failed
release-tag / release-image (push) Failing after 4m50s
RC-1
2026-07-20 21:42:37 +02:00

71 lines
1.7 KiB
YAML

version: "3.9"
services:
app:
image: ghcr.io/REPLACE_ME/ai-disclosure-standard:1.6.2
environment:
BASE_URL: https://ai.example.org
PUBLIC_NAME: AI Usage Disclosure
CONTACT_URL: https://b1tsblog.org/page/ai
SALES_URL: "${SALES_URL:-https://b1tsblog.org/page/ai}"
DEFAULT_LANGUAGE: de
TRUST_PROXY: "true"
LICENSE_TOKEN: "${LICENSE_TOKEN:-}"
LICENSE_MODE: "${LICENSE_MODE:-offline}"
LICENSE_SERVER_URL: "${LICENSE_SERVER_URL:-}"
LICENSE_INSTANCE_ID: "${LICENSE_INSTANCE_ID:-swarm}"
LICENSE_CACHE_FILE: /data/license-lease.json
ports:
- target: 8080
published: 8080
protocol: tcp
mode: ingress
networks:
- public
volumes:
- license-cache:/data
read_only: true
tmpfs:
- /tmp:size=16m,mode=1777
cap_drop:
- ALL
healthcheck:
test: ["CMD", "/ai-disclosure", "--healthcheck"]
interval: 15s
timeout: 3s
retries: 3
start_period: 5s
deploy:
mode: replicated
replicas: 3
endpoint_mode: vip
update_config:
parallelism: 1
delay: 5s
order: start-first
failure_action: rollback
rollback_config:
parallelism: 1
order: stop-first
restart_policy:
condition: on-failure
delay: 3s
max_attempts: 5
window: 30s
placement:
preferences:
- spread: node.labels.zone
resources:
reservations:
cpus: "0.05"
memory: 24M
limits:
cpus: "0.50"
memory: 128M
networks:
public:
driver: overlay
attachable: true
volumes:
license-cache: