Skip to content

Commit 2aebf23

Browse files
committed
First RC V5
1 parent 7f75ea6 commit 2aebf23

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+442
-2290
lines changed

.github/workflows/workflow.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ name: Docker PHP Images GitHub workflow
33
on:
44
pull_request:
55
branches:
6-
- 'v4'
6+
- 'v5'
77
push:
88
branches:
9-
- 'v4'
9+
- 'v5'
1010
schedule:
1111
- cron: '42 3 * * 0'
1212

@@ -15,7 +15,7 @@ jobs:
1515
strategy:
1616
fail-fast: false
1717
matrix:
18-
php_version: ['8.4', '8.3','8.2','8.1','8.0','7.4']
18+
php_version: ['8.4', '8.3','8.2','8.1']
1919
variant: ['apache','cli','fpm']
2020
# builder: [ {arch: "amd64", os: "ubuntu-latest"}, {arch: "arm64", os: "macos-latest"}]
2121
builder: [ {arch: "amd64", os: "ubuntu-latest"}, {arch: "arm64", os: "ubuntu-latest"}]
@@ -49,7 +49,7 @@ jobs:
4949
run: |
5050
TAG_PREFIX="rc${GITHUB_RUN_ID}-" \
5151
PHP_VERSION="${{ matrix.php_version }}" \
52-
BRANCH="v4" \
52+
BRANCH="v5" \
5353
VARIANT="${{ matrix.variant }}" \
5454
PLATFORM="linux/${{ matrix.builder.arch }}" \
5555
./tests-suite/bash_unit -f tap ./tests-suite/*.sh
@@ -64,7 +64,7 @@ jobs:
6464
strategy:
6565
fail-fast: false
6666
matrix:
67-
php_version: ['8.4', '8.3','8.2','8.1','8.0','7.4']
67+
php_version: ['8.4', '8.3','8.2','8.1']
6868
variant: ['apache','cli','fpm']
6969
steps:
7070
- name: Checkout
@@ -89,7 +89,7 @@ jobs:
8989
--load \
9090
php${PHP_VERSION//.}-slim-${{ matrix.variant }}
9191
# Retrieve minor
92-
PHP_PATCH_MINOR=`docker run --rm thecodingmachine/php:rc${GITHUB_RUN_ID}-${{ matrix.php_version }}-v4-slim-${{ matrix.variant }} php -v | head -n1 | grep -P '\d+\.\d+\.\d+' -o | head -n1`
92+
PHP_PATCH_MINOR=`docker run --rm thecodingmachine/php:rc${GITHUB_RUN_ID}-${{ matrix.php_version }}-v5-slim-${{ matrix.variant }} php -v | head -n1 | grep -P '\d+\.\d+\.\d+' -o | head -n1`
9393
echo "PHP_PATCH_MINOR=${PHP_PATCH_MINOR}" >> $GITHUB_ENV
9494
- name: Display tags to build
9595
run: |

Dockerfile.apache

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
# DO NOT EDIT THIS FILE : Make yours changes in /utils/Dockerfile.*.blueprint)
33
ARG INSTALL_CRON=1
44
ARG INSTALL_COMPOSER=1
5-
ARG PHP_VERSION
6-
ARG GLOBAL_VERSION
5+
ARG PHP_VERSION="8.4"
6+
ARG GLOBAL_VERSION="v5"
77
ARG REPO="thecodingmachine/php"
88
ARG TAG_PREFIX=""
99

Dockerfile.apache.node

+7-7
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@ USER root
1616

1717
ENV BLACKFIRE_VERSION=${BLACKFIRE_VERSION}
1818

19-
RUN apt-get update && \
20-
apt-get install -y --no-install-recommends gnupg && \
19+
RUN apt update && \
20+
apt install -y --no-install-recommends gnupg && \
2121
if [[ "${NODE_VERSION}" -lt "16" ]]; then \
2222
curl -sL https://deb.nodesource.com/setup_${NODE_VERSION}.x | sudo bash -; \
2323
else \
2424
sudo mkdir -p /etc/apt/keyrings && \
2525
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
2626
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VERSION.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list; \
2727
fi && \
28-
apt-get update && \
29-
apt-get install -y --no-install-recommends nodejs && \
28+
apt update && \
29+
apt install -y --no-install-recommends nodejs && \
3030
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
3131
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
32-
apt-get update && \
33-
apt-get install -y --no-install-recommends yarn && \
32+
apt update && \
33+
apt install -y --no-install-recommends yarn && \
3434
if [[ "${NODE_VERSION}" == "10" ]]; then npm install -g npm@^6.14; fi && \
35-
apt-get clean && \
35+
apt clean && \
3636
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
3737

3838
USER docker

Dockerfile.cli

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
# DO NOT EDIT THIS FILE : Make yours changes in /utils/Dockerfile.*.blueprint)
33
ARG INSTALL_CRON=1
44
ARG INSTALL_COMPOSER=1
5-
ARG PHP_VERSION
6-
ARG GLOBAL_VERSION
5+
ARG PHP_VERSION="8.4"
6+
ARG GLOBAL_VERSION="v5"
77
ARG REPO="thecodingmachine/php"
88
ARG TAG_PREFIX=""
99

Dockerfile.cli.node

+7-7
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@ USER root
1616

1717
ENV BLACKFIRE_VERSION=${BLACKFIRE_VERSION}
1818

19-
RUN apt-get update && \
20-
apt-get install -y --no-install-recommends gnupg && \
19+
RUN apt update && \
20+
apt install -y --no-install-recommends gnupg && \
2121
if [[ "${NODE_VERSION}" -lt "16" ]]; then \
2222
curl -sL https://deb.nodesource.com/setup_${NODE_VERSION}.x | sudo bash -; \
2323
else \
2424
sudo mkdir -p /etc/apt/keyrings && \
2525
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
2626
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VERSION.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list; \
2727
fi && \
28-
apt-get update && \
29-
apt-get install -y --no-install-recommends nodejs && \
28+
apt update && \
29+
apt install -y --no-install-recommends nodejs && \
3030
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
3131
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
32-
apt-get update && \
33-
apt-get install -y --no-install-recommends yarn && \
32+
apt update && \
33+
apt install -y --no-install-recommends yarn && \
3434
if [[ "${NODE_VERSION}" == "10" ]]; then npm install -g npm@^6.14; fi && \
35-
apt-get clean && \
35+
apt clean && \
3636
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
3737

3838
USER docker

Dockerfile.fpm

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
# DO NOT EDIT THIS FILE : Make yours changes in /utils/Dockerfile.*.blueprint)
33
ARG INSTALL_CRON=1
44
ARG INSTALL_COMPOSER=1
5-
ARG PHP_VERSION
6-
ARG GLOBAL_VERSION
5+
ARG PHP_VERSION="8.4"
6+
ARG GLOBAL_VERSION="v5"
77
ARG REPO="thecodingmachine/php"
88
ARG TAG_PREFIX=""
99

Dockerfile.fpm.node

+7-7
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@ USER root
1616

1717
ENV BLACKFIRE_VERSION=${BLACKFIRE_VERSION}
1818

19-
RUN apt-get update && \
20-
apt-get install -y --no-install-recommends gnupg && \
19+
RUN apt update && \
20+
apt install -y --no-install-recommends gnupg && \
2121
if [[ "${NODE_VERSION}" -lt "16" ]]; then \
2222
curl -sL https://deb.nodesource.com/setup_${NODE_VERSION}.x | sudo bash -; \
2323
else \
2424
sudo mkdir -p /etc/apt/keyrings && \
2525
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
2626
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VERSION.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list; \
2727
fi && \
28-
apt-get update && \
29-
apt-get install -y --no-install-recommends nodejs && \
28+
apt update && \
29+
apt install -y --no-install-recommends nodejs && \
3030
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
3131
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
32-
apt-get update && \
33-
apt-get install -y --no-install-recommends yarn && \
32+
apt update && \
33+
apt install -y --no-install-recommends yarn && \
3434
if [[ "${NODE_VERSION}" == "10" ]]; then npm install -g npm@^6.14; fi && \
35-
apt-get clean && \
35+
apt clean && \
3636
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
3737

3838
USER docker

Dockerfile.slim.apache

+18-20
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#syntax=docker/dockerfile-upstream:1
22
# DO NOT EDIT THIS FILE : Make yours changes in /utils/Dockerfile.*.blueprint)
3-
FROM ubuntu:20.04
3+
FROM ubuntu:24.04
44
LABEL authors="Julien Neuhart <[email protected]>, David Négrier <[email protected]>"
55
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
66

@@ -31,13 +31,10 @@ ENV PHP_VERSION=${PHP_VERSION}
3131
# |
3232

3333
# Install php an other packages
34-
RUN apt-get update \
35-
&& apt-get install -y --no-install-recommends gnupg \
36-
&& echo "deb http://ppa.launchpad.net/ondrej/php/ubuntu focal main" > /etc/apt/sources.list.d/ondrej-php.list \
37-
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C \
38-
&& apt-get update \
39-
&& apt-get upgrade -y \
40-
&& apt-get install -y --no-install-recommends \
34+
RUN apt update \
35+
&& apt install -y software-properties-common \
36+
&& add-apt-repository ppa:ondrej/php \
37+
&& apt install -y --no-install-recommends \
4138
git \
4239
nano \
4340
sudo \
@@ -54,8 +51,8 @@ RUN apt-get update \
5451
php${PHP_VERSION}-readline \
5552
php${PHP_VERSION}-xml \
5653
php${PHP_VERSION}-zip \
57-
&& if [[ "${PHP_VERSION}" =~ ^7 ]]; then apt-get install -y --no-install-recommends php${PHP_VERSION}-json; fi \
58-
&& apt-get clean \
54+
&& if [[ "${PHP_VERSION}" =~ ^7 ]]; then apt install -y --no-install-recommends php${PHP_VERSION}-json; fi \
55+
&& apt clean \
5956
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
6057

6158
# |--------------------------------------------------------------------------
@@ -65,9 +62,10 @@ RUN apt-get update \
6562
# | Define a default user with sudo rights.
6663
# |
6764

65+
RUN userdel ubuntu && rm -rf /home/ubuntu
6866
RUN useradd -ms /bin/bash docker && adduser docker sudo
6967
# Users in the sudoers group can sudo as root without password.
70-
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
68+
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/sudo
7169

7270
# |--------------------------------------------------------------------------
7371
# | Default php.ini file
@@ -156,8 +154,8 @@ ENV APACHE_CONFDIR=/etc/apache2
156154
ENV APACHE_ENVVARS=$APACHE_CONFDIR/envvars
157155

158156
RUN set -eux; \
159-
apt-get update; \
160-
apt-get install -y --no-install-recommends apache2 libapache2-mod-php${PHP_VERSION}; \
157+
apt update; \
158+
apt install -y --no-install-recommends apache2 libapache2-mod-php${PHP_VERSION}; \
161159
rm -rf /var/lib/apt/lists/*; \
162160
\
163161
# generically convert lines like
@@ -386,22 +384,22 @@ ONBUILD RUN if [ -n "$INSTALL_CRON" ]; then \
386384
# |
387385
ONBUILD ARG NODE_VERSION
388386
ONBUILD RUN if [ -n "$NODE_VERSION" ]; then \
389-
sudo apt-get update && \
390-
sudo apt-get install -y --no-install-recommends gnupg && \
387+
sudo apt update && \
388+
sudo apt install -y --no-install-recommends gnupg && \
391389
if [[ "${NODE_VERSION}" -lt "16" ]]; then \
392390
curl -sL https://deb.nodesource.com/setup_${NODE_VERSION}.x | sudo bash -; \
393391
else \
394392
sudo mkdir -p /etc/apt/keyrings && \
395393
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
396394
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VERSION.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list; \
397395
fi && \
398-
sudo apt-get update && \
399-
sudo apt-get install -y --no-install-recommends nodejs && \
396+
sudo apt update && \
397+
sudo apt install -y --no-install-recommends nodejs && \
400398
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - && \
401399
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list && \
402-
sudo apt-get update && \
403-
sudo apt-get install -y --no-install-recommends yarn && \
400+
sudo apt update && \
401+
sudo apt install -y --no-install-recommends yarn && \
404402
if [[ "${NODE_VERSION}" == "10" ]]; then sudo npm install -g npm@^6.14; fi && \
405-
sudo apt-get clean && \
403+
sudo apt clean && \
406404
sudo rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*; \
407405
fi;

Dockerfile.slim.cli

+16-18
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#syntax=docker/dockerfile-upstream:1
22
# DO NOT EDIT THIS FILE : Make yours changes in /utils/Dockerfile.*.blueprint)
3-
FROM ubuntu:20.04
3+
FROM ubuntu:24.04
44
LABEL authors="Julien Neuhart <[email protected]>, David Négrier <[email protected]>"
55
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
66

@@ -31,13 +31,10 @@ ENV PHP_VERSION=${PHP_VERSION}
3131
# |
3232

3333
# Install php an other packages
34-
RUN apt-get update \
35-
&& apt-get install -y --no-install-recommends gnupg \
36-
&& echo "deb http://ppa.launchpad.net/ondrej/php/ubuntu focal main" > /etc/apt/sources.list.d/ondrej-php.list \
37-
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C \
38-
&& apt-get update \
39-
&& apt-get upgrade -y \
40-
&& apt-get install -y --no-install-recommends \
34+
RUN apt update \
35+
&& apt install -y software-properties-common \
36+
&& add-apt-repository ppa:ondrej/php \
37+
&& apt install -y --no-install-recommends \
4138
git \
4239
nano \
4340
sudo \
@@ -54,8 +51,8 @@ RUN apt-get update \
5451
php${PHP_VERSION}-readline \
5552
php${PHP_VERSION}-xml \
5653
php${PHP_VERSION}-zip \
57-
&& if [[ "${PHP_VERSION}" =~ ^7 ]]; then apt-get install -y --no-install-recommends php${PHP_VERSION}-json; fi \
58-
&& apt-get clean \
54+
&& if [[ "${PHP_VERSION}" =~ ^7 ]]; then apt install -y --no-install-recommends php${PHP_VERSION}-json; fi \
55+
&& apt clean \
5956
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
6057

6158
# |--------------------------------------------------------------------------
@@ -65,9 +62,10 @@ RUN apt-get update \
6562
# | Define a default user with sudo rights.
6663
# |
6764

65+
RUN userdel ubuntu && rm -rf /home/ubuntu
6866
RUN useradd -ms /bin/bash docker && adduser docker sudo
6967
# Users in the sudoers group can sudo as root without password.
70-
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
68+
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/sudo
7169

7270
# |--------------------------------------------------------------------------
7371
# | Default php.ini file
@@ -291,22 +289,22 @@ ONBUILD RUN if [ -n "$INSTALL_CRON" ]; then \
291289
# |
292290
ONBUILD ARG NODE_VERSION
293291
ONBUILD RUN if [ -n "$NODE_VERSION" ]; then \
294-
sudo apt-get update && \
295-
sudo apt-get install -y --no-install-recommends gnupg && \
292+
sudo apt update && \
293+
sudo apt install -y --no-install-recommends gnupg && \
296294
if [[ "${NODE_VERSION}" -lt "16" ]]; then \
297295
curl -sL https://deb.nodesource.com/setup_${NODE_VERSION}.x | sudo bash -; \
298296
else \
299297
sudo mkdir -p /etc/apt/keyrings && \
300298
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
301299
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VERSION.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list; \
302300
fi && \
303-
sudo apt-get update && \
304-
sudo apt-get install -y --no-install-recommends nodejs && \
301+
sudo apt update && \
302+
sudo apt install -y --no-install-recommends nodejs && \
305303
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - && \
306304
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list && \
307-
sudo apt-get update && \
308-
sudo apt-get install -y --no-install-recommends yarn && \
305+
sudo apt update && \
306+
sudo apt install -y --no-install-recommends yarn && \
309307
if [[ "${NODE_VERSION}" == "10" ]]; then sudo npm install -g npm@^6.14; fi && \
310-
sudo apt-get clean && \
308+
sudo apt clean && \
311309
sudo rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*; \
312310
fi;

0 commit comments

Comments
 (0)