diff --git a/Dockerfile b/Dockerfile index d47fa1c..f8ab88a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # syntax=docker/dockerfile:1 ARG ANONADDY_VERSION=1.3.0 -ARG ALPINE_VERSION=3.18 +ARG ALPINE_VERSION=3.21 FROM crazymax/yasu:latest AS yasu FROM crazymax/alpine-s6:${ALPINE_VERSION}-2.2.0.3 @@ -18,35 +18,35 @@ RUN apk --no-cache add \ mysql-client \ nginx \ openssl \ - php82 \ - php82-cli \ - php82-ctype \ - php82-curl \ - php82-dom \ - php82-fileinfo \ - php82-fpm \ - php82-gd \ - php82-gmp \ - php82-iconv \ - php82-intl \ - php82-json \ - php82-mbstring \ - php82-opcache \ - php82-openssl \ - php82-pdo \ - php82-pdo_mysql \ - php82-pecl-imagick \ - php82-phar \ - php82-redis \ - php82-session \ - php82-simplexml \ - php82-sodium \ - php82-tokenizer \ - php82-xml \ - php82-xmlreader \ - php82-xmlwriter \ - php82-zip \ - php82-zlib \ + php83 \ + php83-cli \ + php83-ctype \ + php83-curl \ + php83-dom \ + php83-fileinfo \ + php83-fpm \ + php83-gd \ + php83-gmp \ + php83-iconv \ + php83-intl \ + php83-json \ + php83-mbstring \ + php83-opcache \ + php83-openssl \ + php83-pdo \ + php83-pdo_mysql \ + php83-pecl-imagick \ + php83-phar \ + php83-redis \ + php83-session \ + php83-simplexml \ + php83-sodium \ + php83-tokenizer \ + php83-xml \ + php83-xmlreader \ + php83-xmlwriter \ + php83-zip \ + php83-zlib \ postfix \ postfix-mysql \ rspamd \ @@ -55,7 +55,6 @@ RUN apk --no-cache add \ shadow \ tar \ tzdata \ - && ln -s /usr/bin/php82 /usr/bin/php \ && cp /etc/postfix/master.cf /etc/postfix/master.cf.orig \ && cp /etc/postfix/main.cf /etc/postfix/main.cf.orig \ && apk --no-cache add -t build-dependencies \ @@ -65,12 +64,12 @@ RUN apk --no-cache add \ gpgme-dev \ libtool \ pcre-dev \ - php82-dev \ - php82-pear \ - && pecl82 install gnupg \ - && echo "extension=gnupg.so" > /etc/php82/conf.d/60_gnupg.ini \ - && pecl82 install mailparse \ - && echo "extension=mailparse.so" > /etc/php82/conf.d/60_mailparse.ini \ + php83-dev \ + php83-pear \ + && pecl83 install gnupg \ + && echo "extension=gnupg.so" > /etc/php83/conf.d/60_gnupg.ini \ + && pecl83 install mailparse \ + && echo "extension=mailparse.so" > /etc/php83/conf.d/60_mailparse.ini \ && apk del build-dependencies \ && rm -rf /tmp/* /var/www/* @@ -97,11 +96,11 @@ RUN apk --no-cache add -t build-dependencies \ && git init . && git remote add origin "https://github.com/anonaddy/anonaddy.git" \ && git fetch --depth 1 origin "v${ANONADDY_VERSION}" && git checkout -q FETCH_HEAD \ && composer install --optimize-autoloader --no-dev --no-interaction --no-ansi --ignore-platform-req=php-64bit \ - && chown -R anonaddy. /var/www/anonaddy \ + && chown -R anonaddy:anonaddy /var/www/anonaddy \ && npm ci --ignore-scripts \ && APP_URL=https://addy-sh.test npm run production \ && npm prune --production \ - && chown -R nobody.nogroup /var/www/anonaddy \ + && chown -R nobody:nogroup /var/www/anonaddy \ && apk del build-dependencies \ && rm -rf /root/.composer \ /root/.config \ diff --git a/rootfs/etc/cont-init.d/02-fix-perms.sh b/rootfs/etc/cont-init.d/02-fix-perms.sh index 0b46570..f62286e 100755 --- a/rootfs/etc/cont-init.d/02-fix-perms.sh +++ b/rootfs/etc/cont-init.d/02-fix-perms.sh @@ -8,13 +8,13 @@ mkdir -p /data \ /data/postfix/queue \ /var/run/nginx \ /var/run/php-fpm -chown anonaddy. /data -chown -R anonaddy. \ +chown anonaddy:anonaddy /data +chown -R anonaddy:anonaddy \ /data/dkim \ /tpls \ /var/lib/nginx \ /var/log/nginx \ - /var/log/php82 \ + /var/log/php83 \ /var/run/nginx \ /var/run/php-fpm \ /var/www/anonaddy/bootstrap/cache \ diff --git a/rootfs/etc/cont-init.d/10-config.sh b/rootfs/etc/cont-init.d/10-config.sh index c5f18ef..359cd7f 100755 --- a/rootfs/etc/cont-init.d/10-config.sh +++ b/rootfs/etc/cont-init.d/10-config.sh @@ -18,22 +18,22 @@ mkdir -p /data/config if [ ! -L /var/www/anonaddy/.config ]; then ln -sf /data/config /var/www/anonaddy/.config fi -chown -h anonaddy. /var/www/anonaddy/config -chown -R anonaddy. /data/config +chown -h anonaddy:anonaddy /var/www/anonaddy/config +chown -R anonaddy:anonaddy /data/config mkdir -p /data/storage if [ ! -L /var/www/anonaddy/storage ]; then cp -Rf /var/www/anonaddy/storage /data rm -rf /var/www/anonaddy/storage ln -sf /data/storage /var/www/anonaddy/storage fi -chown -h anonaddy. /var/www/anonaddy/storage -chown -R anonaddy. /data/storage +chown -h anonaddy:anonaddy /var/www/anonaddy/storage +chown -R anonaddy:anonaddy /data/storage mkdir -p /data/.gnupg if [ ! -L /var/www/anonaddy/.gnupg ]; then ln -sf /data/.gnupg /var/www/anonaddy/.gnupg fi -chown -h anonaddy. /var/www/anonaddy/.gnupg -chown -R anonaddy. /data/.gnupg +chown -h anonaddy:anonaddy /var/www/anonaddy/.gnupg +chown -R anonaddy:anonaddy /data/.gnupg chmod 700 /data/.gnupg echo "Checking database connection..." @@ -45,7 +45,7 @@ if [ -z "$DB_PASSWORD" ]; then echo >&2 "ERROR: Either DB_PASSWORD or DB_PASSWORD_FILE must be defined" exit 1 fi -dbcmd="mysql -h ${DB_HOST} -P ${DB_PORT} -u "${DB_USERNAME}" "-p${DB_PASSWORD}"" +dbcmd="mariadb -h ${DB_HOST} -P ${DB_PORT} -u "${DB_USERNAME}" "-p${DB_PASSWORD}"" echo "Waiting ${DB_TIMEOUT}s for database to be ready..." counter=1 diff --git a/rootfs/etc/cont-init.d/11-config-php.sh b/rootfs/etc/cont-init.d/11-config-php.sh index 99dce91..8520ba8 100755 --- a/rootfs/etc/cont-init.d/11-config-php.sh +++ b/rootfs/etc/cont-init.d/11-config-php.sh @@ -5,18 +5,18 @@ set -e . $(dirname $0)/00-env echo "Init PHP extensions" -cp -Rf /tpls/etc/php82/conf.d /etc/php82 +cp -Rf /tpls/etc/php83/conf.d /etc/php83 echo "Setting PHP-FPM configuration" sed -e "s/@MEMORY_LIMIT@/$MEMORY_LIMIT/g" \ -e "s/@UPLOAD_MAX_SIZE@/$UPLOAD_MAX_SIZE/g" \ -e "s/@CLEAR_ENV@/$CLEAR_ENV/g" \ - /tpls/etc/php82/php-fpm.d/www.conf >/etc/php82/php-fpm.d/www.conf + /tpls/etc/php83/php-fpm.d/www.conf >/etc/php83/php-fpm.d/www.conf echo "Setting PHP INI configuration" -sed -i "s|memory_limit.*|memory_limit = ${MEMORY_LIMIT}|g" /etc/php82/php.ini -sed -i "s|;date\.timezone.*|date\.timezone = ${TZ}|g" /etc/php82/php.ini +sed -i "s|memory_limit.*|memory_limit = ${MEMORY_LIMIT}|g" /etc/php83/php.ini +sed -i "s|;date\.timezone.*|date\.timezone = ${TZ}|g" /etc/php83/php.ini echo "Setting OpCache configuration" sed -e "s/@OPCACHE_MEM_SIZE@/$OPCACHE_MEM_SIZE/g" \ - /tpls/etc/php82/conf.d/opcache.ini >/etc/php82/conf.d/opcache.ini + /tpls/etc/php83/conf.d/opcache.ini >/etc/php83/conf.d/opcache.ini diff --git a/rootfs/etc/cont-init.d/13-config-anonaddy.sh b/rootfs/etc/cont-init.d/13-config-anonaddy.sh index cda11c4..60c91fc 100755 --- a/rootfs/etc/cont-init.d/13-config-anonaddy.sh +++ b/rootfs/etc/cont-init.d/13-config-anonaddy.sh @@ -85,7 +85,7 @@ if [ -f "/data/.env" ]; then cat "/data/.env" >> /var/www/anonaddy/.env fi -chown anonaddy. /var/www/anonaddy/.env +chown anonaddy:anonaddy /var/www/anonaddy/.env echo "Trust all proxies" sed -i "s|^ protected \$proxies.*| protected \$proxies = '\*';|g" /var/www/anonaddy/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php diff --git a/rootfs/etc/cont-init.d/50-svc-main.sh b/rootfs/etc/cont-init.d/50-svc-main.sh index 4419775..108a887 100755 --- a/rootfs/etc/cont-init.d/50-svc-main.sh +++ b/rootfs/etc/cont-init.d/50-svc-main.sh @@ -26,6 +26,6 @@ cat > /etc/services.d/php-fpm/run <