From f1459ab4c3244fcb19b9d4ffe7c74471a5cba62e Mon Sep 17 00:00:00 2001 From: Pablo Romeo Date: Tue, 23 Jul 2024 16:36:03 -0300 Subject: [PATCH 1/2] fix: migrating s6-overlay to v3 --- .../92-install-dependencies | 0 .../93-npm-install | 0 .../94-install-transcoder-shim | 0 .../95-setup-nginx | 0 .../services.d => _old_services.d}/nginx/run | 0 .../s6-rc.d/1-install-dependencies/run | 16 ++++++++++++++++ .../s6-rc.d/1-install-dependencies/type | 1 + .../s6-rc.d/1-install-dependencies/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../etc/s6-overlay/s6-rc.d/2-npm-install/run | 0 .../etc/s6-overlay/s6-rc.d/2-npm-install/type | 1 + .../etc/s6-overlay/s6-rc.d/2-npm-install/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../s6-rc.d/3-install-transcoder-shim/run | 17 +++++++++++++++++ .../s6-rc.d/3-install-transcoder-shim/type | 1 + .../s6-rc.d/3-install-transcoder-shim/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../etc/s6-overlay/s6-rc.d/4-setup-nginx/run | 15 +++++++++++++++ .../etc/s6-overlay/s6-rc.d/4-setup-nginx/type | 1 + .../etc/s6-overlay/s6-rc.d/4-setup-nginx/up | 1 + .../5-run-nginx/dependencies.d/4-setup-nginx | 0 .../5-run-nginx/dependencies.d/init-services | 0 .../etc/s6-overlay/s6-rc.d/5-run-nginx/run | 4 ++++ .../etc/s6-overlay/s6-rc.d/5-run-nginx/type | 1 + .../root/etc/s6-overlay/s6-rc.d/5-run-nginx/up | 1 + .../user/contents.d/1-install-dependencies | 0 .../s6-rc.d/user/contents.d/2-npm-install | 0 .../user/contents.d/3-install-transcoder-shim | 0 .../s6-rc.d/user/contents.d/4-setup-nginx | 0 .../s6-rc.d/user/contents.d/5-run-nginx | 0 pms/extended-image/Dockerfile | 18 +++++++++++------- .../92-install-dependencies | 0 .../docker-mod/_old_cont-init.d/93-npm-install | 5 +++++ .../94-install-shim | 0 .../95-setup-codecs-dir | 0 .../s6-rc.d/1-install-dependencies/run | 17 +++++++++++++++++ .../s6-rc.d/1-install-dependencies/type | 1 + .../s6-rc.d/1-install-dependencies/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../etc/s6-overlay/s6-rc.d/2-npm-install/run | 5 +++++ .../etc/s6-overlay/s6-rc.d/2-npm-install/type | 1 + .../etc/s6-overlay/s6-rc.d/2-npm-install/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../etc/s6-overlay/s6-rc.d/3-install-shim/run | 14 ++++++++++++++ .../etc/s6-overlay/s6-rc.d/3-install-shim/type | 1 + .../etc/s6-overlay/s6-rc.d/3-install-shim/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../s6-overlay/s6-rc.d/4-setup-codecs-dir/run | 13 +++++++++++++ .../s6-overlay/s6-rc.d/4-setup-codecs-dir/type | 1 + .../s6-overlay/s6-rc.d/4-setup-codecs-dir/up | 1 + .../dependencies.d/1-install-dependencies | 0 .../init-mods-end/dependencies.d/2-npm-install | 0 .../dependencies.d/3-install-shim | 0 .../dependencies.d/4-setup-codecs-dir | 0 .../user/contents.d/1-install-dependencies | 0 .../s6-rc.d/user/contents.d/2-npm-install | 0 .../s6-rc.d/user/contents.d/3-install-shim | 0 .../s6-rc.d/user/contents.d/4-setup-codecs-dir | 0 worker/extended-image/Dockerfile | 14 ++++++++++---- 59 files changed, 145 insertions(+), 11 deletions(-) rename pms/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/92-install-dependencies (100%) rename pms/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/93-npm-install (100%) rename pms/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/94-install-transcoder-shim (100%) rename pms/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/95-setup-nginx (100%) rename pms/docker-mod/{root/etc/services.d => _old_services.d}/nginx/run (100%) create mode 100755 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies rename worker/docker-mod/root/etc/cont-init.d/93-npm-install => pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run (100%) mode change 100644 => 100755 create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/dependencies.d/1-install-dependencies create mode 100755 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/run create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/type create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/up create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/dependencies.d/1-install-dependencies create mode 100755 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/run create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/type create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/up create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/4-setup-nginx create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/init-services create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/run create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/type create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/up create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-transcoder-shim create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-nginx create mode 100644 pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/5-run-nginx rename worker/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/92-install-dependencies (100%) create mode 100644 worker/docker-mod/_old_cont-init.d/93-npm-install rename worker/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/94-install-shim (100%) rename worker/docker-mod/{root/etc/cont-init.d => _old_cont-init.d}/95-setup-codecs-dir (100%) create mode 100755 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies create mode 100755 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/dependencies.d/1-install-dependencies create mode 100755 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/run create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/type create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/up create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/dependencies.d/1-install-dependencies create mode 100755 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/run create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/type create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/up create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/1-install-dependencies create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/2-npm-install create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/3-install-shim create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/4-setup-codecs-dir create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-shim create mode 100644 worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-codecs-dir diff --git a/pms/docker-mod/root/etc/cont-init.d/92-install-dependencies b/pms/docker-mod/_old_cont-init.d/92-install-dependencies similarity index 100% rename from pms/docker-mod/root/etc/cont-init.d/92-install-dependencies rename to pms/docker-mod/_old_cont-init.d/92-install-dependencies diff --git a/pms/docker-mod/root/etc/cont-init.d/93-npm-install b/pms/docker-mod/_old_cont-init.d/93-npm-install similarity index 100% rename from pms/docker-mod/root/etc/cont-init.d/93-npm-install rename to pms/docker-mod/_old_cont-init.d/93-npm-install diff --git a/pms/docker-mod/root/etc/cont-init.d/94-install-transcoder-shim b/pms/docker-mod/_old_cont-init.d/94-install-transcoder-shim similarity index 100% rename from pms/docker-mod/root/etc/cont-init.d/94-install-transcoder-shim rename to pms/docker-mod/_old_cont-init.d/94-install-transcoder-shim diff --git a/pms/docker-mod/root/etc/cont-init.d/95-setup-nginx b/pms/docker-mod/_old_cont-init.d/95-setup-nginx similarity index 100% rename from pms/docker-mod/root/etc/cont-init.d/95-setup-nginx rename to pms/docker-mod/_old_cont-init.d/95-setup-nginx diff --git a/pms/docker-mod/root/etc/services.d/nginx/run b/pms/docker-mod/_old_services.d/nginx/run similarity index 100% rename from pms/docker-mod/root/etc/services.d/nginx/run rename to pms/docker-mod/_old_services.d/nginx/run diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run new file mode 100755 index 0000000..5258fc1 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run @@ -0,0 +1,16 @@ +#!/usr/bin/with-contenv bash + +if which node > /dev/null +then + echo "**** node is installed, skipping... ****" +else + echo "**** install runtime packages ****" + echo "**** apt-get update ****" + apt-get update + echo "**** install libatomic1, file, nginx ****" + apt-get install -y libatomic1 file nginx + echo "**** install 'n' ****" + curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n + echo "**** install nodejs ****" + bash n lts +fi diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up new file mode 100644 index 0000000..e315f07 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/1-install-dependencies/run \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/cont-init.d/93-npm-install b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run old mode 100644 new mode 100755 similarity index 100% rename from worker/docker-mod/root/etc/cont-init.d/93-npm-install rename to pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up new file mode 100644 index 0000000..d0d14a8 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/2-npm-install/run \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/dependencies.d/1-install-dependencies b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/run b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/run new file mode 100755 index 0000000..de44dda --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/run @@ -0,0 +1,17 @@ +#!/usr/bin/with-contenv bash + +if file /usr/lib/plexmediaserver/'Plex Transcoder' | grep -iq ASCII ; then + echo "**** Transcoder is already clusterplex, only update ****" +else + echo "**** Transcoder is still original, rename ****" + mv /usr/lib/plexmediaserver/'Plex Transcoder' /usr/lib/plexmediaserver/originalTranscoder +fi + +echo "**** Move shim to destination ****" +cp /app/transcoder-shim.sh /usr/lib/plexmediaserver/'Plex Transcoder' + +echo "**** Make the shim executable ****" +chmod +x /usr/lib/plexmediaserver/'Plex Transcoder' + +echo "**** Make sentinel.sh executable ****" +chmod +x /app/sentinel.sh diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/type b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/up b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/up new file mode 100644 index 0000000..916e9de --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/run \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/dependencies.d/1-install-dependencies b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/run b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/run new file mode 100755 index 0000000..18b7c57 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/run @@ -0,0 +1,15 @@ +#!/usr/bin/with-contenv bash + +echo "**** unlink nginx default ****" +unlink /etc/nginx/sites-enabled/default +echo "**** link nginx forward-proxy ****" +ln -s /etc/nginx/sites-available/forward-proxy.conf /etc/nginx/sites-enabled/forward-proxy.conf + +echo "**** configuring nginx (for Local Relay) forwarding ports ****" +echo "PMS_PORT => '${PMS_PORT}'" +echo "LOCAL_RELAY_PORT => '${LOCAL_RELAY_PORT}'" + +sed -i 's/_PMS_PORT/'"${PMS_PORT:-32400}"'/g' /etc/nginx/sites-available/forward-proxy.conf +sed -i 's/_LOCAL_RELAY_PORT/'"${LOCAL_RELAY_PORT:-32499}"'/g' /etc/nginx/sites-available/forward-proxy.conf + +echo "**** nginx configuration complete ****" \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/type b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/up b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/up new file mode 100644 index 0000000..8ee03d6 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-nginx/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/4-setup-nginx/run \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/4-setup-nginx b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/4-setup-nginx new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/init-services b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/dependencies.d/init-services new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/run b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/run new file mode 100644 index 0000000..fb7b434 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/run @@ -0,0 +1,4 @@ +#!/usr/bin/with-contenv bash + +echo "**** starting nginx ****" +/usr/sbin/nginx -g 'daemon off;' diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/type b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/type new file mode 100644 index 0000000..1780f9f --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/type @@ -0,0 +1 @@ +longrun \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/up b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/up new file mode 100644 index 0000000..8ee03d6 --- /dev/null +++ b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/5-run-nginx/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/4-setup-nginx/run \ No newline at end of file diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-transcoder-shim b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-transcoder-shim new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-nginx b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-nginx new file mode 100644 index 0000000..e69de29 diff --git a/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/5-run-nginx b/pms/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/5-run-nginx new file mode 100644 index 0000000..e69de29 diff --git a/pms/extended-image/Dockerfile b/pms/extended-image/Dockerfile index b166cbe..f5b6403 100644 --- a/pms/extended-image/Dockerfile +++ b/pms/extended-image/Dockerfile @@ -5,14 +5,18 @@ LABEL maintainer="pabloromeo" COPY /docker-mod/root/etc/ /etc/ COPY /app /app -RUN bash /etc/cont-init.d/92-install-dependencies && \ - bash /etc/cont-init.d/93-npm-install && \ - rm /etc/cont-init.d/92-install-dependencies && \ - rm /etc/cont-init.d/93-npm-install && \ +RUN bash /etc/s6-overlay/s6-rc.d/1-install-dependencies/run && \ + bash /etc/s6-overlay/s6-rc.d/2-npm-install/run && \ + rm -rf /etc/s6-overlay/s6-rc.d/1-install-dependencies && \ + rm -rf /etc/s6-overlay/s6-rc.d/2-npm-install && \ + rm -rf /etc/s6-overlay/s6-rc.d/3-install-transcoder-shim/dependencies.d && \ + rm -rf /etc/s6-overlay/s6-rc.d/4-setup-nginx/dependencies.d && \ + rm /etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies && \ + rm /etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install && \ echo "**** cleanup ****" && \ rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* WORKDIR / diff --git a/worker/docker-mod/root/etc/cont-init.d/92-install-dependencies b/worker/docker-mod/_old_cont-init.d/92-install-dependencies similarity index 100% rename from worker/docker-mod/root/etc/cont-init.d/92-install-dependencies rename to worker/docker-mod/_old_cont-init.d/92-install-dependencies diff --git a/worker/docker-mod/_old_cont-init.d/93-npm-install b/worker/docker-mod/_old_cont-init.d/93-npm-install new file mode 100644 index 0000000..d7d95e3 --- /dev/null +++ b/worker/docker-mod/_old_cont-init.d/93-npm-install @@ -0,0 +1,5 @@ +#!/usr/bin/with-contenv bash + +echo "**** Running npm install ****" +cd /app +npm install \ No newline at end of file diff --git a/worker/docker-mod/root/etc/cont-init.d/94-install-shim b/worker/docker-mod/_old_cont-init.d/94-install-shim similarity index 100% rename from worker/docker-mod/root/etc/cont-init.d/94-install-shim rename to worker/docker-mod/_old_cont-init.d/94-install-shim diff --git a/worker/docker-mod/root/etc/cont-init.d/95-setup-codecs-dir b/worker/docker-mod/_old_cont-init.d/95-setup-codecs-dir similarity index 100% rename from worker/docker-mod/root/etc/cont-init.d/95-setup-codecs-dir rename to worker/docker-mod/_old_cont-init.d/95-setup-codecs-dir diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run new file mode 100755 index 0000000..ac0ea50 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/run @@ -0,0 +1,17 @@ +#!/usr/bin/with-contenv bash + +if which node > /dev/null +then + echo "**** node is installed, skipping... ****" +else + echo "**** install runtime packages ****" + echo "**** apt-get update ****" + apt-get update + echo "**** install binutils, libatomic1, file, unzip ****" + apt-get install -y binutils libatomic1 file unzip + echo "**** install 'n' ****" + curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n + echo "**** install nodejs ****" + bash n lts +fi + diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up new file mode 100644 index 0000000..e315f07 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/1-install-dependencies/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/1-install-dependencies/run \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run new file mode 100755 index 0000000..d7d95e3 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/run @@ -0,0 +1,5 @@ +#!/usr/bin/with-contenv bash + +echo "**** Running npm install ****" +cd /app +npm install \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up new file mode 100644 index 0000000..d0d14a8 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/2-npm-install/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/2-npm-install/run \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/dependencies.d/1-install-dependencies b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/run b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/run new file mode 100755 index 0000000..b69a0df --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/run @@ -0,0 +1,14 @@ +#!/usr/bin/with-contenv bash + +if file /usr/lib/plexmediaserver/'Plex Media Server' | grep -iq ASCII ; then + echo "**** Root executable is already clusterplex-worker, only update ****" +else + echo "**** Root executable is still original, rename ****" + mv /usr/lib/plexmediaserver/'Plex Media Server' /usr/lib/plexmediaserver/pms_original +fi + +echo "**** Move shim to destination ****" +cp /app/start.sh /usr/lib/plexmediaserver/'Plex Media Server' + +echo "**** Make the shim executable ****" +chmod +x /usr/lib/plexmediaserver/'Plex Media Server' diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/type b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/up b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/up new file mode 100644 index 0000000..3003e69 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/3-install-shim/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/3-install-shim/run \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/dependencies.d/1-install-dependencies b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/run b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/run new file mode 100755 index 0000000..b36606a --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/run @@ -0,0 +1,13 @@ +#!/usr/bin/with-contenv bash + +echo "**** Setting up codecs directory ****" +if [ -d "/codecs" ] +then + echo "Directory already present" +else + echo "Creating /codecs" + mkdir -p /codecs +fi + +echo "**** Changing ownership for /codecs ****" +chown abc:abc /codecs diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/type b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/up b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/up new file mode 100644 index 0000000..3e7981c --- /dev/null +++ b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/run \ No newline at end of file diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/1-install-dependencies b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/2-npm-install b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/2-npm-install new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/3-install-shim b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/3-install-shim new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/4-setup-codecs-dir b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/4-setup-codecs-dir new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-shim b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/3-install-shim new file mode 100644 index 0000000..e69de29 diff --git a/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-codecs-dir b/worker/docker-mod/root/etc/s6-overlay/s6-rc.d/user/contents.d/4-setup-codecs-dir new file mode 100644 index 0000000..e69de29 diff --git a/worker/extended-image/Dockerfile b/worker/extended-image/Dockerfile index 0dcd34a..a446e05 100644 --- a/worker/extended-image/Dockerfile +++ b/worker/extended-image/Dockerfile @@ -5,10 +5,16 @@ LABEL maintainer="pabloromeo" COPY /docker-mod/root/etc/ /etc/ COPY /app /app -RUN bash /etc/cont-init.d/92-install-dependencies && \ - bash /etc/cont-init.d/93-npm-install && \ - rm /etc/cont-init.d/92-install-dependencies && \ - rm /etc/cont-init.d/93-npm-install && \ +RUN bash /etc/s6-overlay/s6-rc.d/1-install-dependencies/run && \ + bash /etc/s6-overlay/s6-rc.d/2-npm-install/run && \ + rm -rf /etc/s6-overlay/s6-rc.d/1-install-dependencies && \ + rm -rf /etc/s6-overlay/s6-rc.d/2-npm-install && \ + rm -rf /etc/s6-overlay/s6-rc.d/3-install-shim/dependencies.d && \ + rm -rf /etc/s6-overlay/s6-rc.d/4-setup-codecs-dir/dependencies.d && \ + rm /etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/1-install-dependencies && \ + rm /etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/2-npm-install && \ + rm /etc/s6-overlay/s6-rc.d/user/contents.d/1-install-dependencies && \ + rm /etc/s6-overlay/s6-rc.d/user/contents.d/2-npm-install && \ echo "**** cleanup ****" && \ rm -rf \ /tmp/* \ From 90c3027caafc3f0e0f5eb2dd80cda207c08682b0 Mon Sep 17 00:00:00 2001 From: Pablo Romeo Date: Wed, 24 Jul 2024 11:16:58 -0300 Subject: [PATCH 2/2] Update forward-proxy.conf --- .../root/etc/nginx/sites-available/forward-proxy.conf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pms/docker-mod/root/etc/nginx/sites-available/forward-proxy.conf b/pms/docker-mod/root/etc/nginx/sites-available/forward-proxy.conf index bef6452..c35febb 100644 --- a/pms/docker-mod/root/etc/nginx/sites-available/forward-proxy.conf +++ b/pms/docker-mod/root/etc/nginx/sites-available/forward-proxy.conf @@ -1,5 +1,6 @@ server { - listen [::]:_LOCAL_RELAY_PORT ipv6only=off; + listen _LOCAL_RELAY_PORT; + listen [::]:_LOCAL_RELAY_PORT; location /video/:/transcode/session/ { proxy_pass http://127.0.0.1:_PMS_PORT; proxy_request_buffering off;