app-store/apps/slskd/docker-compose.yml

49 lines
2.0 KiB
YAML

version: "3.9"
services:
slskd:
image: slskd/slskd:0.21.0
container_name: slskd
volumes:
- "${APP_DATA_DIR}:/app"
- "${ROOT_FOLDER_HOST}/media/downloads/complete:/downloads"
- "${ROOT_FOLDER_HOST}/media/downloads/incomplete:/incomplete"
- "${ROOT_FOLDER_HOST}/media/:/shared"
environment:
- SLSKD_WEB_USER=${SLSKD_WEB_USER}
- SLSKD_WEB_PASSWORD=${SLSKD_WEB_PASSWORD}
- SLSKD_USER=${SLSKD_USER}
- SLSKD_PASSWORD=${SLSKD_PASSWORD}
- SLSKD_REMOTE_CONFIGURATION=${SLSKD_REMOTE_CONFIGURATION}
- SLSKD_CONFIG=/app/data/slskd.yml
- SLSKD_SHARED_DIR=/shared
restart: unless-stopped
networks:
- tipi_main_network
ports:
- ${APP_PORT}:5030
labels:
# Main
traefik.enable: true
traefik.http.middlewares.slskd-web-redirect.redirectscheme.scheme: https
traefik.http.services.slskd.loadbalancer.server.port: 5030
# Web
traefik.http.routers.slskd-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.slskd-insecure.entrypoints: web
traefik.http.routers.slskd-insecure.service: slskd
traefik.http.routers.slskd-insecure.middlewares: slskd-web-redirect
# Websecure
traefik.http.routers.slskd.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.slskd.entrypoints: websecure
traefik.http.routers.slskd.service: slskd
traefik.http.routers.slskd.tls.certresolver: myresolver
# Local domain
traefik.http.routers.slskd-local-insecure.rule: Host(`slskd.${LOCAL_DOMAIN}`)
traefik.http.routers.slskd-local-insecure.entrypoints: web
traefik.http.routers.slskd-local-insecure.service: slskd
traefik.http.routers.slskd-local-insecure.middlewares: slskd-web-redirect
# Local domain secure
traefik.http.routers.slskd-local.rule: Host(`slskd.${LOCAL_DOMAIN}`)
traefik.http.routers.slskd-local.entrypoints: websecure
traefik.http.routers.slskd-local.service: slskd
traefik.http.routers.slskd-local.tls: true