Skip to content

Commit 0e8fb8f

Browse files
author
huanglonghui
committed
feat: add php8.2.14 swoole images
1 parent 41cd902 commit 0e8fb8f

File tree

5 files changed

+148
-16
lines changed

5 files changed

+148
-16
lines changed

.github/workflows/publish_versioned_alpine_image_php82.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,15 @@ jobs:
2121
# - php: 8.2.17
2222
# alpine: 3.19
2323
# swoole: "5.1.1"
24-
- php: 8.2.26
25-
alpine: 3.21
26-
swoole: "4.8.13"
27-
- php: 8.2.26
28-
alpine: 3.21
29-
swoole: "5.0.3"
30-
- php: 8.2.26
31-
alpine: 3.21
32-
swoole: "5.1.1"
24+
# - php: 8.2.26
25+
# alpine: 3.21
26+
# swoole: "4.8.13"
27+
# - php: 8.2.26
28+
# alpine: 3.21
29+
# swoole: "5.0.3"
30+
# - php: 8.2.26
31+
# alpine: 3.21
32+
# swoole: "5.1.1"
3333

3434
name: The Alpine Image For EasySwoole PHP-${{ matrix.php }} Swoole-${{ matrix.swoole }}
3535

.github/workflows/publish_versioned_alpine_image_php83.yml

+9-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
name: Build Versioned Alpine Images for EasySwoole PHP 8.3
22

3-
#on:
4-
# push:
5-
# branches:
6-
# - 'main'
3+
on:
4+
push:
5+
branches:
6+
- 'main'
77

88
jobs:
99
build_versioned_alpine_images:
@@ -12,8 +12,11 @@ jobs:
1212
strategy:
1313
matrix:
1414
include:
15-
- php: 8.3.4
16-
alpine: 3.19
15+
# - php: 8.3.4
16+
# alpine: 3.19
17+
# swoole: "5.1.2"
18+
- php: 8.3.14
19+
alpine: 3.21
1720
swoole: "5.1.2"
1821

