将plex作为docker容器运行,无法访问web UI

xdnvmnnf  于 2023-05-06  发布在  Docker
关注(0)|答案(2)|浏览(394)

我正在尝试使用docker设置Plex服务器。我已经按照LinuxServer.io docker页面上的步骤进行了操作。当我运行docker命令时,它说它正在运行find,我没有得到任何错误。但是,当我尝试通过localhost:32400/web访问Web UI时,得到的只是“加载页面有问题”
我正在使用Docker for 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容器看起来像是在运行。
我是Docker的新手。我已经环顾四周,找不到为什么我不能访问用户界面。
请我知道如果你需要更多的信息。

docker检查:

"NetworkMode": "host",
"PortBindings": {
    "32400/tcp": [
        {
            "HostIp": "",
            "HostPort": "32400"
        }
    ]
},

如果你需要更多的信息,请告诉我

vsmadaxz

vsmadaxz1#

--net=host不适用于docker-for-windows

理由:

Linux容器需要共享一个Linux主机的内核。
为了实现这一点,当docker for windows运行一个linux容器时,它必须设置一个hyper-v机器。如果打开Hyper-V管理器,您将看到MobyLinuxVM正在运行。
因此,当您使用--net=host时,容器将只使用MobyLinuxVM的网络,而不是Windows。所以localhost不会工作。

建议:

对于您的场景,我建议您删除--net=host,在命令行中添加端口Map:

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端口Map到你的容器。您可以从windows访问容器的服务。

j1dl9f46

j1dl9f462#

当我在windows的docker上使用here提供的docker-compose文件时,我遇到了完全相同的问题。根据前面的答案,我从文件中删除了network_mode: host条目,并从包含docker-compose.yml文件的同一目录运行了docker compose up -d命令,它启动得很好。
然后,我能够使用主机IP(我的Windows机器IP地址)以及本地主机没有问题,如下所示
http://<machine-ip i.e. hostip>:32400/webhttp://localhost:32400/web
这里是我的docker-compose.yml文件

version: "2.1"
services:
  plex:
    image: lscr.io/linuxserver/plex:latest
    container_name: plex
    ports:
      - 32400:32400/tcp
    environment:
      - TZ=Africa/Cairo
      - VERSION=docker
    hostname: aimediaserver
    volumes:
      - F:\Media\config:/config
      - F:\Media\TV:/tv
      - F:\Media\Movies:/movies
    restart: unless-stopped

相关问题