70 lines
2.1 KiB
Text
70 lines
2.1 KiB
Text
![]() |
---
|
||
|
services:
|
||
|
ticky:
|
||
|
image: ghcr.io/dkorecko/ticky:${TICKY_VERSION}
|
||
|
container_name: ticky
|
||
|
restart: unless-stopped
|
||
|
networks:
|
||
|
- traefik
|
||
|
- ticky
|
||
|
volumes:
|
||
|
- ./data/upload:/app/wwwroot/uploaded
|
||
|
environment:
|
||
|
- DB_HOST=ticky-db
|
||
|
- DB_NAME=ticky
|
||
|
- DB_USERNAME=${MYSQL_USERNAME}
|
||
|
- DB_PASSWORD=${MYSQL_PASSWORD}
|
||
|
- FULLY_OFFLINE=true
|
||
|
- DISABLE_USER_SIGNUPS=true
|
||
|
- SMTP_ENABLED=false
|
||
|
- SMTP_HOST=your-smtp-host
|
||
|
- SMTP_PORT=your-smtp-port
|
||
|
- SMTP_DISPLAY_NAME=Ticky
|
||
|
- SMTP_EMAIL=your-email@example.com
|
||
|
- SMTP_USERNAME=your-smtp-username
|
||
|
- SMTP_PASSWORD=your-smtp-password
|
||
|
- SMTP_SECURITY=true
|
||
|
labels:
|
||
|
- "traefik.enable=true"
|
||
|
- "traefik.docker.network=traefik"
|
||
|
- "traefik.http.routers.ticky.entrypoints=http"
|
||
|
- "traefik.http.routers.ticky.rule=Host(`${TICKY_DOMAIN}`)"
|
||
|
- "traefik.http.middlewares.ticky-https-redirect.redirectscheme.scheme=https"
|
||
|
- "traefik.http.routers.ticky.middlewares=traefik-https-redirect"
|
||
|
- "traefik.http.routers.ticky-secure.entrypoints=https"
|
||
|
- "traefik.http.routers.ticky-secure.rule=Host(`${TICKY_DOMAIN}`)"
|
||
|
- "traefik.http.routers.ticky-secure.tls=true"
|
||
|
- "traefik.http.services.ticky.loadbalancer.server.port=8080"
|
||
|
depends_on:
|
||
|
ticky-db:
|
||
|
condition: service_healthy
|
||
|
healthcheck:
|
||
|
test: ["CMD-SHELL", "curl --fail --silent --max-time 5 http://localhost:8080/ || exit 1"]
|
||
|
interval: 30s
|
||
|
timeout: 10s
|
||
|
retries: 3
|
||
|
start_period: 30s
|
||
|
|
||
|
ticky-db:
|
||
|
image: mysql:${MYSQL_VERSION}
|
||
|
container_name: ticky-db
|
||
|
restart: unless-stopped
|
||
|
networks:
|
||
|
- ticky
|
||
|
environment:
|
||
|
MYSQL_DATABASE: ticky
|
||
|
MYSQL_USER: ${MYSQL_USERNAME}
|
||
|
MYSQL_RANDOM_ROOT_PASSWORD: true
|
||
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||
|
healthcheck:
|
||
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
||
|
timeout: 2s
|
||
|
retries: 30
|
||
|
volumes:
|
||
|
- ./data/mysql:/var/lib/mysql
|
||
|
|
||
|
networks:
|
||
|
traefik:
|
||
|
external: true
|
||
|
ticky:
|
||
|
driver: bridge
|