运行 作为 docker 容器的 plex,无法访问网络 UI
Running plex as a docker container, cannot access web UI
我正在尝试使用 docker 设置我的 Plex 服务器。我已按照 LinuxServer.io docker 页面上的步骤操作。当我 运行 docker 命令时,它说它是 运行ning find 并且我没有收到任何错误。但是,当我尝试通过 localhost:32400/web
访问网络 UI 时,我得到的只是 "Problem loading page"
我将 docker 用于 windows 和 Linux 容器。
docker 命令:
docker run -d --name=plex --net=host -e PUID=1000 -e PGID=1000 -e TZ=Europe/London -e VERSION=docker -v D:\plex\config:/config -v D:\media\tvseries:/data/tvshows -v D:\media\movies:/data/movies -v D:\media\transcode:/transcode --restart unless-stopped linuxserver/plex
当我使用 docker ps
时,plex 容器看起来像是 运行ning。
我是 docker 的新手。我环顾四周,找不到无法访问 UI 的原因。
如果您需要更多信息,请告诉我。
docker 检查:
"NetworkMode": "host",
"PortBindings": {
"32400/tcp": [
{
"HostIp": "",
"HostPort": "32400"
}
]
},
如果您需要更多信息,请告诉我
--net=host
不适用于 docker-for-windows
。
原因:
Linux 容器需要共享一个 linux 主机内核。
为了实现这一点,当 docker 用于 windows 运行 一个 linux 容器时,它必须设置一个 hyper-v 机器。如果你打开 Hyper-V 管理器,你会看到一个 MobyLinuxVM
运行ning.
因此,当您使用 --net=host
时,容器将只使用 MobyLinuxVM
的网络,而不是 windows。所以,localhost
将不起作用。
建议:
针对您的情况,我建议您删除 --net=host
,在命令行中添加端口映射:
docker run -d --name=plex -p 32400:32400 -e PUID=1000 -e PGID=1000 -e TZ=Europe/London -e VERSION=docker -v D:\plex\config:/config -v D:\media\tvseries:/data/tvshows -v D:\media\movies:/data/movies -v D:\media\transcode:/transcode --restart unless-stopped linuxserver/plex
然后,魔法会在这里发生,docker for windows 将使用 windows 路由机制将 windows 的 32400 端口映射到您的容器。您可以从 windows.
访问容器的服务
我正在尝试使用 docker 设置我的 Plex 服务器。我已按照 LinuxServer.io docker 页面上的步骤操作。当我 运行 docker 命令时,它说它是 运行ning find 并且我没有收到任何错误。但是,当我尝试通过 localhost:32400/web
访问网络 UI 时,我得到的只是 "Problem loading page"
我将 docker 用于 windows 和 Linux 容器。
docker 命令:
docker run -d --name=plex --net=host -e PUID=1000 -e PGID=1000 -e TZ=Europe/London -e VERSION=docker -v D:\plex\config:/config -v D:\media\tvseries:/data/tvshows -v D:\media\movies:/data/movies -v D:\media\transcode:/transcode --restart unless-stopped linuxserver/plex
当我使用 docker ps
时,plex 容器看起来像是 运行ning。
我是 docker 的新手。我环顾四周,找不到无法访问 UI 的原因。
如果您需要更多信息,请告诉我。
docker 检查:
"NetworkMode": "host",
"PortBindings": {
"32400/tcp": [
{
"HostIp": "",
"HostPort": "32400"
}
]
},
如果您需要更多信息,请告诉我
--net=host
不适用于 docker-for-windows
。
原因:
Linux 容器需要共享一个 linux 主机内核。
为了实现这一点,当 docker 用于 windows 运行 一个 linux 容器时,它必须设置一个 hyper-v 机器。如果你打开 Hyper-V 管理器,你会看到一个 MobyLinuxVM
运行ning.
因此,当您使用 --net=host
时,容器将只使用 MobyLinuxVM
的网络,而不是 windows。所以,localhost
将不起作用。
建议:
针对您的情况,我建议您删除 --net=host
,在命令行中添加端口映射:
docker run -d --name=plex -p 32400:32400 -e PUID=1000 -e PGID=1000 -e TZ=Europe/London -e VERSION=docker -v D:\plex\config:/config -v D:\media\tvseries:/data/tvshows -v D:\media\movies:/data/movies -v D:\media\transcode:/transcode --restart unless-stopped linuxserver/plex
然后,魔法会在这里发生,docker for windows 将使用 windows 路由机制将 windows 的 32400 端口映射到您的容器。您可以从 windows.
访问容器的服务