Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php_version: ['8.4', '8.3','8.2','8.1']
php_version: ['8.5', '8.4', '8.3','8.2','8.1']
variant: ['apache','cli','fpm']
# builder: [ {arch: "amd64", os: "ubuntu-latest"}, {arch: "arm64", os: "macos-latest"}]
builder: [ {arch: "amd64", os: "ubuntu-24.04"}, {arch: "arm64", os: "ubuntu-24.04"}]
Expand Down Expand Up @@ -65,7 +65,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php_version: ['8.4', '8.3','8.2','8.1']
php_version: ['8.5', '8.4', '8.3','8.2','8.1']
variant: ['apache','cli','fpm']
steps:
- name: Checkout
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
# Change Log
## Version 5

### Minor changes

* **2025-11-26**
* Support for PHP 8.5

### Initial

**2025-01-27**
* Upgrade the base version from Ubuntu 20.04 to 24.04
* Default blackfire version is now the version 2 (v1 is still available with BLACKFIRE_VERSION=1 at buildtime but with securities issues)
Expand Down
10 changes: 8 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ blueprint: ## Generate all blueprints file
@if ! type orbit >/dev/null 2>&1; then echo "Missing orbit dependency, please install from https://github.com/gulien/orbit/"; exit 1; fi
orbit run generate

test-latest: test-8.4 ## Test the latest build only
test-latest: test-8.5 ## Test the latest build only

_test-prerequisites: blueprint
docker pull ubuntu:20.04
Expand All @@ -18,10 +18,11 @@ test-legacy-quick: ## Test 7.4, 8.0 and 8.1 quickly
VERSION=7.4 VARIANT=cli $(MAKE) _test-version-quick
VERSION=8.0 VARIANT=cli $(MAKE) _test-version-quick
VERSION=8.1 VARIANT=cli $(MAKE) _test-version-quick
test-quick: ## Test 8.2, 8.3 and 8.4 quickly
test-quick: ## Test 8.2, 8.3, 8.4 and 8.5 quickly
VERSION=8.2 VARIANT=cli $(MAKE) _test-version-quick
VERSION=8.3 VARIANT=cli $(MAKE) _test-version-quick
VERSION=8.4 VARIANT=cli $(MAKE) _test-version-quick
VERSION=8.5 VARIANT=cli $(MAKE) _test-version-quick

test-8.3: ## Test php8.3 build only
VERSION=8.3 VARIANT=cli $(MAKE) _test-version
Expand All @@ -38,6 +39,11 @@ test-8.1: ## Test php8.1 build only
VERSION=8.1 VARIANT=apache $(MAKE) _test-version
VERSION=8.1 VARIANT=fpm $(MAKE) _test-version

test-8.5: ## Test php8.5 build only
VERSION=8.5 VARIANT=cli $(MAKE) _test-version
VERSION=8.5 VARIANT=apache $(MAKE) _test-version
VERSION=8.5 VARIANT=fpm $(MAKE) _test-version

test-8.4: ## Test php8.4 build only
VERSION=8.4 VARIANT=cli $(MAKE) _test-version
VERSION=8.4 VARIANT=apache $(MAKE) _test-version
Expand Down
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,23 @@ This repository contains a set of developer-friendly, general purpose PHP images



