Files
home/Projects/kompose/chat/compose.yaml
2025-10-10 21:03:36 +02:00

43 lines
1.7 KiB
YAML

name: chat
services:
gotify:
image: ${DOCKER_IMAGE}
container_name: ${COMPOSE_PROJECT_NAME}_app
restart: unless-stopped
volumes:
- gotify_data:/app/data
environment:
- GOTIFY_DEFAULTUSER_NAME=${ADMIN_USER}
- GOTIFY_DEFAULTUSER_PASS=${ADMIN_PASSWORD}
# Gotify is a Go binary - no wget/curl, but has built-in health endpoint
# healthcheck:
# test: ["CMD-SHELL", "nc -z localhost $APP_PORT || exit 1"]
# interval: 30s
# timeout: 10s
# retries: 3
# start_period: 30s
networks:
- kompose_network
labels:
- 'traefik.enable=true'
- 'traefik.http.middlewares.$COMPOSE_PROJECT_NAME-redirect-web-secure.redirectscheme.scheme=https'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web.middlewares=$COMPOSE_PROJECT_NAME-redirect-web-secure'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web.rule=Host(`$TRAEFIK_HOST`)'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web.entrypoints=web'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web-secure.rule=Host(`$TRAEFIK_HOST`)'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web-secure.tls.certresolver=resolver'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web-secure.entrypoints=web-secure'
- 'traefik.http.middlewares.$COMPOSE_PROJECT_NAME-web-secure-compress.compress=true'
- 'traefik.http.routers.$COMPOSE_PROJECT_NAME-web-secure.middlewares=$COMPOSE_PROJECT_NAME-web-secure-compress'
- 'traefik.http.services.$COMPOSE_PROJECT_NAME-web-secure.loadbalancer.server.port=$APP_PORT'
- 'traefik.docker.network=${NETWORK_NAME:-kompose}'
volumes:
gotify_data:
networks:
kompose_network:
name: ${NETWORK_NAME:-kompose}
external: true