Merge pull request #49 from linuxserver/php8

Rebase to Alpine 3.14 and PHP 8
This commit is contained in:
Roxedus 2021-08-22 01:42:14 +02:00 committed by GitHub
commit 328cdaefe2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 53 additions and 48 deletions

View File

@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.13
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.14-php8
# set version label
ARG BUILD_DATE
@ -7,26 +7,29 @@ ARG GROCY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="alex-phillips, homerr"
##FIXME: Once PHP8 is integrated, remove the sed statements for composer!
RUN \
echo "**** install build packages ****" && \
apk add --no-cache --virtual=build-dependencies \
git \
composer \
yarn && \
echo "**** install runtime packages ****" && \
apk add --no-cache \
curl \
php7 \
php7-ctype \
php7-intl \
php7-ldap \
php7-gd \
php7-json \
php7-pdo \
php7-pdo_sqlite \
php7-tokenizer \
php7-zlib && \
php8-ctype \
php8-curl \
php8-gd \
php8-iconv \
php8-intl \
php8-json \
php8-ldap \
php8-pdo \
php8-pdo_sqlite \
php8-phar \
php8-tokenizer \
php8-zip && \
echo "**** install composer ****" && \
php8 -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php8 composer-setup.php --install-dir=/tmp --filename=composer && \
echo "**** install grocy ****" && \
mkdir -p /app/grocy && \
if [ -z ${GROCY_RELEASE+x} ]; then \
@ -42,9 +45,7 @@ RUN \
cp -R /app/grocy/data/plugins \
/defaults/plugins && \
echo "**** install composer packages ****" && \
sed -i 's/[[:blank:]]*"php": ">=8.0",/"php": ">=7.4",/g' /app/grocy/composer.json && \
sed -i 's/[[:blank:]]*"php": ">=8.0"/"php": ">=7.4"/g' /app/grocy/composer.lock && \
composer install -d /app/grocy --no-dev && \
php8 /tmp/composer install -d /app/grocy --no-dev && \
echo "**** install yarn packages ****" && \
cd /app/grocy && \
yarn --production && \

View File

@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.13
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.14-php8
# set version label
ARG BUILD_DATE
@ -7,26 +7,29 @@ ARG GROCY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="alex-phillips, homerr"
##FIXME: Once PHP8 is integrated, remove the sed statements for composer!
RUN \
echo "**** install build packages ****" && \
apk add --no-cache --virtual=build-dependencies \
git \
composer \
yarn && \
echo "**** install runtime packages ****" && \
apk add --no-cache \
curl \
php7 \
php7-ctype \
php7-intl \
php7-ldap \
php7-gd \
php7-json \
php7-pdo \
php7-pdo_sqlite \
php7-tokenizer \
php7-zlib && \
php8-ctype \
php8-curl \
php8-gd \
php8-iconv \
php8-intl \
php8-json \
php8-ldap \
php8-pdo \
php8-pdo_sqlite \
php8-phar \
php8-tokenizer \
php8-zip && \
echo "**** install composer ****" && \
php8 -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php8 composer-setup.php --install-dir=/tmp --filename=composer && \
echo "**** install grocy ****" && \
mkdir -p /app/grocy && \
if [ -z ${GROCY_RELEASE+x} ]; then \
@ -42,9 +45,7 @@ RUN \
cp -R /app/grocy/data/plugins \
/defaults/plugins && \
echo "**** install composer packages ****" && \
sed -i 's/[[:blank:]]*"php": ">=8.0",/"php": ">=7.4",/g' /app/grocy/composer.json && \
sed -i 's/[[:blank:]]*"php": ">=8.0"/"php": ">=7.4"/g' /app/grocy/composer.lock && \
composer install -d /app/grocy --no-dev && \
php8 /tmp/composer install -d /app/grocy --no-dev && \
echo "**** install yarn packages ****" && \
cd /app/grocy && \
yarn --production && \

View File

@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm32v7-3.13
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm32v7-3.14-php8
# set version label
ARG BUILD_DATE
@ -7,26 +7,29 @@ ARG GROCY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="alex-phillips, homerr"
##FIXME: Once PHP8 is integrated, remove the sed statements for composer!
RUN \
echo "**** install build packages ****" && \
apk add --no-cache --virtual=build-dependencies \
git \
composer \
yarn && \
echo "**** install runtime packages ****" && \
apk add --no-cache \
curl \
php7 \
php7-ctype \
php7-intl \
php7-ldap \
php7-gd \
php7-json \
php7-pdo \
php7-pdo_sqlite \
php7-tokenizer \
php7-zlib && \
php8-ctype \
php8-curl \
php8-gd \
php8-iconv \
php8-intl \
php8-json \
php8-ldap \
php8-pdo \
php8-pdo_sqlite \
php8-phar \
php8-tokenizer \
php8-zip && \
echo "**** install composer ****" && \
php8 -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php8 composer-setup.php --install-dir=/tmp --filename=composer && \
echo "**** install grocy ****" && \
mkdir -p /app/grocy && \
if [ -z ${GROCY_RELEASE+x} ]; then \
@ -42,9 +45,7 @@ RUN \
cp -R /app/grocy/data/plugins \
/defaults/plugins && \
echo "**** install composer packages ****" && \
sed -i 's/[[:blank:]]*"php": ">=8.0",/"php": ">=7.4",/g' /app/grocy/composer.json && \
sed -i 's/[[:blank:]]*"php": ">=8.0"/"php": ">=7.4"/g' /app/grocy/composer.lock && \
composer install -d /app/grocy --no-dev && \
php8 /tmp/composer install -d /app/grocy --no-dev && \
echo "**** install yarn packages ****" && \
cd /app/grocy && \
yarn --production && \

View File

@ -224,6 +224,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **22.08.21:** - Rebase to Alpine 3.14 and PHP 8.
* **25.07.21:** - Add 'int','json' and 'zlib' PHP extensions.
* **10.05.21:** - Reduce image size.
* **08.04.21:** - Update docs to reflect jenkins builder changes.

View File

@ -39,6 +39,7 @@ app_setup_block: |
# changelog
changelogs:
- { date: "22.08.21:", desc: "Rebase to Alpine 3.14 and PHP 8." }
- { date: "25.07.21:", desc: "Add 'int','json' and 'zlib' PHP extensions." }
- { date: "10.05.21:", desc: "Reduce image size." }
- { date: "08.04.21:", desc: "Update docs to reflect jenkins builder changes." }