Skip to content

Commit

Permalink
Merge pull request #410 from linuxserver/ro-update
Browse files Browse the repository at this point in the history
  • Loading branch information
thespad authored Oct 14, 2024
2 parents 4d1b0e1 + 9e313af commit 3b7c8dd
Show file tree
Hide file tree
Showing 6 changed files with 28 additions and 2 deletions.
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ ENV DEBIAN_FRONTEND="noninteractive" \
PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS="6" \
PLEX_MEDIA_SERVER_USER="abc" \
PLEX_MEDIA_SERVER_INFO_VENDOR="Docker" \
PLEX_MEDIA_SERVER_INFO_DEVICE="Docker Container (LinuxServer.io)"
PLEX_MEDIA_SERVER_INFO_DEVICE="Docker Container (LinuxServer.io)" \
TMPDIR=/run/plex-temp

RUN \
echo "**** install runtime packages ****" && \
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ ENV DEBIAN_FRONTEND="noninteractive" \
PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS="6" \
PLEX_MEDIA_SERVER_USER="abc" \
PLEX_MEDIA_SERVER_INFO_VENDOR="Docker" \
PLEX_MEDIA_SERVER_INFO_DEVICE="Docker Container (LinuxServer.io)"
PLEX_MEDIA_SERVER_INFO_DEVICE="Docker Container (LinuxServer.io)" \
TMPDIR=/run/plex-temp

RUN \
echo "**** install runtime packages ****" && \
Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,15 @@ Valid settings for VERSION are:-
+ **`public`**: will update plexpass users to the latest public version, useful for plexpass users that don't want to be on the bleeding edge but still want the latest public updates.
+ **`<specific-version>`**: will select a specific version (eg 0.9.12.4.1192-9a47d21) of plex to install, note you cannot use this to access plexpass versions if you do not have plexpass.

## Read-Only Operation

This image can be run with a read-only container filesystem. For details please [read the docs](https://docs.linuxserver.io/misc/read-only/).

### Caveats

* Runtime update of Plex (and thus Plexpass builds) is not supported.
* Transcode directory must be mounted to a host path or tmpfs.

### Hardware Acceleration

Many desktop applications need access to a GPU to function properly and even some Desktop Environments have compositor effects that will not function without a GPU. However this is not a hard requirement and all base images will function without a video device mounted into the container.
Expand Down Expand Up @@ -161,6 +170,7 @@ Containers are configured using parameters passed at runtime (such as those abov
| `-v /config` | Plex library location. *This can grow very large, 50gb+ is likely for a large collection.* |
| `-v /tv` | Media goes here. Add as many as needed e.g. `/movies`, `/tv`, etc. |
| `-v /movies` | Media goes here. Add as many as needed e.g. `/movies`, `/tv`, etc. |
| `--read-only=true` | Run container with a read-only filesystem. Please [read the docs](https://docs.linuxserver.io/misc/read-only/). |

## Environment variables from files (Docker secrets)

Expand Down
6 changes: 6 additions & 0 deletions readme-vars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ app_setup_block: |
+ **`<specific-version>`**: will select a specific version (eg 0.9.12.4.1192-9a47d21) of plex to install, note you cannot use this to access plexpass versions if you do not have plexpass.
readme_hwaccel: true

readonly_supported: true
readonly_message: |
* Runtime update of Plex (and thus Plexpass builds) is not supported.
* Transcode directory must be mounted to a host path or tmpfs.
# changelog
changelogs:
- {date: "18.07.24:", desc: "Rebase to Ubuntu Noble."}
Expand Down
3 changes: 3 additions & 0 deletions root/etc/s6-overlay/s6-rc.d/init-plex-chown/run
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash

mkdir -p /run/plex-temp

# create folders
if [[ ! -d "${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}" ]]; then
mkdir -p "${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}"
Expand Down Expand Up @@ -35,5 +37,6 @@ fi

# permissions (non-recursive) on config root and folders
lsiown abc:abc \
/run/plex-temp \
/config \
/config/*
5 changes: 5 additions & 0 deletions root/etc/s6-overlay/s6-rc.d/init-plex-update/run
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash

if [[ -z ${LSIO_READ_ONLY_FS} ]] || [[ -z ${LSIO_NON_ROOT_USER} ]]; then
echo "Runtime update not supported with read-only or non-root operation, skipping."
exit 0
fi

# If docker manages versioning exit
if [[ -n "${VERSION}" ]] && [[ "${VERSION}" == "docker" ]]; then
echo "Docker is used for versioning skip update check"
Expand Down

0 comments on commit 3b7c8dd

Please sign in to comment.