Skip to content

Commit

Permalink
feat: 增加 php
Browse files Browse the repository at this point in the history
  • Loading branch information
zhengkunwang223 committed Aug 16, 2024
1 parent 4f58c6e commit 517cb92
Show file tree
Hide file tree
Showing 5 changed files with 5,114 additions and 0 deletions.
51 changes: 51 additions & 0 deletions .github/workflows/php-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Build PHP Images

on:
workflow_dispatch:
inputs:
php_versions:
description: 'PHP versions (comma-separated, e.g., 7.4.33,7.3.33)'
required: true
default: '7.4.33,7.3.33,7.2.34,7.3.33,7.4.33'

jobs:
docker:
runs-on: ubuntu-latest
strategy:
matrix:
php_version: ${{ split(github.event.inputs.php_versions, ',') }}
steps:
- name: Checkout
uses: actions/checkout@v4

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

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

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}

- name: Determine PHP Major Version
id: php_major
run: |
MAJOR_VERSION=$(echo ${{ matrix.php_version }} | cut -d. -f1-2)
echo "major_version=${MAJOR_VERSION}" >> $GITHUB_OUTPUT
- name: Build and Push PHP Image
uses: docker/build-push-action@v5
with:
context: php/${{ steps.php_major.outputs.major_version }}
file: php/${{ steps.php_major.outputs.major_version }}/Dockerfile
platforms: linux/amd64,linux/arm/v7,linux/arm64/v8
push: true
build-args: |
PHP_VERSION=${{ matrix.php_version }}
tags: |
1panel/php-fpm:${{ matrix.php_version }}
cache-from: type=gha
cache-to: type=gha,mode=max
21 changes: 21 additions & 0 deletions php/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ARG PHP_VERSION
FROM php:${PHP_VERSION}-fpm

RUN apt-get update && apt-get install -y supervisor && \
mkdir -p /var/log/supervisor

ADD ./data/install-php-extensions /usr/local/bin/
RUN chmod uga+x /usr/local/bin/install-php-extensions

COPY ./data/php-fpm.ini /etc/supervisor.d/php-fpm.ini
COPY ./data/supervisord.conf /etc/supervisord.conf

RUN curl -o /usr/bin/composer https://mirrors.aliyun.com/composer/composer.phar \
&& chmod +x /usr/bin/composer
ENV COMPOSER_HOME=/tmp/composer

RUN usermod -u 1000 www-data && groupmod -g 1000 www-data

ENTRYPOINT ["supervisord", "--nodaemon", "--configuration", "/etc/supervisord.conf"]

WORKDIR /www
Loading

0 comments on commit 517cb92

Please sign in to comment.