- new compose templates + READMEs for the three LXC apps (110-112) - Makefile deploy targets (rackula pre-owns its data dir for uid 1001) - Caddy vhosts for all four, incl. Hermes /auth/login redirect workaround - firewall docs: CADDY->TRUSTED rules for LXCs 110-113
36 lines
1.1 KiB
YAML
36 lines
1.1 KiB
YAML
services:
|
|
koffan:
|
|
image: ghcr.io/pansalut/koffan:{{KOFFAN_VERSION:-latest}}
|
|
container_name: koffan
|
|
restart: unless-stopped
|
|
environment:
|
|
TZ: "{{TZ}}"
|
|
# production enables secure session cookies (we sit behind Caddy TLS)
|
|
APP_ENV: "{{KOFFAN_APP_ENV:-production}}"
|
|
# Shared household password — everyone logs in with the same one
|
|
APP_PASSWORD: "{{KOFFAN_APP_PASSWORD}}"
|
|
# true = no login at all; the network (Caddy + UDM zones) is the only gate
|
|
DISABLE_AUTH: "{{KOFFAN_DISABLE_AUTH:-false}}"
|
|
DEFAULT_LANG: "{{KOFFAN_DEFAULT_LANG:-en}}"
|
|
DB_PATH: /data/shopping.db
|
|
volumes:
|
|
- /etc/localtime:/etc/localtime:ro
|
|
- koffan_data:/data
|
|
ports:
|
|
- "{{KOFFAN_BIND_IP:-0.0.0.0}}:{{KOFFAN_PORT:-8080}}:8080"
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: "{{KOFFAN_MEM_LIMIT:-128m}}"
|
|
reservations:
|
|
memory: 16M
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-file: "{{DOCKERLOGGING_MAXFILE}}"
|
|
max-size: "{{DOCKERLOGGING_MAXSIZE}}"
|
|
|
|
volumes:
|
|
koffan_data:
|