Git Product home page Git Product logo

docker-plex-armhf's Introduction

linuxserver.io

The LinuxServer.io team brings you another container release featuring easy user mapping and community support. Find us for support at:

  • forum.linuxserver.io
  • IRC on freenode at #linuxserver.io
  • Podcast covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!

lsioarmhf/plex

Docker PullsDocker StarsBuild Status

Plex organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server.

plex

Usage

docker create \
	--name=plex \
	--net=host \
	-e PUID=<UID> -e PGID=<GID> \
	-v </path/to/library>:/config \
	-v <path/to/tvseries>:/data/tvshows \
	-v </path/to/movies>:/data/movies \
	-v </path for transcoding>:/transcode \
	lsioarmhf/plex

Parameters

The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side. For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container. So -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 http://192.168.x.x:8080 would show you what's running INSIDE the container on port 80.

  • --net=host - Shares host networking with container, required.
  • -v /config - Plex library location. This can grow very large.
  • -v /data/xyz - Media goes here. Add as many as needed e.g. /data/movies, /data/tv, etc.
  • -v /transcode - Path for transcoding folder, optional.
  • -e PGID= for for GroupID - see below for explanation
  • -e PUID= for for UserID - see below for explanation

It is based on ubuntu xenial with s6 overlay, for shell access whilst the container is running do docker exec -it plex /bin/bash.

User / Group Identifiers

Sometimes when using data volumes (-v flags) permissions issues can arise between the host OS and the container. We avoid this issue by allowing you to specify the user PUID and group PGID. Ensure the data volume directory on the host is owned by the same user you specify and it will "just work" TM.

In this instance PUID=1001 and PGID=1001. To find yours use id user as below:

  $ id <dockeruser>
    uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)

Setting up the application

IMPORTANT... THIS IS THE ARMHF VERSION

Webui can be found at <your-ip>:32400/web

Info

  • Shell access whilst the container is running: docker exec -it plex /bin/bash

  • To monitor the logs of the container in realtime: docker logs -f plex

  • container version number

docker inspect -f '{{ index .Config.Labels "build_version" }}' plex

  • image version number

docker inspect -f '{{ index .Config.Labels "build_version" }}' lsioarmhf/plex

Versions

  • 07.09.18: Rebase to ubuntu bionic and tidy Dockerfile.
  • 06.01.18: Fix continuation lines.
  • 28.06.17: Add udev and unrar packages.
  • 14.10.16: Add version layer information.
  • 22.09.16: Initial Release.

docker-plex-armhf's People

Contributors

aptalca avatar sparklyballs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-plex-armhf's Issues

Stuck looking for servers

After running the following docker commands:

 docker create --name=plex --net=host -e PUID=1000 -e PGID=1000 -v /media.../:/config -v /media/...:/data/tvshows ... lsioarmhf/plex

and then docker start plex I can visit the web UI at localhost:32400/web but the UI is stuck "Looking for servers..."

netstat -lptn gives me:

tcp        0      0 127.0.0.1:36837         0.0.0.0:*               LISTEN      28679/Plex Plug-in  
tcp        0      0 0.0.0.0:32400           0.0.0.0:*               LISTEN      28658/./Plex Media  
tcp        0      0 127.0.0.1:32401         0.0.0.0:*               LISTEN      28658/./Plex Media  
tcp        0      0 0.0.0.0:32469           0.0.0.0:*               LISTEN      28765/Plex DLNA Ser 
tcp        0      0 0.0.0.0:1973            0.0.0.0:*               LISTEN      28765/Plex DLNA Ser 
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -                   
tcp        0      0 127.0.0.1:32600         0.0.0.0:*               LISTEN      28771/Plex Tuner Se 
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      -                   
tcp        0      0 127.0.0.1:43293         0.0.0.0:*               LISTEN      28820/Plex Plug-in  

linuxserver.io

Linux pi 4.14.79-v7+ #1159 SMP Sun Nov 4 17:50:20 GMT 2018 armv7l GNU/Linux

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...


      _         ()
     | |  ___   _    __
     | | / __| | |  /  \ 
     | | \__ \ | | | () |
     |_| |___/ |_|  \__/

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/

GID/UID

