-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
32 lines (27 loc) · 1.34 KB
/
Dockerfile
File metadata and controls
32 lines (27 loc) · 1.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
FROM php:8.1-cli AS base
# Install dependencies
RUN apt-get update -y && apt-get install -y --no-install-recommends \
apt-utils curl git zip unzip libbz2-dev openssl gcc make autoconf \
libc6-dev libfreetype6-dev libjpeg62-turbo-dev libpng-dev libicu-dev \
zlib1g-dev libzip-dev pkg-config && \
apt-get clean -y && rm -rf /var/lib/apt/lists/*
# Install PHP extensions via PECL
RUN pecl install igbinary-3.2.15 && \
pecl install --configureoptions='enable-redis-igbinary="yes"' redis-6.2.0 && \
pecl install protobuf-4.27.2 grpc-1.64.1 && \
pecl install xdebug && \
rm -rf /tmp/pear
# Install PHP extensions via source (php-ext-lz4)
RUN git clone --recursive --depth=1 https://github.com/kjdev/php-ext-lz4.git /tmp/php-ext-lz4 && \
cd /tmp/php-ext-lz4 && \
phpize && ./configure && make && make install && \
rm -rf /tmp/php-ext-lz4
# Install PHP extensions via docker-php-ext-install
RUN docker-php-ext-install bcmath bz2 mysqli pdo_mysql pcntl zip && \
docker-php-ext-configure gd && docker-php-ext-install -j$(nproc) gd && \
docker-php-ext-configure intl && docker-php-ext-install intl
# Install PHP-SPX
RUN git clone --recursive --depth=1 https://github.com/NoiseByNorthwest/php-spx.git /tmp/php-spx && \
cd /tmp/php-spx && \
phpize && ./configure && make && make install && \
rm -rf /tmp/php-spx