Skip to content

Commit 4110267

Browse files
committed
PHP 8.4
1 parent b432d8a commit 4110267

File tree

5 files changed

+111
-1
lines changed

5 files changed

+111
-1
lines changed

.github/workflows/docker.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ jobs:
5050
- item: php81
5151
- item: php82
5252
- item: php83
53+
- item: php84
5354
# Ansitest
5455
- item: ansitest
5556

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ build-php-8.0: _docker-build-php80
2020
build-php-8.1: _docker-build-php81
2121
build-php-8.2: _docker-build-php82
2222
build-php-8.3: _docker-build-php83
23+
build-php-8.4: _docker-build-php84
2324

2425
build-node9: _docker-build-node9
2526
build-node10: _docker-build-node10

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<p align=center>
44
:green_apple: :apple: :green_apple: Continuous integration Dockerfiles based on Alpine Linux
5-
for PHP 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2
5+
for PHP 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2, 8.3, 8.4
66
and Node.js 10, 11, 12, 13, 14, 15, 16, 17, 18
77
</p>
88

@@ -24,6 +24,7 @@
2424

2525
| PHP | OS | Tag | Dockerfile |
2626
|----------|--------------|--------|----------------------------------------------------------------------------|
27+
| PHP 8.4 | Alpine v3.22 | php84 | [Dockerfile](https://github.com/dockette/ci/blob/master/php84/Dockerfile) |
2728
| PHP 8.3 | Alpine v3.19 | php83 | [Dockerfile](https://github.com/dockette/ci/blob/master/php83/Dockerfile) |
2829
| PHP 8.2 | Alpine v3.17 | php82 | [Dockerfile](https://github.com/dockette/ci/blob/master/php82/Dockerfile) |
2930
| PHP 8.1 | Alpine v3.16 | php81 | [Dockerfile](https://github.com/dockette/ci/blob/master/php81/Dockerfile) |

php84/Dockerfile

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
FROM dockette/alpine:3.20
2+
3+
LABEL maintainer="Milan Sulc <[email protected]>"
4+
5+
ADD conf/php.ini /etc/php84/conf.d/999-php.ini
6+
7+
ENV PHP_DIR=/usr/bin
8+
ENV PHP_BIN=$PHP_DIR/php
9+
ENV PHP8_BIN=$PHP_DIR/php84
10+
ENV PHPXD_BIN=$PHP_DIR/phpxd
11+
ENV COMPOSER_DIR=/usr/bin/
12+
ENV COMPOSER_BIN=$COMPOSER_DIR/composer
13+
ENV TZ=Europe/Prague
14+
ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so php"
15+
16+
RUN echo '@community http://dl-cdn.alpinelinux.org/alpine/v3.20/community/' >> /etc/apk/repositories && \
17+
# DEPENDENCIES #############################################################
18+
apk update && \
19+
apk upgrade && \
20+
apk --no-cache add \
21+
bash \
22+
git \
23+
ca-certificates \
24+
curl \
25+
openssh \
26+
tzdata \
27+
make \
28+
direnv \
29+
gnu-libiconv@community && \
30+
# PHP ######################################################################
31+
apk --no-cache add \
32+
php84@community \
33+
php84-pecl-apcu@community \
34+
php84-bcmath@community \
35+
php84-bz2@community \
36+
php84-calendar@community \
37+
php84-cgi@community \
38+
php84-ctype@community \
39+
php84-curl@community \
40+
php84-dom@community \
41+
php84-exif@community \
42+
php84-fileinfo@community \
43+
php84-gd@community \
44+
php84-gettext@community \
45+
php84-iconv@community \
46+
php84-pecl-imagick@community \
47+
php84-imap@community \
48+
php84-intl@community \
49+
php84-ldap@community \
50+
php84-mbstring@community \
51+
php84-pecl-memcache@community \
52+
php84-pecl-memcached@community \
53+
php84-mysqli@community \
54+
php84-mysqlnd@community \
55+
php84-openssl@community \
56+
php84-pcntl@community \
57+
php84-pdo_mysql@community \
58+
php84-pdo_pgsql@community \
59+
php84-pdo_sqlite@community \
60+
php84-pdo@community \
61+
php84-pgsql@community \
62+
php84-phar@community \
63+
php84-posix@community \
64+
php84-redis@community \
65+
php84-session@community \
66+
php84-simplexml@community \
67+
php84-soap@community \
68+
php84-sodium@community \
69+
php84-sqlite3@community \
70+
php84-tokenizer@community \
71+
php84-xdebug@community \
72+
php84-xml@community \
73+
php84-xmlreader@community \
74+
php84-xmlwriter@community \
75+
php84-xsl@community \
76+
php84-zip@community \
77+
php84-zlib@community && \
78+
sed -i -- 's/zend/;zend/g' /etc/php84/conf.d/50_xdebug.ini && \
79+
echo "php -dzend_extension=xdebug.so \$@" >> $PHPXD_BIN && \
80+
chmod +x $PHPXD_BIN && \
81+
ln -s $PHP8_BIN $PHP_BIN && \
82+
# COMPOSER #################################################################
83+
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer --2 && \
84+
# CLEAN UP #################################################################
85+
rm -rf /var/cache/apk/* /tmp/*
86+
87+
CMD ["php"]

php84/conf/php.ini

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
; Update memory
2+
memory_limit = 512M
3+
upload_max_filesize = 2048M
4+
post_max_size = 2048M
5+
6+
; No disabled functions
7+
disable_functions =
8+
9+
; Dates
10+
date.timezone=Europe/Prague
11+
12+
; Xdebug
13+
xdebug.mode=develop
14+
xdebug.start_with_request=trigger
15+
xdebug.idekey=PHPSTORM
16+
17+
; Errors
18+
display_errors=1
19+
display_startup_errors=1
20+
error_reporting=E_ALL

0 commit comments

Comments
 (0)