Skip to content

Commit 0f68cb4

Browse files
committed
add zend ubuntu docker file
1 parent 80ea59a commit 0f68cb4

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

.github/workflows/docker.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ jobs:
3434
- debian/debian11
3535
- ubuntu/ubuntu20
3636
- ubuntu/ubuntu24
37+
- ubuntu/ubuntu24-zend
3738
- litespeed/litespeed
3839
- litespeed/openlitespeed
3940
- mint21
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
FROM ubuntu:24.04
2+
3+
ARG DEBIAN_FRONTEND=noninteractive
4+
5+
RUN apt-get update
6+
7+
RUN apt-get install -y \
8+
curl gpg
9+
10+
RUN curl -s https://repos.zend.com/zend-2025.key | gpg --dearmor > /usr/share/keyrings/zend.gpg \
11+
&& echo "deb [signed-by=/usr/share/keyrings/zend.gpg] https://repos.zend.com/zendphp/deb_ubuntu2404/ zendphp non-free" > /etc/apt/sources.list.d/zendphp.list \
12+
&& apt-get update
13+
14+
RUN apt-get install -y \
15+
php8.3-zend \
16+
php8.3-zend-dev
17+
18+
RUN apt-get install -y \
19+
php8.3-zend-xml
20+
21+
# Install Relay dependencies
22+
RUN pecl install \
23+
msgpack \
24+
igbinary
25+
26+
# Fix weird Zend paths for extensions
27+
RUN cp /usr/lib/php/8.3-zend/msgpack.so /usr/lib/php/20230831/ \
28+
&& cp /usr/lib/php/8.3-zend/igbinary.so /usr/lib/php/20230831/ \
29+
&& echo "extension=msgpack.so" > /etc/php/8.3/cli/conf.d/30-msgpack.ini \
30+
&& echo "extension=igbinary.so" > /etc/php/8.3/cli/conf.d/30-igbinary.ini
31+
32+
ARG RELAY=v0.12.1
33+
34+
# Download Relay
35+
RUN ARCH=$(uname -m | sed 's/_/-/') \
36+
PHP=$(php -r 'echo substr(PHP_VERSION, 0, 3);') \
37+
&& curl -L "https://builds.r2.relay.so/$RELAY/relay-$RELAY-php$PHP-debian-$ARCH+libssl3.tar.gz" | tar xz --strip-components=1 -C /tmp
38+
39+
# Inject UUID
40+
RUN sed -i "s/00000000-0000-0000-0000-000000000000/$(cat /proc/sys/kernel/random/uuid)/" /tmp/relay-pkg.so
41+
42+
# Copy relay.{so,ini}
43+
RUN cp "/tmp/relay.ini" /etc/php/8.3/cli/conf.d/40-relay.ini \
44+
&& cp "/tmp/relay-pkg.so" /usr/lib/php/20230831/relay.so

0 commit comments

Comments
 (0)