This commit is contained in:
2025-10-29 15:32:26 +08:00
parent d90614805b
commit b7462657cd
78921 changed files with 2753938 additions and 71 deletions

View File

@@ -1,65 +1,76 @@
# 使用官方PHP镜像
FROM php:7.4.33-fpm
# 拷贝本地的 sources.list 文件以加速 apt-get
COPY ./sources.list /etc/apt/sources.list
# 安装系统依赖
RUN apt-get update && apt-get install -y \
git \
vim \
curl \
libpng-dev \
libonig-dev \
libxml2-dev \
libssl-dev \
zip \
unzip \
libzip-dev \
default-mysql-client \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
&& rm -rf /var/lib/apt/lists/*
# 安装 PHP 扩展
RUN docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install \
pdo_mysql \
mbstring \
exif \
pcntl \
bcmath \
gd \
zip \
sockets
# 安装 Redis 扩展
RUN pecl install redis-5.3.7 && docker-php-ext-enable redis
# 安装Composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
# 验证安装
RUN composer --version
# 设置工作目录
WORKDIR /var/www/html
# # 使用Composer安装项目依赖可选根据需要启用, 更多的时候,会出错,要在容器中执行操作)
# RUN composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# RUN composer install --no-dev --optimize-autoloader --working-dir=/var/www/html
# # 创建非 root 用户
# RUN useradd -m -u 1000 phpuser && chown -R phpuser:phpuser /var/www/html
# 设置权限, 防止 runtime 目录无法写入的问题
# RUN chmod -R 755 /var/www/html
RUN chmod -R 777 /var/www/html/runtime
# USER phpuser
# 暴露端口
EXPOSE 9000
# 使用官方PHP镜像
FROM php:7.4.33-fpm
# 设置工作目录
WORKDIR /var/www/html
# 拷贝本地的 sources.list 文件以加速 apt-get
COPY ./sources.list /etc/apt/sources.list
# 安装系统依赖
RUN apt-get update && apt-get install -y \
git \
curl \
vim \
libpng-dev \
libonig-dev \
libxml2-dev \
libssl-dev \
zip \
unzip \
libzip-dev \
default-mysql-client \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
&& rm -rf /var/lib/apt/lists/*
# 安装 PHP 扩展
RUN docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install \
pdo_mysql \
mysqli \
mbstring \
exif \
pcntl \
bcmath \
gd \
zip \
sockets
# 安装 Redis 扩展
RUN pecl install redis-5.3.7 && docker-php-ext-enable redis
# 安装 Xdebug兼容 PHP 7.4 的版本)
RUN pecl install xdebug-3.1.6 && docker-php-ext-enable xdebug
# 安装Composer
COPY --from=composer:2.2.25 /usr/bin/composer /usr/bin/composer
# 验证安装
RUN composer --version
# 修改 PHP 配置
RUN echo "memory_limit=256M" > /usr/local/etc/php/conf.d/memory-limit.ini \
&& echo "upload_max_filesize=50M" >> /usr/local/etc/php/conf.d/uploads.ini \
&& echo "post_max_size=50M" >> /usr/local/etc/php/conf.d/uploads.ini
# 创建 Xdebug 配置
RUN echo "zend_extension=xdebug.so" > /usr/local/etc/php/conf.d/xdebug.ini
# # 使用Composer安装项目依赖可选根据需要启用, 更多的时候,会出错,要在容器中执行操作)
# RUN composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# RUN composer install --no-dev --optimize-autoloader --working-dir=/var/www/html
# # 创建非 root 用户
# RUN useradd -m -u 1000 phpuser && chown -R phpuser:phpuser /var/www/html
# 设置权限, 防止 runtime 目录无法写入的问题
# RUN chmod -R 755 /var/www/html
# USER phpuser
# 暴露端口
EXPOSE 9000 9003
CMD ["php-fpm"]

View File

@@ -1,7 +1,23 @@
[xdebug]
xdebug.mode=develop,debug
xdebug.start_with_request=yes
xdebug.client_host=host.docker.internal
xdebug.client_port=9003
xdebug.idekey=PHPSTORM
xdebug.log=/var/log/xdebug.log
; Xdebug 配置
zend_extension=xdebug.so
; 基本配置
xdebug.mode=debug,develop
xdebug.start_with_request=yes
xdebug.discover_client_host=false
; 远程调试配置
xdebug.client_host=host.docker.internal
xdebug.client_port=9003
xdebug.idekey=VSCODE
; 日志配置(调试时开启)
xdebug.log=/tmp/xdebug.log
xdebug.log_level=7
; 性能分析(可选)
; xdebug.mode=profile
; xdebug.output_dir=/tmp/profiler
; 路径映射(在 VSCode 中配置更灵活)
xdebug.remote_connect_back=0