| Name | PHP version | type |variant | NodeJS version | Size
| Name | PHP version | type |variant | NodeJS version | Size
|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------|--------|-----------------|------
| [thecodingmachine/php:8.5-v5-apache](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache) | `8.5.x` | fat | apache | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-apache.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-apache)
| [thecodingmachine/php:8.5-v5-apache-node20](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache.node) | `8.5.x` | fat | apache | `20.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-apache-node20.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-apache-node20)
| [thecodingmachine/php:8.5-v5-apache-node22](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache.node) | `8.5.x` | fat | apache | `22.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-apache-node22.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-apache-node22)
| [thecodingmachine/php:8.5-v5-apache-node24](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache.node) | `8.5.x` | fat | apache | `24.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-apache-node24.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-apache-node24)
| [thecodingmachine/php:8.5-v5-fpm](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.fpm) | `8.5.x` | fat | fpm | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-fpm.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-fpm)
| [thecodingmachine/php:8.5-v5-fpm-node20](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.fpm.node) | `8.5.x` | fat | fpm | `20.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-fpm-node20.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-fpm-node20)
| [thecodingmachine/php:8.5-v5-fpm-node22](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.fpm.node) | `8.5.x` | fat | fpm | `22.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-fpm-node22.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-fpm-node22)
| [thecodingmachine/php:8.5-v5-fpm-node24](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.fpm.node) | `8.5.x` | fat | fpm | `24.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-fpm-node24.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-fpm-node24)
| [thecodingmachine/php:8.5-v5-cli](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.cli) | `8.5.x` | fat | cli | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-cli.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-cli)
| [thecodingmachine/php:8.5-v5-cli-node20](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.cli.node) | `8.5.x` | fat | cli | `20.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-cli-node20.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-cli-node20)
| [thecodingmachine/php:8.5-v5-cli-node22](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.cli.node) | `8.5.x` | fat | cli | `22.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-cli-node22.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-cli-node22)
| [thecodingmachine/php:8.5-v5-cli-node24](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.cli.node) | `8.5.x` | fat | cli | `24.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-cli-node24.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-cli-node24)
| [thecodingmachine/php:8.5-v5-slim-apache](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.slim.apache) | `8.5.x` | slim | apache | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-slim-apache.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-slim-apache)
| [thecodingmachine/php:8.5-v5-slim-fpm](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.slim.fpm) | `8.5.x` | slim | fpm | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-slim-fpm.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-slim-fpm)
| [thecodingmachine/php:8.5-v5-slim-cli](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.slim.cli) | `8.5.x` | slim | cli | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.5-v5-slim-cli.svg)](https://microbadger.com/images/thecodingmachine/php:8.5-v5-slim-cli)
| [thecodingmachine/php:8.4-v5-apache](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache) | `8.4.x` | fat | apache | *N/A* | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.4-v5-apache.svg)](https://microbadger.com/images/thecodingmachine/php:8.4-v5-apache)
| [thecodingmachine/php:8.4-v5-apache-node20](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache.node) | `8.4.x` | fat | apache | `20.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.4-v5-apache-node20.svg)](https://microbadger.com/images/thecodingmachine/php:8.4-v5-apache-node20)
| [thecodingmachine/php:8.4-v5-apache-node22](https://github.com/thecodingmachine/docker-images-php/blob/v5/Dockerfile.apache.node) | `8.4.x` | fat | apache | `22.x` | [![](https://images.microbadger.com/badges/image/thecodingmachine/php:8.4-v5-apache-node22.svg)](https://microbadger.com/images/thecodingmachine/php:8.4-v5-apache-node22)
Expand Down
258 changes: 257 additions & 1 deletion docker-bake.hcl
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@

group "default" {
targets = [


"php85",
"php84",
"php83",
"php82",
Expand All @@ -12,6 +13,27 @@ group "default" {
]
}

group "php85-apache-all" {
targets = [
"php85-slim-apache",
"php85-apache",
"php85-apache-node24","php85-apache-node22","php85-apache-node20",
]
}
group "php85-fpm-all" {
targets = [
"php85-slim-fpm",
"php85-fpm",
"php85-fpm-node24","php85-fpm-node22","php85-fpm-node20",
]
}
group "php85-cli-all" {
targets = [
"php85-slim-cli",
"php85-cli",
"php85-cli-node24","php85-cli-node22","php85-cli-node20",
]
}
group "php84-apache-all" {
targets = [
"php84-slim-apache",
Expand Down Expand Up @@ -140,6 +162,9 @@ group "php74-cli-all" {
}


group "php85" {
targets = ["php85-apache-all","php85-fpm-all","php85-cli-all",]
}
group "php84" {
targets = ["php84-apache-all","php84-fpm-all","php84-cli-all",]
}
Expand Down Expand Up @@ -186,6 +211,237 @@ target "default" {
}


###########################
## PHP 8.5
###########################
# thecodingmachine/php:8.5-v5-slim-apache
target "php85-slim-apache" {
inherits = ["default"]
tags = tag("8.5", "slim-apache")
dockerfile = "Dockerfile.slim.apache"
args = {
PHP_VERSION = "8.5"
VARIANT = "apache"
}
}

# thecodingmachine/php:8.5-v5-apache
target "php85-apache" {
inherits = ["default"]
tags = tag("8.5", "apache")
dockerfile = "Dockerfile.apache"
args = {
PHP_VERSION = "8.5"
VARIANT = "apache"
FROM_IMAGE = "slim"
}
contexts = {
slim = "target:php85-slim-apache"
}
}

# thecodingmachine/php:8.5-v5-apache-node24
target "php85-apache-node24" {
inherits = ["default"]
tags = tag("8.5", "apache-node24")
dockerfile = "Dockerfile.apache.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "apache-node24"
FROM_IMAGE = "fat"
NODE_VERSION = "24"
}
contexts = {
fat = "target:php85-apache"
}
}

# thecodingmachine/php:8.5-v5-apache-node22
target "php85-apache-node22" {
inherits = ["default"]
tags = tag("8.5", "apache-node22")
dockerfile = "Dockerfile.apache.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "apache-node22"
FROM_IMAGE = "fat"
NODE_VERSION = "22"
}
contexts = {
fat = "target:php85-apache"
}
}

# thecodingmachine/php:8.5-v5-apache-node20
target "php85-apache-node20" {
inherits = ["default"]
tags = tag("8.5", "apache-node20")
dockerfile = "Dockerfile.apache.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "apache-node20"
FROM_IMAGE = "fat"
NODE_VERSION = "20"
}
contexts = {
fat = "target:php85-apache"
}
}

###########################
## PHP 8.5
###########################
# thecodingmachine/php:8.5-v5-slim-fpm
target "php85-slim-fpm" {
inherits = ["default"]
tags = tag("8.5", "slim-fpm")
dockerfile = "Dockerfile.slim.fpm"
args = {
PHP_VERSION = "8.5"
VARIANT = "fpm"
}
}

# thecodingmachine/php:8.5-v5-fpm
target "php85-fpm" {
inherits = ["default"]
tags = tag("8.5", "fpm")
dockerfile = "Dockerfile.fpm"
args = {
PHP_VERSION = "8.5"
VARIANT = "fpm"
FROM_IMAGE = "slim"
}
contexts = {
slim = "target:php85-slim-fpm"
}
}

# thecodingmachine/php:8.5-v5-fpm-node24
target "php85-fpm-node24" {
inherits = ["default"]
tags = tag("8.5", "fpm-node24")
dockerfile = "Dockerfile.fpm.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "fpm-node24"
FROM_IMAGE = "fat"
NODE_VERSION = "24"
}
contexts = {
fat = "target:php85-fpm"
}
}

# thecodingmachine/php:8.5-v5-fpm-node22
target "php85-fpm-node22" {
inherits = ["default"]
tags = tag("8.5", "fpm-node22")
dockerfile = "Dockerfile.fpm.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "fpm-node22"
FROM_IMAGE = "fat"
NODE_VERSION = "22"
}
contexts = {
fat = "target:php85-fpm"
}
}

