Create docker-compose.yml

This commit is contained in:
LRVT
2026-07-20 17:38:34 +02:00
committed by GitHub
parent 09c213744b
commit 0589a9af00

View File

@@ -0,0 +1,91 @@
services:
kutt:
image: kutt/kutt:v3.2.6
container_name: kutt
hostname: kutt
depends_on:
redis:
condition: service_started
restart: unless-stopped
ports:
- 3000:3000/tcp
expose:
- 3000
volumes:
#- /etc/localtime:/etc/localtime:ro
#- /etc/timezone:/etc/timezone:ro
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/kutt/data:/var/lib/kutt
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/kutt/custom:/kutt/custom
environment:
- DB_FILENAME=/var/lib/kutt/data.sqlite
- REDIS_ENABLED=true
- REDIS_HOST=redis
- REDIS_PORT=6379
- TZ=Europe/Berlin
- JWT_SECRET=${KUTT_JWT_SECRET:-Kutt}
- PORT=3000
- SITE_NAME=${KUTT_SITE_NAME:-Kutt}
- DEFAULT_DOMAIN=${KUTT_DEFAULT_DOMAIN:-localhost:3000}
- LINK_LENGTH=${KUTT_LINK_LENGTH:-6}
- DISALLOW_REGISTRATION=${KUTT_DISALLOW_REGISTRATION:-true}
- DISALLOW_LOGIN_FORM=${KUTT_DISALLOW_LOGIN_FORM:-false}
- DISALLOW_ANONYMOUS_LINKS=${KUTT_DISALLOW_ANONYMOUS_LINKS:-true}
- TRUST_PROXY=${KUTT_TRUST_PROXY:-true}
- DB_CLIENT=better-sqlite3
- DB_FILENAME=/var/lib/kutt/data.sqlite
- REDIS_ENABLED=true
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_DB=0
- ENABLE_RATE_LIMIT=${KUTT_ENABLE_RATE_LIMIT:-true}
- CUSTOM_DOMAIN_USE_HTTPS=${KUTT_CUSTOM_DOMAIN_USE_HTTPS:-true}
- MAIL_ENABLED=${KUTT_MAIL_ENABLED:-false}
#- MAIL_HOST=${KUTT_MAIL_HOST}
#- MAIL_PORT=${KUTT_MAIL_PORT:-587}
#- MAIL_USER=${KUTT_MAIL_USER}
#- MAIL_PASSWORD=${KUTT_MAIL_PASSWORD}
#- MAIL_FROM=${KUTT_MAIL_FROM}
#- MAIL_SECURE=${KUTT_MAIL_SECURE:-false}
- OIDC_ENABLED=${KUTT_OIDC_ENABLED:-false}
#- OIDC_ISSUER=${KUTT_OIDC_ISSUER}
#- OIDC_POMPT=${KUTT_OIDC_POMPT:-login}
#- OIDC_CLIENT_ID=${KUTT_OIDC_CLIENT_ID}
#- OIDC_CLIENT_SECRET=${KUTT_OIDC_CLIENT_SECRET}
#- OIDC_SCOPE=${KUTT_OIDC_SCOPE:-openid profile email}
#- OIDC_EMAIL_CLAIM=${KUTT_OIDC_EMAIL_CLAIM:-email}
#- OIDC_BUTTON_TEXT=${KUTT_OIDC_BUTTON_TEXT:-Log in with OIDC}
#- SERVER_IP_ADDRESS=${KUTT_SERVER_IP_ADDRESS}
#- SERVER_CNAME_ADDRESS=${KUTT_SERVER_CNAME_ADDRESS}
#- REPORT_EMAIL=${KUTT_REPORT_EMAIL}
#- CONTACT_EMAIL=${KUTT_CONTACT_EMAIL}
- TZ=Europe/Berlin
#networks:
# - proxy
# - internal
#labels:
# - traefik.enable=true
# - traefik.docker.network=proxy
# - traefik.http.routers.kutt.rule=Host(`kutt.example.com`)
# - traefik.http.services.kutt.loadbalancer.server.port=3000
# # Optional part for Traefik middlewares
# - traefik.http.routers.kutt.middlewares=local-ipwhitelist@file,crowdsec@file
redis:
image: redis:alpine
container_name: kutt-redis
hostname: redis
restart: unless-stopped
expose:
- 6379
environment:
- TZ=Europe/Berlin
#networks:
# - internal
#networks:
# proxy:
# external: true
# internal:
# internal: true