Skip to content

Commit

Permalink
Add PHP 8.3
Browse files Browse the repository at this point in the history
  • Loading branch information
eXistenZNL committed Dec 25, 2023
1 parent 5c5e013 commit 2ce64d9
Show file tree
Hide file tree
Showing 7 changed files with 93 additions and 3 deletions.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
89 changes: 89 additions & 0 deletions 8.3.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
FROM alpine:3.13 as locales

RUN apk -U --no-cache add \
alpine-sdk \
automake \
cmake \
gettext-dev \
gnu-libiconv \
libintl \
musl-dev

RUN curl https://gitlab.com/rilian-la-te/musl-locales/-/archive/master/musl-locales-master.zip --output musl-locales-master.zip \
&& unzip musl-locales-master.zip && cd musl-locales-master \
&& cmake -DLOCALE_PROFILE=OFF -D CMAKE_INSTALL_PREFIX:PATH=/usr . && make && make install

FROM alpine:3.19

LABEL maintainer="[email protected]"

ENV LANG='en_US.UTF-8' LANGUAGE='en_US.UTF-8' TERM='xterm'

# Temporary workaround for problems with php83-iconv on Alpine based PHP images
# See https://github.com/docker-library/php/issues/240 for more info
ENV LD_PRELOAD='/usr/lib/preloadable_libiconv.so php'
COPY --from=locales /usr/lib/preloadable_libiconv.so /usr/lib/preloadable_libiconv.so

# Load the built locales from this location
ENV MUSL_LOCPATH /usr/share/i18n/locales/musl
COPY --from=locales /usr/share/i18n/locales/musl /usr/share/i18n/locales/musl

RUN apk -U --no-cache add \
bash \
curl \
docker \
git \
libintl \
libjpeg-turbo \
libjpeg-turbo-dev \
libpng \
libpng-dev \
libtool \
libwebp \
libwebp-dev \
nodejs \
npm \
openssh \
php83 \
php83-ctype \
php83-curl \
php83-dom \
php83-fileinfo \
php83-ftp \
php83-gettext \
php83-gd \
php83-gmp \
php83-iconv \
php83-intl \
php83-json \
php83-ldap \
php83-mbstring \
php83-openssl \
php83-pecl-xdebug \
php83-pcntl \
php83-pdo_mysql \
php83-pdo_pgsql \
php83-pdo_sqlite \
php83-phar \
php83-posix \
php83-redis \
php83-session \
php83-simplexml \
php83-snmp \
php83-soap \
php83-sodium \
php83-tokenizer \
php83-xml \
php83-xmlreader \
php83-xmlwriter \
php83-zip \
php83-zlib \
zlib-dev \
&& ln -s /usr/bin/php83 /usr/bin/php \
&& curl --silent --show-error https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
&& npm install -g --unsafe-perm yarn \
&& sed -i 's/;zend/zend/g' /etc/php83/conf.d/50_xdebug.ini

RUN apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/ buildah podman

COPY cache-tool.sh /usr/local/bin/cache-tool
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
PROJECTNAME=existenz/builder
TAG=UNDEF
PHP_VERSION=$(shell echo "$(TAG)" | sed -e 's/-.*//')
LATEST_TAG=8.2
LATEST_TAG=8.3

.PHONY: all
all: build start test stop clean

build:
if [ "$(TAG)" = "UNDEF" ]; then echo "please provide a valid TAG" && exit 1; fi
docker build -t $(PROJECTNAME):$(TAG) -f Dockerfile-$(TAG) --pull .
docker build -t $(PROJECTNAME):$(TAG) -f $(TAG).Dockerfile --pull .
if [ "$(TAG)" = "$(LATEST_TAG)" ]; then docker tag $(PROJECTNAME):$(TAG) $(PROJECTNAME):latest; fi

start:
Expand Down
3 changes: 2 additions & 1 deletion run-tests-local.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
runtest () {
echo ""
echo "Testing tag $1"
echo " > Stopping.any running containers.. "
echo " > Stopping any running containers.. "
make stop TAG=$1 > /dev/null 2>&1
echo -n " > Building... "
make build TAG=$1 > /dev/null 2>&1
Expand All @@ -21,3 +21,4 @@ runtest "7.4"
runtest "8.0"
runtest "8.1"
runtest "8.2"
runtest "8.3"

0 comments on commit 2ce64d9

Please sign in to comment.