From b075adb87da1cbbf99db29e8c1764deaefc5e065 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sun, 22 Jan 2023 15:30:36 -0600 Subject: [PATCH] Rebase to alpine 3.17 with php8.1 --- Dockerfile | 89 +++++++++---------- Dockerfile.aarch64 | 89 +++++++++---------- Dockerfile.armhf | 89 +++++++++---------- README.md | 1 + readme-vars.yml | 1 + root/defaults/nextcloud-perms.sh | 36 -------- root/etc/cont-init.d/40-config | 14 --- root/etc/cont-init.d/60-memcache | 11 --- .../dependencies.d/init-crontabs-config | 0 .../dependencies.d/init-nextcloud-aliases | 0 .../s6-rc.d/init-crontabs-config/run} | 19 ++-- .../s6-rc.d/init-crontabs-config/type | 1 + .../s6-rc.d/init-crontabs-config/up | 1 + .../dependencies.d/init-nextcloud-config | 0 .../s6-rc.d/init-nextcloud-aliases/run} | 0 .../s6-rc.d/init-nextcloud-aliases/type | 1 + .../s6-rc.d/init-nextcloud-aliases/up | 1 + .../dependencies.d/init-nginx-end | 0 .../s6-rc.d/init-nextcloud-config/run | 29 ++++++ .../s6-rc.d/init-nextcloud-config/type | 1 + .../s6-rc.d/init-nextcloud-config/up | 1 + .../user/contents.d/init-crontabs-config | 0 .../user/contents.d/init-nextcloud-aliases | 0 .../user/contents.d/init-nextcloud-config | 0 24 files changed, 164 insertions(+), 220 deletions(-) delete mode 100644 root/defaults/nextcloud-perms.sh delete mode 100644 root/etc/cont-init.d/40-config delete mode 100644 root/etc/cont-init.d/60-memcache create mode 100644 root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-crontabs-config create mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontabs-config/dependencies.d/init-nextcloud-aliases rename root/etc/{cont-init.d/50-install => s6-overlay/s6-rc.d/init-crontabs-config/run} (51%) mode change 100644 => 100755 create mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type create mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/dependencies.d/init-nextcloud-config rename root/etc/{cont-init.d/70-aliases => s6-overlay/s6-rc.d/init-nextcloud-aliases/run} (100%) mode change 100644 => 100755 create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/type create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/up create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/dependencies.d/init-nginx-end create mode 100755 root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/type create mode 100644 root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/up create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-aliases create mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-config diff --git a/Dockerfile b/Dockerfile index 443b4a2..a0488fc 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 @@ -8,63 +10,52 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" # environment settings -ENV NEXTCLOUD_PATH="/config/www/nextcloud" \ - LD_PRELOAD="/usr/lib/preloadable_libiconv.so" +ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so" RUN \ echo "**** install runtime packages ****" && \ apk add --no-cache --upgrade \ - curl \ ffmpeg \ gnu-libiconv \ imagemagick \ libxml2 \ - php8-apcu \ - php8-bcmath \ - php8-bz2 \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-exif \ - php8-fileinfo \ - php8-ftp \ - php8-gd \ - php8-gmp \ - php8-iconv \ - php8-imap \ - php8-intl \ - php8-ldap \ - php8-mbstring \ - php8-opcache \ - php8-openssl \ - php8-pcntl \ - php8-pdo_mysql \ - php8-pdo_pgsql \ - php8-pdo_sqlite \ - php8-pecl-imagick \ - php8-pecl-mcrypt \ - php8-pecl-memcached \ - php8-pgsql \ - php8-phar \ - php8-posix \ - php8-redis \ - php8-session \ - php8-simplexml \ - php8-sodium \ - php8-sqlite3 \ - php8-xml \ - php8-xmlreader \ - php8-xmlwriter \ - php8-zip \ + php81-apcu \ + php81-bcmath \ + php81-bz2 \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-exif \ + php81-ftp \ + php81-gd \ + php81-gmp \ + php81-iconv \ + php81-imap \ + php81-intl \ + php81-ldap \ + php81-opcache \ + php81-pcntl \ + php81-pdo_mysql \ + php81-pdo_pgsql \ + php81-pdo_sqlite \ + php81-pecl-imagick \ + php81-pecl-mcrypt \ + php81-pecl-memcached \ + php81-pgsql \ + php81-phar \ + php81-posix \ + php81-redis \ + php81-sodium \ + php81-sqlite3 \ + php81-xmlreader \ + php81-zip \ samba-client \ - sudo \ - tar \ - unzip && \ + sudo && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \ - php8-pecl-smbclient && \ + php81-pecl-smbclient && \ echo "**** configure php and nginx for nextcloud ****" && \ - echo 'apc.enable_cli=1' >> /etc/php8/conf.d/apcu.ini && \ + echo 'apc.enable_cli=1' >> /etc/php81/conf.d/apcu.ini && \ sed -i \ -e 's/;opcache.enable.*=.*/opcache.enable=1/g' \ -e 's/;opcache.interned_strings_buffer.*=.*/opcache.interned_strings_buffer=16/g' \ @@ -78,11 +69,11 @@ RUN \ -e 's/upload_max_filesize.*=.*2M/upload_max_filesize=1024M/g' \ -e 's/post_max_size.*=.*8M/post_max_size=1024M/g' \ -e 's/output_buffering.*=.*/output_buffering=0/g' \ - /etc/php8/php.ini && \ + /etc/php81/php.ini && \ sed -i \ '/opcache.enable=1/a opcache.enable_cli=1' \ - /etc/php8/php.ini && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + /etc/php81/php.ini && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** set version tag ****" && \ if [ -z ${NEXTCLOUD_RELEASE+x} ]; then \ NEXTCLOUD_RELEASE=$(curl -sX GET https://api.github.com/repos/nextcloud/server/releases/latest \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index e854eed..0e11818 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 @@ -8,63 +10,52 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" # environment settings -ENV NEXTCLOUD_PATH="/config/www/nextcloud" \ - LD_PRELOAD="/usr/lib/preloadable_libiconv.so" +ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so" RUN \ echo "**** install runtime packages ****" && \ apk add --no-cache --upgrade \ - curl \ ffmpeg \ gnu-libiconv \ imagemagick \ libxml2 \ - php8-apcu \ - php8-bcmath \ - php8-bz2 \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-exif \ - php8-fileinfo \ - php8-ftp \ - php8-gd \ - php8-gmp \ - php8-iconv \ - php8-imap \ - php8-intl \ - php8-ldap \ - php8-mbstring \ - php8-opcache \ - php8-openssl \ - php8-pcntl \ - php8-pdo_mysql \ - php8-pdo_pgsql \ - php8-pdo_sqlite \ - php8-pecl-imagick \ - php8-pecl-mcrypt \ - php8-pecl-memcached \ - php8-pgsql \ - php8-phar \ - php8-posix \ - php8-redis \ - php8-session \ - php8-simplexml \ - php8-sodium \ - php8-sqlite3 \ - php8-xml \ - php8-xmlreader \ - php8-xmlwriter \ - php8-zip \ + php81-apcu \ + php81-bcmath \ + php81-bz2 \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-exif \ + php81-ftp \ + php81-gd \ + php81-gmp \ + php81-iconv \ + php81-imap \ + php81-intl \ + php81-ldap \ + php81-opcache \ + php81-pcntl \ + php81-pdo_mysql \ + php81-pdo_pgsql \ + php81-pdo_sqlite \ + php81-pecl-imagick \ + php81-pecl-mcrypt \ + php81-pecl-memcached \ + php81-pgsql \ + php81-phar \ + php81-posix \ + php81-redis \ + php81-sodium \ + php81-sqlite3 \ + php81-xmlreader \ + php81-zip \ samba-client \ - sudo \ - tar \ - unzip && \ + sudo && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \ - php8-pecl-smbclient && \ + php81-pecl-smbclient && \ echo "**** configure php and nginx for nextcloud ****" && \ - echo 'apc.enable_cli=1' >> /etc/php8/conf.d/apcu.ini && \ + echo 'apc.enable_cli=1' >> /etc/php81/conf.d/apcu.ini && \ sed -i \ -e 's/;opcache.enable.*=.*/opcache.enable=1/g' \ -e 's/;opcache.interned_strings_buffer.*=.*/opcache.interned_strings_buffer=16/g' \ @@ -78,11 +69,11 @@ RUN \ -e 's/upload_max_filesize.*=.*2M/upload_max_filesize=1024M/g' \ -e 's/post_max_size.*=.*8M/post_max_size=1024M/g' \ -e 's/output_buffering.*=.*/output_buffering=0/g' \ - /etc/php8/php.ini && \ + /etc/php81/php.ini && \ sed -i \ '/opcache.enable=1/a opcache.enable_cli=1' \ - /etc/php8/php.ini && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + /etc/php81/php.ini && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** set version tag ****" && \ if [ -z ${NEXTCLOUD_RELEASE+x} ]; then \ NEXTCLOUD_RELEASE=$(curl -sX GET https://api.github.com/repos/nextcloud/server/releases/latest \ diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 243d451..053d549 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 @@ -8,63 +10,52 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" # environment settings -ENV NEXTCLOUD_PATH="/config/www/nextcloud" \ - LD_PRELOAD="/usr/lib/preloadable_libiconv.so" +ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so" RUN \ echo "**** install runtime packages ****" && \ apk add --no-cache --upgrade \ - curl \ ffmpeg \ gnu-libiconv \ imagemagick \ libxml2 \ - php8-apcu \ - php8-bcmath \ - php8-bz2 \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-exif \ - php8-fileinfo \ - php8-ftp \ - php8-gd \ - php8-gmp \ - php8-iconv \ - php8-imap \ - php8-intl \ - php8-ldap \ - php8-mbstring \ - php8-opcache \ - php8-openssl \ - php8-pcntl \ - php8-pdo_mysql \ - php8-pdo_pgsql \ - php8-pdo_sqlite \ - php8-pecl-imagick \ - php8-pecl-mcrypt \ - php8-pecl-memcached \ - php8-pgsql \ - php8-phar \ - php8-posix \ - php8-redis \ - php8-session \ - php8-simplexml \ - php8-sodium \ - php8-sqlite3 \ - php8-xml \ - php8-xmlreader \ - php8-xmlwriter \ - php8-zip \ + php81-apcu \ + php81-bcmath \ + php81-bz2 \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-exif \ + php81-ftp \ + php81-gd \ + php81-gmp \ + php81-iconv \ + php81-imap \ + php81-intl \ + php81-ldap \ + php81-opcache \ + php81-pcntl \ + php81-pdo_mysql \ + php81-pdo_pgsql \ + php81-pdo_sqlite \ + php81-pecl-imagick \ + php81-pecl-mcrypt \ + php81-pecl-memcached \ + php81-pgsql \ + php81-phar \ + php81-posix \ + php81-redis \ + php81-sodium \ + php81-sqlite3 \ + php81-xmlreader \ + php81-zip \ samba-client \ - sudo \ - tar \ - unzip && \ + sudo && \ apk add --no-cache \ --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \ - php8-pecl-smbclient && \ + php81-pecl-smbclient && \ echo "**** configure php and nginx for nextcloud ****" && \ - echo 'apc.enable_cli=1' >> /etc/php8/conf.d/apcu.ini && \ + echo 'apc.enable_cli=1' >> /etc/php81/conf.d/apcu.ini && \ sed -i \ -e 's/;opcache.enable.*=.*/opcache.enable=1/g' \ -e 's/;opcache.interned_strings_buffer.*=.*/opcache.interned_strings_buffer=16/g' \ @@ -78,11 +69,11 @@ RUN \ -e 's/upload_max_filesize.*=.*2M/upload_max_filesize=1024M/g' \ -e 's/post_max_size.*=.*8M/post_max_size=1024M/g' \ -e 's/output_buffering.*=.*/output_buffering=0/g' \ - /etc/php8/php.ini && \ + /etc/php81/php.ini && \ sed -i \ '/opcache.enable=1/a opcache.enable_cli=1' \ - /etc/php8/php.ini && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php8/php-fpm.conf && \ + /etc/php81/php.ini && \ + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** set version tag ****" && \ if [ -z ${NEXTCLOUD_RELEASE+x} ]; then \ NEXTCLOUD_RELEASE=$(curl -sX GET https://api.github.com/repos/nextcloud/server/releases/latest \ diff --git a/README.md b/README.md index 4fd0fb0..d293ef8 100644 --- a/README.md +++ b/README.md @@ -261,6 +261,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **20.01.23:** - Rebase to alpine 3.17 with php8.1. * **10.10.22:** - Rebasing to alpine 3.15 with php8. Restructure nginx configs ([see changes announcement](https://info.linuxserver.io/issues/2022-08-20-nginx-base)). * **30.09.22:** - Disabled `output_buffering` as per [nextcloud docs](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html * **21.05.22:** - Update version check endpoint. diff --git a/readme-vars.yml b/readme-vars.yml index c9d4a70..deb5fb7 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -77,6 +77,7 @@ app_setup_block: | # changelog changelogs: + - { date: "20.01.23:", desc: "Rebase to alpine 3.17 with php8.1." } - { date: "10.10.22:", desc: "Rebasing to alpine 3.15 with php8. Restructure nginx configs ([see changes announcement](https://info.linuxserver.io/issues/2022-08-20-nginx-base))." } - { date: "30.09.22:", desc: "Disabled `output_buffering` as per [nextcloud docs](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html" } - { date: "21.05.22:", desc: "Update version check endpoint." } diff --git a/root/defaults/nextcloud-perms.sh b/root/defaults/nextcloud-perms.sh deleted file mode 100644 index 0e9c103..0000000 --- a/root/defaults/nextcloud-perms.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -ocpath="${NEXTCLOUD_PATH}" -htuser='abc' -htgroup='abc' -rootuser='root' - -printf "Creating possible missing Directories\n" -mkdir -p $ocpath/data -mkdir -p $ocpath/assets -mkdir -p $ocpath/updater - -printf "chmod Files and Directories\n" -find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640 -find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750 - -printf "chown Directories\n" -chown -R ${rootuser}:${htgroup} ${ocpath}/ -chown -R ${htuser}:${htgroup} ${ocpath}/apps/ -chown -R ${htuser}:${htgroup} ${ocpath}/assets/ -chown -R ${htuser}:${htgroup} ${ocpath}/config/ -chown -R ${htuser}:${htgroup} ${ocpath}/data/ -chown -R ${htuser}:${htgroup} ${ocpath}/themes/ -chown -R ${htuser}:${htgroup} ${ocpath}/updater/ - -chmod +x ${ocpath}/occ - -printf "chmod/chown .htaccess\n" -if [ -f ${ocpath}/.htaccess ]; then - chmod 0644 ${ocpath}/.htaccess - chown ${rootuser}:${htgroup} ${ocpath}/.htaccess -fi -if [ -f ${ocpath}/data/.htaccess ]; then - chmod 0644 ${ocpath}/data/.htaccess - chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess -fi diff --git a/root/etc/cont-init.d/40-config b/root/etc/cont-init.d/40-config deleted file mode 100644 index 29d3cef..0000000 --- a/root/etc/cont-init.d/40-config +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/with-contenv bash -# shellcheck shell=bash - -# folders -mkdir -p \ - /config \ - /data - -# permissions -chown abc:abc \ - /config \ - /data -chown -R abc:abc \ - /var/lib/nginx diff --git a/root/etc/cont-init.d/60-memcache b/root/etc/cont-init.d/60-memcache deleted file mode 100644 index 67449bf..0000000 --- a/root/etc/cont-init.d/60-memcache +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/with-contenv bash -# shellcheck shell=bash - -# copy config -if [[ ! -f /config/www/nextcloud/config/config.php ]]; then - cp /defaults/config.php /config/www/nextcloud/config/config.php -fi - -# permissions -chown abc:abc \ - /config/www/nextcloud/config/config.php diff --git a/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-crontabs-config b/root/etc/s6-overlay/s6-rc.d/init-config-end/dependencies.d/init-crontabs-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/dependencies.d/init-nextcloud-aliases b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/dependencies.d/init-nextcloud-aliases new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/cont-init.d/50-install b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run old mode 100644 new mode 100755 similarity index 51% rename from root/etc/cont-init.d/50-install rename to root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run index 3785aeb..d3945d2 --- a/root/etc/cont-init.d/50-install +++ b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run @@ -3,19 +3,16 @@ # create folders mkdir -p \ - "${NEXTCLOUD_PATH}" \ /config/crontabs -# install app -if [ ! -e "${NEXTCLOUD_PATH}/index.php" ]; then - tar xf /app/nextcloud.tar.bz2 -C \ - "${NEXTCLOUD_PATH}" --strip-components=1 - chown abc:abc -R \ - "${NEXTCLOUD_PATH}" - chmod +x "${NEXTCLOUD_PATH}/occ" +# if root crontabs do not exist in config +# copy root crontab from system +if [[ ! -f /config/crontabs/root ]] && crontab -l -u root; then + crontab -l -u root >/config/crontabs/root fi -# copy crontab if needed +# if root crontabs still do not exist in config (were not copied from system) +# copy root crontab from included defaults if [[ ! -f /config/crontabs/root ]]; then cp /etc/crontabs/root /config/crontabs/ fi @@ -23,6 +20,4 @@ fi sed -i "s|s6-setuidgid abc php[78] -f /config/www/nextcloud/cron.php|s6-setuidgid abc php -f /config/www/nextcloud/cron.php|" /config/crontabs/root # import user crontabs -rm /etc/crontabs/* -cp /config/crontabs/* /etc/crontabs/ - +crontab -u root /config/crontabs/root diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type @@ -0,0 +1 @@ +oneshot diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up new file mode 100644 index 0000000..006d814 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-crontabs-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/dependencies.d/init-nextcloud-config b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/dependencies.d/init-nextcloud-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/cont-init.d/70-aliases b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/run old mode 100644 new mode 100755 similarity index 100% rename from root/etc/cont-init.d/70-aliases rename to root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/type b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/type @@ -0,0 +1 @@ +oneshot diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/up b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/up new file mode 100644 index 0000000..90cc145 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-aliases/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/dependencies.d/init-nginx-end b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/dependencies.d/init-nginx-end new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run new file mode 100755 index 0000000..10050ea --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run @@ -0,0 +1,29 @@ +#!/usr/bin/with-contenv bash +# shellcheck shell=bash + +# create folders +mkdir -p \ + /config/www/nextcloud \ + /data + +# install app +if [ ! -e /config/www/nextcloud/index.php ]; then + tar xf /app/nextcloud.tar.bz2 -C \ + /config/www/nextcloud --strip-components=1 + lsiown abc:abc -R \ + /config/www/nextcloud + chmod +x /config/www/nextcloud/occ +fi + +# copy config +if [[ ! -f /config/www/nextcloud/config/config.php ]]; then + cp /defaults/config.php /config/www/nextcloud/config/config.php +fi + +# permissions +lsiown abc:abc \ + /config \ + /config/www/nextcloud/config/config.php \ + /data +lsiown -R abc:abc \ + /var/lib/nginx diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/type b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/type @@ -0,0 +1 @@ +oneshot diff --git a/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/up b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/up new file mode 100644 index 0000000..90cc145 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-nextcloud-config/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-nextcloud-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-aliases b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-aliases new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-nextcloud-config new file mode 100644 index 0000000..e69de29