如何为子域上的docker服务正确配置traefik



traefik quickstart指南中关于在whoami子域上使用whoami图像的例子很有效,但我无法让jellyfin在类似的设置中工作,我也无法弄清楚有什么不同:

kevin@pihost:~/personal$ curl -H Host:jellyfin.kevinm416.com http://127.0.0.1
Bad Gateway
kevin@pihost:~/personal$ curl -H Host:whoami.kevinm416.com http://127.0.0.1
Hostname: f7820e1787fe
IP: 127.0.0.1
...

这是我的docker compose文件,它有所有的traefik配置:

version: "3"
volumes:
jellyfin-config:
jellyfin-cache:
services:
reverse-proxy:
image: traefik:v2.2
# Enables the web UI and tells Traefik to listen to docker
command: 
- "--api.insecure=true"
- "--providers.docker"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
ports:
- "80:80"
- "443:443"
# The Web UI (enabled by --api.insecure=true)
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
whoami:
image: containous/whoami
labels:
- "traefik.http.routers.whoami.rule=Host(`whoami.kevinm416.com`)"
jellyfin:
image: jellyfin/jellyfin
network_mode: "host"
environment:
TZ: 'America/Los_Angeles'
ports:
- "8096:8096"
volumes:
- jellyfin-config:/config
- jellyfin-cache:/cache
- /home/kevin/microcenter:/microcenter:ro
labels:
- "traefik.http.routers.jellyfin.rule=Host(`jellyfin.kevinm416.com`)"
- "traefik.http.services.jellyfin.loadbalancer.server.port=8096"
restart: always

我想可能有两个问题:

  1. 您还没有为容器指定入口点,例如,对于whoami,它可能是(也许您想要一个端口为8096的果冻蛋白的新入口点?(:
- "traefik.http.routers.whoami.entrypoints=web"
  1. jellyfin-traefik中的network_mode: "host"应该与容器在同一网络中(或者尝试使用traefik.docker.network设置(,所以我建议删除该行

最新更新