User uid: 1000
User gid: 1000

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-dbus: executing...
[cont-init.d] 30-dbus: exited 0.
[cont-init.d] 40-chown-files: executing...
[cont-init.d] 40-chown-files: exited 0.
[cont-init.d] done.
[services.d] starting services
6 3000 /config/Library/Application Support
8192
[services.d] done.
Found user 'avahi' (UID 103) and group 'avahi' (GID 104).
Successfully dropped root privileges.
avahi-daemon 0.7 starting up.
No service file found in /etc/avahi/services.
*** WARNING: Detected another IPv4 mDNS stack running on this host. This makes mDNS unreliable and is thus not recommended. ***
*** WARNING: Detected another IPv6 mDNS stack running on this host. This makes mDNS unreliable and is thus not recommended. ***
Joining mDNS multicast group on interface br-bfb5478153b1.IPv4 with address 172.18.0.1.
New relevant interface br-bfb5478153b1.IPv4 for mDNS.
Joining mDNS multicast group on interface docker0.IPv4 with address 172.17.0.1.
New relevant interface docker0.IPv4 for mDNS.
Joining mDNS multicast group on interface wlan0.IPv6 with address ::45bb:2935:71ec:8934.
New relevant interface wlan0.IPv6 for mDNS.
Joining mDNS multicast group on interface wlan0.IPv4 with address 192.168.0.2.
New relevant interface wlan0.IPv4 for mDNS.
Joining mDNS multicast group on interface enxb827ebc6e5d9.IPv6 with address ::ba27:ebff:fec6:e5d9.
New relevant interface enxb827ebc6e5d9.IPv6 for mDNS.
Joining mDNS multicast group on interface enxb827ebc6e5d9.IPv4 with address 169.254.144.159.
New relevant interface enxb827ebc6e5d9.IPv4 for mDNS.
Joining mDNS multicast group on interface lo.IPv6 with address ::1.
New relevant interface lo.IPv6 for mDNS.
Joining mDNS multicast group on interface lo.IPv4 with address 127.0.0.1.
New relevant interface lo.IPv4 for mDNS.
Network interface enumeration completed.
Registering new address record for 172.18.0.1 on br-bfb5478153b1.IPv4.
Registering new address record for 172.17.0.1 on docker0.IPv4.
Registering new address record for ::45bb:2935:71ec:8934 on wlan0..
Registering new address record for 192.168.0.2 on wlan0.IPv4.
Registering new address record for ::ba27:ebff:fec6:e5d9 on enxb827ebc6e5d9.
.
Registering new address record for 169.254.144.159 on enxb827ebc6e5d9.IPv4.
Registering new address record for ::1 on lo..
Registering new address record for 127.0.0.1 on lo.IPv4.
Withdrawing address record for 172.18.0.1 on br-bfb5478153b1.
Withdrawing address record for 172.17.0.1 on docker0.
Withdrawing address record for 192.168.0.2 on wlan0.
Withdrawing address record for ::ba27:ebff:fec6:e5d9 on enxb827ebc6e5d9.
Withdrawing address record for 169.254.144.159 on enxb827ebc6e5d9.
Withdrawing address record for ::1 on lo.
Withdrawing address record for 127.0.0.1 on lo.
Host name conflict, retrying with pi-2
Registering new address record for 172.18.0.1 on br-bfb5478153b1.IPv4.
Registering new address record for 172.17.0.1 on docker0.IPv4.
Registering new address record for ::45bb:2935:71ec:8934 on wlan0.
.
Registering new address record for 192.168.0.2 on wlan0.IPv4.
Registering new address record for ::ba27:ebff:fec6:e5d9 on enxb827ebc6e5d9..
Registering new address record for 169.254.144.159 on enxb827ebc6e5d9.IPv4.
Registering new address record for ::1 on lo.
.
Registering new address record for 127.0.0.1 on lo.IPv4.
Server startup complete. Host name is pi-2.local. Local service cookie is 4262409213.

Thanks, team linuxserver.io

Support pulling synology version

Hello, and thanks for the good work you're doing building all these images!

I am trying to deploy this plex-armhf image on my arm box (s812 soc). It is a correct armv7 box:

# cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 1 (v7l)
BogoMIPS : 190.97
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x4
CPU part : 0xc09
CPU revision : 1
...

You see that it hasn't vfpv4 or idiva, but still is armv7 with vfpv3, so should be compatible with armhf?

But when I deploy this plex-armhf image I get Illegal Instructions error on the plex container, trying to run plex.

Having looked a bit, it seems that the plexmediaserver-installer is, at runtime (so image buildtime on your jenkins server), it looks at the CPU capabilities to fetch the netgear (if vfp4, neon and idiva are supported, or architecture v8) or synology (otherwise) binary (see plexmediaserver-installer script)

If you have a look at your latest plex-armhf build in jenkins, you can see in the console output the Downloading readynas package ... log entry, meaning it's downloading the netgear one based on your build server capabilities.

But on my box, I would like to run the regular synology armv7 one, otherwise I'll get these Illegal Instructions issues.

Could it be possible that the build pipeline build this version as well?

Thanks,

Startup delayed by usermod for several minutes

While starting up the following command is run:

usermod -o -u {UID} abc

This command takes about 5 minutes to run on a raspberry pi 3 model B+, I suspect because it's making changes to Plex's Library folder.

This looks similar to the issue in linuxserver/docker-plex fixed on 11.01.07, given the changelog: "Use Plex environemt variables from pms docker, change abc home folder to /app to alleviate usermod chowning library folder by default (thanks gbooker, plexinc)."

The fix was to change the abc user's home to /app:

echo "**** ensure abc user's home folder is /app ****" && \
usermod -d /app abc && \

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.