# thecodingmachine/php:8.5-v5-fpm-node20
target "php85-fpm-node20" {
inherits = ["default"]
tags = tag("8.5", "fpm-node20")
dockerfile = "Dockerfile.fpm.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "fpm-node20"
FROM_IMAGE = "fat"
NODE_VERSION = "20"
}
contexts = {
fat = "target:php85-fpm"
}
}

###########################
## PHP 8.5
###########################
# thecodingmachine/php:8.5-v5-slim-cli
target "php85-slim-cli" {
inherits = ["default"]
tags = tag("8.5", "slim-cli")
dockerfile = "Dockerfile.slim.cli"
args = {
PHP_VERSION = "8.5"
VARIANT = "cli"
}
}

# thecodingmachine/php:8.5-v5-cli
target "php85-cli" {
inherits = ["default"]
tags = tag("8.5", "cli")
dockerfile = "Dockerfile.cli"
args = {
PHP_VERSION = "8.5"
VARIANT = "cli"
FROM_IMAGE = "slim"
}
contexts = {
slim = "target:php85-slim-cli"
}
}

# thecodingmachine/php:8.5-v5-cli-node24
target "php85-cli-node24" {
inherits = ["default"]
tags = tag("8.5", "cli-node24")
dockerfile = "Dockerfile.cli.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "cli-node24"
FROM_IMAGE = "fat"
NODE_VERSION = "24"
}
contexts = {
fat = "target:php85-cli"
}
}

# thecodingmachine/php:8.5-v5-cli-node22
target "php85-cli-node22" {
inherits = ["default"]
tags = tag("8.5", "cli-node22")
dockerfile = "Dockerfile.cli.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "cli-node22"
FROM_IMAGE = "fat"
NODE_VERSION = "22"
}
contexts = {
fat = "target:php85-cli"
}
}

# thecodingmachine/php:8.5-v5-cli-node20
target "php85-cli-node20" {
inherits = ["default"]
tags = tag("8.5", "cli-node20")
dockerfile = "Dockerfile.cli.node"
args = {
PHP_VERSION = "8.5"
VARIANT = "cli-node20"
FROM_IMAGE = "fat"
NODE_VERSION = "20"
}
contexts = {
fat = "target:php85-cli"
}
}

###########################
## PHP 8.4
###########################
Expand Down
1 change: 1 addition & 0 deletions extensions/8.5/amqp
1 change: 1 addition & 0 deletions extensions/8.5/apcu
1 change: 1 addition & 0 deletions extensions/8.5/ast
1 change: 1 addition & 0 deletions extensions/8.5/bcmath
1 change: 1 addition & 0 deletions extensions/8.5/bz2
1 change: 1 addition & 0 deletions extensions/8.5/dba
1 change: 1 addition & 0 deletions extensions/8.5/disable_all.sh
Loading
Loading