From c8a6664014dbe0450501dc7db7754b0df54ec24b Mon Sep 17 00:00:00 2001 From: aptalca Date: Wed, 19 Oct 2022 21:21:28 -0400 Subject: [PATCH] rebase to jammy, s6v3, clean up deps --- Dockerfile | 21 ++++++++++-------- Dockerfile.aarch64 | 22 +++++++++---------- Dockerfile.armhf | 22 +++++++++---------- README.md | 1 + readme-vars.yml | 1 + .../dependencies.d/init-config | 0 .../s6-rc.d/init-calibre-web-config/run} | 0 .../s6-rc.d/init-calibre-web-config/type | 1 + .../s6-rc.d/init-calibre-web-config/up | 1 + .../dependencies.d/init-calibre-web-config | 0 .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-calibre-web/run | 5 +++++ .../s6-overlay/s6-rc.d/svc-calibre-web/type | 1 + .../user/contents.d/init-calibre-web-config | 0 .../s6-rc.d/user/contents.d/svc-calibre-web | 0 root/etc/services.d/calibre-web/run | 6 ----- 16 files changed, 43 insertions(+), 38 deletions(-) create mode 100644 root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/dependencies.d/init-config rename root/etc/{cont-init.d/30-config => s6-overlay/s6-rc.d/init-calibre-web-config/run} (100%) mode change 100644 => 100755 create mode 100644 root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/type create mode 100644 root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/up create mode 100644 root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-calibre-web-config create mode 100644 root/etc/s6-overlay/s6-rc.d/svc-calibre-web/dependencies.d/init-services create mode 100755 root/etc/s6-overlay/s6-rc.d/svc-calibre-web/run create mode 100644 root/etc/s6-overlay/s6-rc.d/svc-calibre-web/type create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-calibre-web-config create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-calibre-web delete mode 100644 root/etc/services.d/calibre-web/run diff --git a/Dockerfile b/Dockerfile index 5e7d3c1..1274ebb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/linuxserver/baseimage-ubuntu:focal +FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy # set version label ARG BUILD_DATE @@ -10,22 +10,24 @@ LABEL maintainer="chbmb" RUN \ echo "**** install build packages ****" && \ apt-get update && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ + build-essential \ git \ libldap2-dev \ libsasl2-dev \ - python3-pip && \ + python3-dev && \ echo "**** install runtime packages ****" && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ imagemagick \ + libldap-2.5-0 \ libnss3 \ + libsasl2-2 \ libxcomposite1 \ libxi6 \ - libxslt1.1 \ - libldap-2.4-2 \ - libsasl2-2 \ libxrandr2 \ + libxslt1.1 \ python3-minimal \ + python3-pip \ python3-pkg-resources \ unrar && \ echo "**** install calibre-web ****" && \ @@ -43,7 +45,7 @@ RUN \ /app/calibre-web --strip-components=1 && \ cd /app/calibre-web && \ pip3 install --no-cache-dir -U \ - pip && \ + pip wheel && \ pip install --no-cache-dir -U --ignore-installed --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ requirements.txt -r \ optional-requirements.txt && \ @@ -57,10 +59,11 @@ RUN \ https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-64bit && \ echo "**** cleanup ****" && \ apt-get -y purge \ + build-essential \ git \ libldap2-dev \ libsasl2-dev \ - python3-pip && \ + python3-dev && \ apt-get -y autoremove && \ rm -rf \ /tmp/* \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index da3fbbb..263a112 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,4 +1,4 @@ -FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-focal +FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-jammy # set version label ARG BUILD_DATE @@ -10,9 +10,8 @@ LABEL maintainer="chbmb" RUN \ echo "**** install build packages ****" && \ apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ + apt-get install -y --no-install-recommends \ + build-essential \ git \ libffi-dev \ libjpeg-dev \ @@ -20,12 +19,13 @@ RUN \ libsasl2-dev \ libxml2-dev \ libxslt1-dev \ - python3-pip \ + python3-dev \ + rustc \ zlib1g-dev && \ echo "**** install runtime packages ****" && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ imagemagick \ - libldap-2.4-2 \ + libldap-2.5-0 \ libnss3 \ libsasl2-2 \ libxcomposite1 \ @@ -33,6 +33,7 @@ RUN \ libxrandr2 \ libxslt1.1 \ python3-minimal \ + python3-pip \ python3-pkg-resources \ unrar && \ echo "**** install calibre-web ****" && \ @@ -50,7 +51,7 @@ RUN \ /app/calibre-web --strip-components=1 && \ cd /app/calibre-web && \ pip3 install --no-cache-dir -U \ - pip && \ + pip wheel && \ pip install --no-cache-dir -U --ignore-installed --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ requirements.txt -r \ optional-requirements.txt && \ @@ -64,8 +65,7 @@ RUN \ https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm64 && \ echo "**** cleanup ****" && \ apt-get -y purge \ - g++ \ - gcc \ + build-essential \ git \ libffi-dev \ libjpeg-dev \ @@ -73,7 +73,7 @@ RUN \ libsasl2-dev \ libxml2-dev \ libxslt1-dev \ - python3-pip \ + python3-dev \ zlib1g-dev && \ apt-get -y autoremove && \ rm -rf \ diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 649cbd3..651901c 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,4 +1,4 @@ -FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-focal +FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-jammy # set version label ARG BUILD_DATE @@ -10,9 +10,8 @@ LABEL maintainer="chbmb" RUN \ echo "**** install build packages ****" && \ apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ + apt-get install -y --no-install-recommends \ + build-essential \ git \ libffi-dev \ libjpeg-dev \ @@ -21,13 +20,13 @@ RUN \ libssl-dev \ libxml2-dev \ libxslt1-dev \ - python3-pip \ + python3-dev \ rustc \ zlib1g-dev && \ echo "**** install runtime packages ****" && \ - apt-get install -y \ + apt-get install -y --no-install-recommends \ imagemagick \ - libldap-2.4-2 \ + libldap-2.5-0 \ libnss3 \ libsasl2-2 \ libxcomposite1 \ @@ -35,6 +34,7 @@ RUN \ libxrandr2 \ libxslt1.1 \ python3-minimal \ + python3-pip \ python3-pkg-resources \ unrar && \ echo "**** install calibre-web ****" && \ @@ -52,7 +52,7 @@ RUN \ /app/calibre-web --strip-components=1 && \ cd /app/calibre-web && \ pip3 install --no-cache-dir -U \ - pip && \ + pip wheel && \ pip install --no-cache-dir -U --ignore-installed --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ requirements.txt -r \ optional-requirements.txt && \ @@ -66,8 +66,7 @@ RUN \ https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm && \ echo "**** cleanup ****" && \ apt-get -y purge \ - g++ \ - gcc \ + build-essential \ git \ libffi-dev \ libjpeg-dev \ @@ -76,8 +75,7 @@ RUN \ libssl-dev \ libxml2-dev \ libxslt1-dev \ - python3-pip \ - rustc \ + python3-dev \ zlib1g-dev && \ apt-get -y autoremove && \ rm -rf \ diff --git a/README.md b/README.md index cb21b1f..5472e9a 100644 --- a/README.md +++ b/README.md @@ -266,6 +266,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **19.10.22:** - Rebase to jammy. Upgrade to s6v3. Clean up build dependencies. * **04.11.21:** - Update pip arguments to ignore distro installed packages. * **24.06.21:** - Add note on optional OAUTHLIB_RELAX_TOKEN_SCOPE for Google OAUTH support. * **17.05.21:** - Add linuxserver wheel index. diff --git a/readme-vars.yml b/readme-vars.yml index f91ba41..e2b70d6 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -79,6 +79,7 @@ app_setup_block: | # changelog changelogs: + - { date: "19.10.22:", desc: "Rebase to jammy. Upgrade to s6v3. Clean up build dependencies."} - { date: "04.11.21:", desc: "Update pip arguments to ignore distro installed packages."} - { date: "24.06.21:", desc: "Add note on optional OAUTHLIB_RELAX_TOKEN_SCOPE for Google OAUTH support."} - { date: "17.05.21:", desc: "Add linuxserver wheel index."} diff --git a/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/dependencies.d/init-config b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/dependencies.d/init-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/cont-init.d/30-config b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/run old mode 100644 new mode 100755 similarity index 100% rename from root/etc/cont-init.d/30-config rename to root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/type b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/up b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/up new file mode 100644 index 0000000..7a022ec --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-calibre-web-config/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-calibre-web-config/run \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-calibre-web-config b/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-calibre-web-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/dependencies.d/init-services b/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/dependencies.d/init-services new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/run b/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/run new file mode 100755 index 0000000..3a24191 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/run @@ -0,0 +1,5 @@ +#!/usr/bin/with-contenv bash + +exec \ + s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z localhost 8083" \ + cd /app/calibre-web s6-setuidgid abc python3 /app/calibre-web/cps.py diff --git a/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/type b/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/type new file mode 100644 index 0000000..1780f9f --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/svc-calibre-web/type @@ -0,0 +1 @@ +longrun \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-calibre-web-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-calibre-web-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-calibre-web b/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-calibre-web new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/services.d/calibre-web/run b/root/etc/services.d/calibre-web/run deleted file mode 100644 index 98523a3..0000000 --- a/root/etc/services.d/calibre-web/run +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bash - -cd /app/calibre-web || exit - -exec \ - s6-setuidgid abc python3 /app/calibre-web/cps.py