1922
name: The Alpine Image For EasySwoole PHP-${{ matrix.php }} Swoole-${{ matrix.swoole }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Build image for easyswoolexuesi2021/easyswoole:php8.3.14-alpine3.21-swoole5.1.2
2+
#
3+
# @link https://www.easyswoole.com
4+
# @document https://www.easyswoole.com
5+
# @contact https://www.easyswoole.com
6+
# @license https://github.com/easy-swoole/easyswoole/blob/3.x/LICENSE
7+
8+
FROM easyswoolexuesi2021/php:8.3.14-alpine3.21-base
9+
10+
LABEL maintainer="EasySwoole Developers https://www.easyswoole.com" version="1.0" license="Apache 2.0"
11+
12+
##
13+
# ---------- env settings ----------
14+
##
15+
ENV PHP_BUILD_VERSION="83"
16+
ENV SWOOLE_VERSION="5.1.2" \
17+
COMPOSER_VERSION="2.3.10" \
18+
# install and remove building packages
19+
PHPIZE_DEPS="autoconf dpkg-dev dpkg file g++ gcc libc-dev make php${PHP_BUILD_VERSION}-dev php${PHP_BUILD_VERSION}-pear pkgconf re2c pcre-dev pcre2-dev zlib-dev libtool automake libaio-dev openssl-dev curl-dev"
20+
21+
# update
22+
RUN set -ex \
23+
&& apk update \
24+
# for swoole extension libaio linux-headers
25+
&& apk add --no-cache libstdc++ openssl git bash c-ares-dev libpq-dev \
26+
&& apk add --no-cache --virtual .build-deps $PHPIZE_DEPS \
27+
# download
28+
&& cd /tmp \
29+
&& curl -SL "https://github.com/swoole/swoole-src/archive/v${SWOOLE_VERSION}.tar.gz" -o swoole.tar.gz \
30+
&& ls -alh \
31+
# php extension:swoole
32+
&& cd /tmp \
33+
&& mkdir -p swoole \
34+
&& tar -xf swoole.tar.gz -C swoole --strip-components=1 \
35+
&& ln -s /usr/bin/phpize${PHP_BUILD_VERSION} /usr/local/bin/phpize \
36+
&& ln -s /usr/bin/php-config${PHP_BUILD_VERSION} /usr/local/bin/php-config \
37+
&& ( \
38+
cd swoole \
39+
&& phpize \
40+
&& ./configure --enable-openssl --enable-swoole-curl --enable-cares --enable-swoole-pgsql \
41+
&& make -s -j$(nproc) && make install \
42+
) \
43+
&& echo "memory_limit=1G" > /etc/php${PHP_BUILD_VERSION}/conf.d/00_default.ini \
44+
&& echo "opcache.enable_cli = 'On'" >> /etc/php${PHP_BUILD_VERSION}/conf.d/00_opcache.ini \
45+
&& echo "extension=swoole.so" > /etc/php${PHP_BUILD_VERSION}/conf.d/50_swoole.ini \
46+
# install composer
47+
&& wget -nv -O /usr/local/bin/composer https://github.com/composer/composer/releases/download/${COMPOSER_VERSION}/composer.phar \
48+
&& chmod u+x /usr/local/bin/composer \
49+
# ---------- clear works ----------
50+
&& apk del .build-deps \
51+
&& rm -rf /var/cache/apk/* /tmp/* /usr/share/man /usr/local/bin/php* \
52+
# php info
53+
&& php -v \
54+
&& php -m \
55+
&& php --ri swoole \
56+
&& php --ri Zend\ OPcache \
57+
&& composer
58+
59+
WORKDIR /var/www
60+
61+
RUN echo -e "\033[42;37m Build Completed :).\033[0m\n"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Build image for easyswoolexuesi2021/easyswoole:php8.3.14-alpine3.21-swoole5.1.2
2+
#
3+
# @link https://www.easyswoole.com
4+
# @document https://www.easyswoole.com
5+
# @contact https://www.easyswoole.com
6+
# @license https://github.com/easy-swoole/easyswoole/blob/3.x/LICENSE
7+
8+
FROM easyswoolexuesi2021/php:8.3.14-alpine3.21-base
9+
10+
LABEL maintainer="EasySwoole Developers https://www.easyswoole.com" version="1.0" license="Apache 2.0"
11+
12+
##
13+
# ---------- env settings ----------
14+
##
15+
# --build-arg SWOOLE_VERSION=5.1.2 COMPOSER_VERSION=2.3.10
16+
ARG SWOOLE_VERSION
17+
ARG COMPOSER_VERSION
18+
19+
##
20+
# ---------- env settings ----------
21+
##
22+
ENV PHP_BUILD_VERSION="83"
23+
ENV SWOOLE_VERSION=${SWOOLE_VERSION:-"5.1.2"} \
24+
COMPOSER_VERSION=${COMPOSER_VERSION:-"2.3.10"} \
25+
# install and remove building packages
26+
PHPIZE_DEPS="autoconf dpkg-dev dpkg file g++ gcc libc-dev make php${PHP_BUILD_VERSION}-dev php${PHP_BUILD_VERSION}-pear pkgconf re2c pcre-dev pcre2-dev zlib-dev libtool automake libaio-dev openssl-dev curl-dev"
27+
28+
# update
29+
RUN set -ex \
30+
&& apk update \
31+
# for swoole extension libaio linux-headers
32+
&& apk add --no-cache libstdc++ openssl git bash c-ares-dev libpq-dev \
33+
&& apk add --no-cache --virtual .build-deps $PHPIZE_DEPS \
34+
# download
35+
&& cd /tmp \
36+
&& curl -SL "https://github.com/swoole/swoole-src/archive/v${SWOOLE_VERSION}.tar.gz" -o swoole.tar.gz \
37+
&& ls -alh \
38+
# php extension:swoole
39+
&& cd /tmp \
40+
&& mkdir -p swoole \
41+
&& tar -xf swoole.tar.gz -C swoole --strip-components=1 \
42+
&& ln -s /usr/bin/phpize${PHP_BUILD_VERSION} /usr/local/bin/phpize \
43+
&& ln -s /usr/bin/php-config${PHP_BUILD_VERSION} /usr/local/bin/php-config \
44+
&& ( \
45+
cd swoole \
46+
&& phpize \
47+
&& ./configure --enable-openssl --enable-swoole-curl --enable-cares --enable-swoole-pgsql \
48+
&& make -s -j$(nproc) && make install \
49+
) \
50+
&& echo "memory_limit=1G" > /etc/php${PHP_BUILD_VERSION}/conf.d/00_default.ini \
51+
&& echo "opcache.enable_cli = 'On'" >> /etc/php${PHP_BUILD_VERSION}/conf.d/00_opcache.ini \
52+
&& echo "extension=swoole.so" > /etc/php${PHP_BUILD_VERSION}/conf.d/50_swoole.ini \
53+
# install composer
54+
&& wget -nv -O /usr/local/bin/composer https://github.com/composer/composer/releases/download/${COMPOSER_VERSION}/composer.phar \
55+
&& chmod u+x /usr/local/bin/composer \
56+
# ---------- clear works ----------
57+
&& apk del .build-deps \
58+
&& rm -rf /var/cache/apk/* /tmp/* /usr/share/man /usr/local/bin/php* \
59+
# php info
60+
&& php -v \
61+
&& php -m \
62+
&& php --ri swoole \
63+
&& php --ri Zend\ OPcache \
64+
&& composer
65+
66+
WORKDIR /var/www
67+
68+
RUN echo -e "\033[42;37m Build Completed :).\033[0m\n"

dockerfiles/php8/8.3.4/alpine/3.19/swoole/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ LABEL maintainer="EasySwoole Developers https://www.easyswoole.com" version="1.0
1212
##
1313
# ---------- env settings ----------
1414
##
15-
# --build-arg SWOOLE_VERSION=5.1.1 COMPOSER_VERSION=2.3.10
15+
# --build-arg SWOOLE_VERSION=5.1.2 COMPOSER_VERSION=2.3.10
1616
ARG SWOOLE_VERSION
1717
ARG COMPOSER_VERSION
1818

0 commit comments

Comments
 (0)