10 hours ago
Hiya. Recently i have migrated JF from docker standalone to docker compose and at the same time my rev proxy from SWAG to Traefik.
Unfortunately, yesterday i have noticed that my JF instance is not accessible via rev proxy, the only thing i get is "Select server" page with "No servers have been found using the automatic server discovery." message.
I have started troubleshooting it and i have noticed
But when i try to do the same on traefik container (or any other container within the docker network) i am getting 503 errors. The only thing i can curl to from traefik container side is /web
This is how my jellyfin settings look like:
https://cdn.discordapp.com/attachments/7...9a1b20ffb4&
https://cdn.discordapp.com/attachments/7...c3ed016591&
and here is my compose:
what am i doing wrong?
Unfortunately, yesterday i have noticed that my JF instance is not accessible via rev proxy, the only thing i get is "Select server" page with "No servers have been found using the automatic server discovery." message.
I have started troubleshooting it and i have noticed
Code:
curl -v 10.10.1.13:8096/System/Info/Public
* Trying 10.10.1.13:8096...
* Connected to 10.10.1.13 (10.10.1.13) port 8096 (#0)
> GET /System/Info/Public HTTP/1.1
> Host: 10.10.1.13:8096
> User-Agent: curl/7.88.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=utf-8
< Date: Sat, 24 May 2025 09:32:42 GMT
< Server: Kestrel
< Transfer-Encoding: chunked
< X-Response-Time-ms: 0.366
This is how my jellyfin settings look like:
https://cdn.discordapp.com/attachments/7...9a1b20ffb4&
https://cdn.discordapp.com/attachments/7...c3ed016591&
and here is my compose:
Code:
services:
jellyfin:
cap_add:
- AUDIT_WRITE
- CHOWN
- DAC_OVERRIDE
- FOWNER
- FSETID
- KILL
- MKNOD
- NET_BIND_SERVICE
- NET_RAW
- SETFCAP
- SETGID
- SETPCAP
- SETUID
- SYS_CHROOT
cap_drop:
- ALL
container_name: jellyfin
entrypoint: ['/init']
environment:
TZ: "${TZ}"
PUID: "${MEDIA_PUID}"
PGID: "${MEDIA_PGID}"
hostname: jellyfin
image: linuxserver/jellyfin:latest
ipc: private
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [video]
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
networks:
- jellyfin
- traefik
ports:
- 1900:1900/udp
- 7359:7359/udp
- 8096:8096/tcp
- 8920:8920/tcp
labels:
traefik.enable: "true"
traefik.http.routers.jellyfin.rule: "Host(`jf.${DOMAIN_NAME}`)"
traefik.http.routers.jellyfin.entrypoints: "websecure"
traefik.http.routers.jellyfin.tls: "true"
traefik.http.routers.jellyfin.tls.certresolver: "letsencrypt"
traefik.http.routers.jellyfin.middlewares: "jellyfin-mw"
traefik.http.services.jellyfin.loadbalancer.server.port: "8096"
traefik.http.middlewares.jellyfin-mw.headers.SSLRedirect: "true"
traefik.http.middlewares.jellyfin-mw.headers.STSIncludeSubdomains: "true"
traefik.http.middlewares.jellyfin-mw.headers.STSPreload: "true"
traefik.http.middlewares.jellyfin-mw.headers.customrequestheaders.X-Forwarded-Proto: "https"
homepage.group: "Media"
homepage.name: "Jellyfin"
homepage.icon: "jellyfin.png"
homepage.href: "https://jf.${DOMAIN_NAME}"
homepage.description: "Media streaming"
homepage.widget.fields: "['books', 'authors', 'categories', 'series']"
homepage.widget.type: "jellyfin"
homepage.widget.url: "http://10.10.1.13:8096"
homepage.widget.key: "${HOMEPAGE_JELLYFIN_API}"
homepage.widget.enableBlocks: true
homepage.widget.enableNowPlaying: true
homepage.widget.enableUser: true
homepage.widget.showEpisodeNumber: true
homepage.widget.expandOneStreamToTwoRows: true
restart: unless-stopped
volumes:
- /opt/docker/jellyfin/jellyfin_config:/config
- /Data/TVShows:/tv
- /Data/Anime:/anime
- /Data/Cartoons:/cartoons
- /Data/DocumentaryMovies:/documentary_movies
- /Data/DocumentaryShows:/documentary_shows
- /Data/Movies:/movies
working_dir: /
networks:
jellyfin:
name: jellyfin
driver: bridge
external: false
traefik:
external: true