Various issues - Docker container on Windows

Hello all, I’ve had nothing but issues using both the Plex official Docker container with Docker for Windows. I feel like most of it could be chalked up to pure instability of the Docker service for Windows itself, but if there’s anyone out there with a successful working build of Plex in this fashion, I’d love to pick your brain.

The issues I’ve had -

  • Inability to restart/kill/stop the container - leading to a full restart of the Docker service.

  • Posters never fully fetching for all TV Shows in the library (sometimes occurs on Movies) Metadata fetching seems to just stop working after some time.

  • Random failures of the Plex service, where the “There was an unexpected error loading this library” error is present and only destroying the container and restarting the Docker service “fixes” the problem

The Docker host is a Windows 10 on the current 1803 build, Intel i7 5960X with 32gb of DDR4. A few 10TB NAS drives directly attached (no network mounted shares). I’d be more than happy to provide logs and other diagnostic information, but I’m mainly curious to see if anyone has gotten these containers to work at all or if I should just keep it in its current VM. I’m looking to migrate all of my HTPC services over to Docker containers entirely.

Generally, playing from the container seems to work as expected, no issues with claiming or reaching the web interface, it just seems to be issues with the agents or the container itself. I’ve tried removing the image and container and rebuilding, running the container on the host-only network, all to no avail. Below is the Docker Run command I’m using.

docker run -d --name plex \
-p 32400:32400/tcp -p 32400:32400/udp \
-p 3005:3005/tcp -p 8324:8324/tcp \
-p 32469:32469/tcp -p 32469:32469/udp \
-p 1900:1900/udp -p 32410:32410/udp \
-p 32412:32412/udp -p 32413:32413/udp \
-p 32414:32414/udp -p 5353:5353/udp \
-p 33400:33400 -p 33443:33443 \
-e TZ="America/Chicago" -e ADVERTISE_IP="http://172.16.5.1:32400" -e PLEX_CLAIM=*snip* \
-h dockerplex -v C:\Docker\Plex\config:/config -v C:\Docker\Plex\transcode:/transcode \
-v D:\:/data --restart unless-stopped plexinc/pms-docker;

Thanks!

Fixed my own issue (for now) – it would be helpful to the forums to mention somewhere explicitly that database corruption is inevitable for SMB shares (basically, if you’re running Docker on Windows). It can be fixed by mounting to a Docker Volume directly on the MobyLinuxVM.

See: Link 1 and Link 2

Any other route will also have the added benefit of making vpnkit.exe extra leaky and WILL cause the Docker Service to become unstable with as many errors as it causes with discarded transactions.

Sorry for the pointless post – seems like this does the trick.

I went ahead and added a warning to the docker repository (https://github.com/plexinc/pms-docker#windows-not-recommended). You are not the first to discover this deficiency is docker on Windows.

Much appreciated! Using manually created volumes for the config path on my (many) containers with SQLite DB’s definitely does the trick, using the volume-sharer container in my links above is only necessary when you need access to the volume to add plug-ins/backup the volumes for disaster recovery, and now I’m able to start and stop the container with no problems. All is well in the world, once more. Thank you!

@ucblitz will Plex’s config be lost if the volume-sharer container restarts?

Nope. The volume sharer container doesn’t house the volume itself, it only creates an accessible share on the moby linux vm. Technically it can be stopped once the share is created, but will need to be run again if the vm ever restarts.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.