У меня есть компьютер под управлением Windows с поддержкой WSL и Ubuntu 20.04, а внутри Ubuntu образ Docker работает под управлением Jellyfin.
Я могу успешно получить доступ к Jellyfin через localhost:8096 на компьютере с Windows.
Когда я пытаюсь получить доступ к Jellyfin, используя IP-адрес компьютера с Windows, например 192.168.1.6:8096, Я получаю сообщение об ошибке «Соединение отклонено».
Я также пытался получить доступ к Jellyfin через IP-адрес WSL (Ubuntu), но это тоже не сработало.
Что я пробовал:
Я пробовал перенаправлять порты с помощью netsh в Windows:
Код: Выделить всё
netsh interface portproxy add v4tov4 listenport=8096 listenaddress=0.0.0.0 connectport=8096 connectaddress=$($(wsl hostname -I).Trim())
Я разрешил порт 8096 в брандмауэре Windows для правил входящего и исходящего трафика.
Я нашел информацию что доступ к контейнеру Docker с другого компьютера в той же сети через IP-адрес хоста может не работать, но я ожидал, что если localhost:8096 работает, myip:8096 тоже должен работать. Моя конфигурация docker-compose.yml:
Код: Выделить всё
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
network_mode: 'host'
volumes:
- /mnt/d/docker/jellyfin/config:/config
- /mnt/d/docker/jellyfin/cache:/cache
- /mnt/d/docker/jellyfin/media:/media
restart: 'unless-stopped'
environment:
- JELLYFIN_PublishedServerUrl=http://example.com
extra_hosts:
- 'host.docker.internal:host-gateway'
Существует ли известный обходной путь для доступа к службе, работающей в Docker, через IP-адрес хоста?
Внимание
Подробнее здесь: https://stackoverflow.com/questions/790 ... host-works
Мобильная версия