Add PHP 8.3 #15
30
php8.3/Dockerfile
Normal file
30
php8.3/Dockerfile
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
FROM debian:bookworm
|
||||||
|
|
||||||
|
# install the PHP extensions we need
|
||||||
|
# see https://friendi.ca/resources/requirements/
|
||||||
|
RUN set -ex; \
|
||||||
|
apt-get update; \
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -q -y wget gnupg2 apt-transport-https lsb-release ca-certificates mariadb-client; \
|
||||||
|
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \
|
||||||
|
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \
|
||||||
|
apt-get update; \
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -q -y php8.3-gd git curl openssl \
|
||||||
|
php8.3-cli php8.3-curl php8.3-mysql wget make \
|
||||||
|
php8.3-redis php8.3-intl php8.3-memcached php8.3-memcache \
|
||||||
|
php8.3-apcu php8.3-xdebug php8.3-xml php8.3-zip php8.3-dev php8.3-mbstring; \
|
||||||
|
|||||||
|
apt-get autoremove -y; apt-get autoclean; apt-get clean; \
|
||||||
|
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*;
|
||||||
|
|
||||||
|
RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype iconv intl
|
||||||
|
|
||||||
|
RUN set -ex; \
|
||||||
|
curl -O -L https://phar.phpunit.de/phpunit-9.phar; \
|
||||||
|
chmod +x phpunit-9.phar; \
|
||||||
|
mv phpunit-9.phar /usr/local/bin/phpunit;
|
||||||
|
RUN set -ex; \
|
||||||
|
curl -O -L https://getcomposer.org/download/1.10.15/composer.phar; \
|
||||||
|
chmod +x composer.phar; \
|
||||||
|
mv composer.phar /usr/local/bin/composer;
|
||||||
|
|
||||||
|
RUN phpdismod xdebug
|
||||||
|
ADD php.ini /etc/php/8.3/cli/conf.d/friendica.ini
|
17
php8.3/php.ini
Normal file
17
php8.3/php.ini
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
memory_limit = 768M
|
||||||
|
phar.readonly = 0 ; only for building phar files on CI - should be disabled on production environments
|
||||||
|
; Opcache
|
||||||
|
opcache.enable=1
|
||||||
|
opcache.enable_cli=1
|
||||||
|
opcache.interned_strings_buffer=8
|
||||||
|
opcache.max_accelerated_files=10000
|
||||||
|
opcache.memory_consumption=128
|
||||||
|
opcache.save_comments=1
|
||||||
|
opcache.revalidate_freq=1
|
||||||
|
apc.enabled=1
|
||||||
|
apc.enable_cli=1
|
||||||
|
error_reporting=-1
|
||||||
|
log_errors_max_len=0
|
||||||
|
zend.assertions=1
|
||||||
|
assert.exception=1
|
||||||
|
xdebug.show_exception_trace=0
|
Loading…
Reference in a new issue
Why do we install the XDebug extension only to disable it later?
Great question. 🙂
I've just copied the files from PHP 8.2 and adapted them for PHP 8.3, so this slipped through. However, from a quick look at the other Dockerfiles, this is done in every one of them from PHP 7.3 up to PHP 8.2.
If there's no reason to enable the XDebug module, we could remove it from all Dockerfiles. I'm leaving that decision to someone who knows better about the Docker setup for Friendica.
Paging @nupplaPhil for the general setup.