Skip to content

Commit

Permalink
More versions, plus alpine tags
Browse files Browse the repository at this point in the history
  • Loading branch information
pjeby committed Dec 29, 2023
1 parent b28ea7a commit 700f0e3
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 6 deletions.
27 changes: 25 additions & 2 deletions .github/workflows/docker-hub.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,16 @@ jobs:
include:
- { php: "7.1.33", os: "3.10" }
- { php: "7.2.34", os: "3.12" }
- { php: "7.3.29", os: "3.14" }
- { php: "7.3.33", os: "3.14" }
- { php: "7.4.22", os: "3.14" }
- { php: "7.4.33", os: "3.16" }
- { php: "8.0.19", os: "3.14" }
- { php: "8.0.30", os: "3.16" }
- { php: "8.1.16", os: "3.16" }
- { php: "8.1.27", os: "3.18" }
- { php: "8.2.3", os: "3.16" }
- { php: "8.2.14", os: "3.18" }
- { php: "8.3.1", os: "3.18" }

steps:
# Use metadata action to get `major.minor` PHP version
Expand All @@ -37,13 +42,30 @@ jobs:
flavor: 'latest=false'
tags: |
type=semver,pattern=${{ matrix.php }}-{{version}}
type=semver,pattern=${{ matrix.php }}-{{version}}-alpine${{ matrix.os }}
type=semver,pattern=${{ matrix.php }}-{{major}}.{{minor}}.x
type=semver,pattern=${{ matrix.php }}-{{major}}.{{minor}}.x-alpine${{ matrix.os }}
type=semver,pattern=${{ matrix.php }}-{{major}}.x
type=semver,pattern=${{ matrix.php }}-{{major}}.x-alpine${{ matrix.os }}
type=raw,value=${{ matrix.php }}
type=raw,value=${{ matrix.php }}-alpine${{ matrix.os }}
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{version}}
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{version}}-alpine${{ matrix.os }}
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{major}}.{{minor}}.x
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{major}}.{{minor}}.x-alpine${{ matrix.os }}
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{major}}.x
type=semver,pattern=${{ steps.phpver.outputs.version }}-{{major}}.x-alpine${{ matrix.os }}
type=raw,value=${{ steps.phpver.outputs.version }}
type=raw,value=${{ steps.phpver.outputs.version }}-alpine${{ matrix.os }}
- name: Checkout
uses: actions/checkout@v3

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to DockerHub
uses: docker/login-action@v2
Expand All @@ -53,8 +75,9 @@ jobs:

- name: Build and push
id: build
uses: docker/build-push-action@v4
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
build-args: |
Expand Down
8 changes: 4 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# -------- Copy stuff from base images
ARG PHP_VER=8.0.7
ARG OS_VER=3.12
ARG PHP_VER=8.3.14
ARG OS_VER=3.18
FROM php:$PHP_VER-fpm-alpine$OS_VER

# -------- Add packages and build/install tools

COPY --from=mlocati/php-extension-installer:1.2.50 /usr/bin/install-php-extensions /usr/bin/
COPY --from=mlocati/php-extension-installer:2.1.75 /usr/bin/install-php-extensions /usr/bin/
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so php
RUN apk --no-cache add \
--repository http://dl-3.alpinelinux.org/alpine/edge/community \
Expand Down Expand Up @@ -42,7 +42,7 @@ VOLUME /etc/letsencrypt
EXPOSE 443 80
CMD ["/usr/bin/start-container"]

COPY --from=bashitup/alpine-tools:latest \
COPY --from=ghcr.io/bashup/alpine-tools:latest \
/bin/dockerize /bin/yaml2json /bin/modd /bin/jq /bin/webhook /usr/bin/
COPY scripts/install-extras scripts/composer-global /usr/bin/

Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,7 @@ Also note that although you *can* just specify a PHP version, major releases of

### Major Versions

* 3.1.x - Added 8.3 and newer versions of 7.4-8.2, added `-alpine3.x` tags so you can distinguish by OS version (e.g. `8.0-alpine3.16` vs `8.0-alpine3.18`).
* 3.x - Alpine 3.10-3.16, Composer 2, PHP 7.1 through 8.2, dropped prestissimo from default `GLOBAL_REQUIRE`, added `--optimize-autoloader` to default `COMPOSER_OPTIONS`
* 2.x - Alpine 3.9, Composer 1, PHP 7.1 through 7.3, build extensions using [mlocati/docker-php-extension-installer](https://github.com/mlocati/docker-php-extension-installer)
* 1.4.x - Alpine 3.9, Composer 1, PHP 7.1 and 7.2, image based on Docker php-fpm-alpine, scripted extension builds
Expand All @@ -320,6 +321,15 @@ Also note that although you *can* just specify a PHP version, major releases of

| Tags | PHP | nginx | mod lua | alpine | Notes |
| ------------- | ------ | ------ | ------- | ------ | ----- |
| 8.3-3.1.x | 8.3.1 | 1.24.0 | 0.10.24 | 3.18 |These versions are also tagged with an `-alpine` version suffix|
| 8.2-3.1.x | 8.2.14 | 1.24.0 | 0.10.24 | 3.18 ||
| 8.1-3.1.x | 8.1.27 | 1.24.0 | 0.10.24 | 3.18 ||
| 8.0-3.1.x | 8.0.30 | 1.22.1 | 0.10.21 | 3.16 ||
| 7.4-3.1.x | 7.4.33 | 1.22.1 | 0.10.21 | 3.16 ||
| 7.3-3.1.x | 7.3.33 | 1.20.1 | 0.10.19 | 3.14 ||
| 7.2-3.1.x | 7.2.34 | 1.18.0 | 0.10.15 | 3.12 ||
| 7.1-3.1.x | 7.1.33 | 1.16.1 | 0.10.15 | 3.10 ||
| | | | | |   |
| 8.2-3.0.x | 8.2.3 | 1.22.1 | 0.10.21 | 3.16 |Composer 2|
| 8.1-3.0.x | 8.1.16 | 1.22.1 | 0.10.21 | 3.16 ||
| 8.0-3.0.x | 8.0.19 | 1.20.1 | 0.10.19 | 3.14 ||
Expand Down

0 comments on commit 700f0e3

Please sign in to comment.