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