#具体操作参考上一篇#
这里只列出相关文件内容,以供参考,有不对之处请指正。
Dockerfile, 这个文件没有改变。
# 使用官方的Ubuntu 24.04镜像作为基础镜像
FROM ubuntu:24.04
# 设置环境变量以避免交互式配置工具
ENV DEBIAN_FRONTEND=noninteractive
# 设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone
# 更新包列表并安装必要的软件包
RUN apt-get update && \
apt-get install -y software-properties-common ca-certificates nginx supervisor && \
add-apt-repository ppa:ondrej/php && \
apt-get update && \
apt-get install -y \
php7.4 \
php7.4-cli \
php7.4-fpm \
php7.4-dev \
php7.4-bcmath \
php7.4-soap \
php7.4-intl \
php7.4-readline \
php7.4-ldap \
php7.4-msgpack \
php7.4-igbinary \
php7.4-mysql \
php7.4-pgsql \
php7.4-gd \
php7.4-imagick \
php7.4-curl \
php7.4-mbstring \
php7.4-xml \
php7.4-zip \
php7.4-redis \
php7.4-memcached \
php7.4-amqp \
git \
unzip \
curl \
&& pecl install swoole-4.8.13 \
&& echo "extension=swoole.so" > /etc/php/7.4/mods-available/swoole.ini \
&& phpenmod swoole \
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
&& apt-get -y autoremove \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
COPY swoole_loader74.so /usr/lib/php/20190902
RUN echo "extension=swoole_loader74.so" > /etc/php/7.4/mods-available/swoole_loader.ini \
&& phpenmod swoole_loader
# 确保目录存在
RUN mkdir -p /run/php \
&& chown -R www-data:www-dat