一份Blesta的PHP 7.4 Dockerfile

还是比较喜欢服务器用Docker来部署环境的.

之前购买了blesta的账单系统,下面是我的镜像部署代码.

# 使用官方的PHP镜像作为基础镜像
FROM php:7.4-apache

# 将容器的工作目录设置为 /var/www/html
WORKDIR /var/www/html

# 安装PHP所需的扩展和依赖项
RUN apt-get update && apt-get install -y \
    libicu-dev \
    libpq-dev \
    libpng-dev \
    libjpeg-dev \
    libfreetype6-dev \
    libexif-dev \
    wget \
    libmagickwand-dev \
    curl \
    cron \
    libzip-dev \
    libgmp-dev \
    zlib1g-dev \
    libkrb5-dev \
    libc-client-dev  # 添加 libc-client-dev 以支持 IMAP 扩展

# 安装imagick扩展
RUN pecl install imagick-3.6.0 \
    && docker-php-ext-enable imagick

# 配置gd扩展,启用JPEG和FreeType支持
RUN docker-php-ext-configure gd --with-jpeg --with-freetype \
    && docker-php-ext-install -j$(nproc) gd

# 安装其它PHP扩展,包括新增的 IMAP 和 SOAP 扩展
RUN docker-php-ext-install -j$(nproc) intl pdo_pgsql mysqli gmp pdo_mysql exif zip soap

# 安装 IonCube Loaders
RUN wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -O /tmp/ioncube_loaders_lin_x86-64.tar.gz \
    && tar -zxvf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \
    && mv /tmp/ioncube/ioncube_loader_lin_7.4.so /usr/local/lib/php/extensions/no-debug-non-zts-20190902/ioncube_loader_lin_7.4.so \
    && rm /tmp/ioncube_loaders_lin_x86-64.tar.gz

# 安装并启用mailparse扩展
RUN pecl install mailparse \
    && docker-php-ext-enable mailparse

# 安装PHP IMAP扩展
RUN docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
    && docker-php-ext-install imap

# 启用Apache的rewrite模块
RUN a2enmod rewrite

# 对外暴露80端口,用于Apache服务
EXPOSE 80

# 容器启动时运行的命令
CMD service cron start && apache2-foreground
Comments | NOTHING

    空空如也!

消息盒子
# 您需要首次评论以获取消息 #
# 您需要首次评论以获取消息 #

只显示最新10条未读和已读信息