From ebeadd336faefe328860e0ae6d537cb7b0a46a34 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Thu, 19 Jan 2023 20:18:45 -0600 Subject: [PATCH] Rebase to alpine 3.17 with php8.1 --- Dockerfile | 37 ++++++++++--------- Dockerfile.aarch64 | 37 ++++++++++--------- Dockerfile.armhf | 37 ++++++++++--------- README.md | 1 + readme-vars.yml | 1 + .../dependencies.d/init-nginx-end | 0 .../s6-rc.d/init-bookstack-config/run} | 6 +-- .../s6-rc.d/init-bookstack-config/type | 1 + .../s6-rc.d/init-bookstack-config/up | 1 + .../dependencies.d/init-services | 0 .../s6-rc.d/svc-memcached}/run | 0 .../etc/s6-overlay/s6-rc.d/svc-memcached/type | 1 + .../user/contents.d/init-bookstack-config | 0 .../s6-rc.d/user/contents.d/svc-memcached | 0 14 files changed, 65 insertions(+), 57 deletions(-) create mode 100644 root/etc/s6-overlay/s6-rc.d/init-bookstack-config/dependencies.d/init-nginx-end rename root/etc/{cont-init.d/50-config => s6-overlay/s6-rc.d/init-bookstack-config/run} (98%) mode change 100644 => 100755 create mode 100644 root/etc/s6-overlay/s6-rc.d/init-bookstack-config/type create mode 100644 root/etc/s6-overlay/s6-rc.d/init-bookstack-config/up create mode 100644 root/etc/s6-overlay/s6-rc.d/svc-memcached/dependencies.d/init-services rename root/etc/{services.d/memcached => s6-overlay/s6-rc.d/svc-memcached}/run (100%) mode change 100644 => 100755 create mode 100644 root/etc/s6-overlay/s6-rc.d/svc-memcached/type create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-bookstack-config create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-memcached diff --git a/Dockerfile b/Dockerfile index 3cad721..dbc3ee8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.15 +# syntax=docker/dockerfile:1 + +FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.17 # set version label ARG BUILD_DATE @@ -18,29 +20,28 @@ RUN \ apk add --no-cache \ fontconfig \ memcached \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-gd \ - php8-ldap \ - php8-mbstring \ - php8-mysqlnd \ - php8-openssl \ - php8-pdo_mysql \ - php8-pecl-memcached \ - php8-phar \ - php8-simplexml \ - php8-tokenizer \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-gd \ + php81-ldap \ + php81-mbstring \ + php81-mysqlnd \ + php81-openssl \ + php81-pdo_mysql \ + php81-pecl-memcached \ + php81-phar \ + php81-simplexml \ + php81-tokenizer \ qt5-qtbase \ - tar \ ttf-freefont && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/v3.14/community \ wkhtmltopdf && \ echo "**** configure php-fpm to pass env vars ****" && \ - sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php8/php-fpm.d/www.conf && \ - grep -qxF 'clear_env = no' /etc/php8/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php8/php-fpm.d/www.conf && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php81/php-fpm.d/www.conf && \ + grep -qxF 'clear_env = no' /etc/php81/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php81/php-fpm.d/www.conf && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** fetch bookstack ****" && \ mkdir -p\ /app/www && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index af97fb0..ca91f52 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,4 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.15 +# syntax=docker/dockerfile:1 + +FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.17 # set version label ARG BUILD_DATE @@ -18,29 +20,28 @@ RUN \ apk add --no-cache \ fontconfig \ memcached \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-gd \ - php8-ldap \ - php8-mbstring \ - php8-mysqlnd \ - php8-openssl \ - php8-pdo_mysql \ - php8-pecl-memcached \ - php8-phar \ - php8-simplexml \ - php8-tokenizer \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-gd \ + php81-ldap \ + php81-mbstring \ + php81-mysqlnd \ + php81-openssl \ + php81-pdo_mysql \ + php81-pecl-memcached \ + php81-phar \ + php81-simplexml \ + php81-tokenizer \ qt5-qtbase \ - tar \ ttf-freefont && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/v3.14/community \ wkhtmltopdf && \ echo "**** configure php-fpm to pass env vars ****" && \ - sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php8/php-fpm.d/www.conf && \ - grep -qxF 'clear_env = no' /etc/php8/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php8/php-fpm.d/www.conf && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php81/php-fpm.d/www.conf && \ + grep -qxF 'clear_env = no' /etc/php81/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php81/php-fpm.d/www.conf && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** fetch bookstack ****" && \ mkdir -p\ /app/www && \ diff --git a/Dockerfile.armhf b/Dockerfile.armhf index eaf7a8f..ce376d8 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,4 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm32v7-3.15 +# syntax=docker/dockerfile:1 + +FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm32v7-3.17 # set version label ARG BUILD_DATE @@ -18,29 +20,28 @@ RUN \ apk add --no-cache \ fontconfig \ memcached \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-gd \ - php8-ldap \ - php8-mbstring \ - php8-mysqlnd \ - php8-openssl \ - php8-pdo_mysql \ - php8-pecl-memcached \ - php8-phar \ - php8-simplexml \ - php8-tokenizer \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-gd \ + php81-ldap \ + php81-mbstring \ + php81-mysqlnd \ + php81-openssl \ + php81-pdo_mysql \ + php81-pecl-memcached \ + php81-phar \ + php81-simplexml \ + php81-tokenizer \ qt5-qtbase \ - tar \ ttf-freefont && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/v3.14/community \ wkhtmltopdf && \ echo "**** configure php-fpm to pass env vars ****" && \ - sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php8/php-fpm.d/www.conf && \ - grep -qxF 'clear_env = no' /etc/php8/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php8/php-fpm.d/www.conf && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php81/php-fpm.d/www.conf && \ + grep -qxF 'clear_env = no' /etc/php81/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php81/php-fpm.d/www.conf && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** fetch bookstack ****" && \ mkdir -p\ /app/www && \ diff --git a/README.md b/README.md index f7adb9d..94257dd 100644 --- a/README.md +++ b/README.md @@ -276,6 +276,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **20.08.22:** - Rebase to alpine 3.17 with php8.1. * **16.01.23:** - Wrap `.env` values in quotes. * **05.01.23:** - Fix db password setting (sed escape `&`). * **21.12.22:** - Update db info in .env file when env vars are updated. diff --git a/readme-vars.yml b/readme-vars.yml index 1db8a23..6ae17d1 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -104,6 +104,7 @@ app_setup_block: | # changelog changelogs: + - { date: "20.08.22:", desc: "Rebase to alpine 3.17 with php8.1." } - { date: "16.01.23:", desc: "Wrap `.env` values in quotes." } - { date: "05.01.23:", desc: "Fix db password setting (sed escape `&`)." } - { date: "21.12.22:", desc: "Update db info in .env file when env vars are updated." } diff --git a/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/dependencies.d/init-nginx-end b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/dependencies.d/init-nginx-end new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/cont-init.d/50-config b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/run old mode 100644 new mode 100755 similarity index 98% rename from root/etc/cont-init.d/50-config rename to root/etc/s6-overlay/s6-rc.d/init-bookstack-config/run index cb2f3ee..616f6fa --- a/root/etc/cont-init.d/50-config +++ b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/run @@ -4,7 +4,7 @@ if [ -d /app/www-tmp ]; then echo "New container detected. Setting up app folder and fixing permissions." mv /app/www-tmp /app/www - chown -R abc:abc /app/www + lsiown -R abc:abc /app/www fi # create directory structure @@ -145,8 +145,8 @@ if [ -z "${CI_RUN+x}" ]; then php /app/www/artisan migrate --force fi -# set permissions -chown -R abc:abc \ +# permissions +lsiown -R abc:abc \ /config # set lockfile to avoid DB waits for this specific container diff --git a/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/type b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/type @@ -0,0 +1 @@ +oneshot diff --git a/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/up b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/up new file mode 100644 index 0000000..c9f39e1 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-bookstack-config/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-bookstack-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/svc-memcached/dependencies.d/init-services b/root/etc/s6-overlay/s6-rc.d/svc-memcached/dependencies.d/init-services new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/services.d/memcached/run b/root/etc/s6-overlay/s6-rc.d/svc-memcached/run old mode 100644 new mode 100755 similarity index 100% rename from root/etc/services.d/memcached/run rename to root/etc/s6-overlay/s6-rc.d/svc-memcached/run diff --git a/root/etc/s6-overlay/s6-rc.d/svc-memcached/type b/root/etc/s6-overlay/s6-rc.d/svc-memcached/type new file mode 100644 index 0000000..5883cff --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/svc-memcached/type @@ -0,0 +1 @@ +longrun diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-bookstack-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-bookstack-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-memcached b/root/etc/s6-overlay/s6-rc.d/user/contents.d/svc-memcached new file mode 100644 index 0000000..e69de29