feat: docker支持

This commit is contained in:
mazxd
2025-04-05 17:40:50 +08:00
parent af8f0f9dfe
commit 077ea6f5d5
5 changed files with 151 additions and 0 deletions
+61
View File
@@ -0,0 +1,61 @@
# 使用PHP 7.2作为基础镜像
FROM php:7.2-fpm
# 使用阿里云镜像源
RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list \
&& sed -i 's/security.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
# 安装系统依赖
RUN apt-get update && apt-get install -y \
git \
curl \
libpng-dev \
libonig-dev \
libxml2-dev \
zip \
unzip
# 安装PHP扩展
RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd
# 安装Composer
COPY --from=composer:1.10 /usr/bin/composer /usr/bin/composer
# 设置工作目录
WORKDIR /var/www/html
# 创建必要的目录
RUN mkdir -p /var/www/html/app \
&& mkdir -p /var/www/html/config \
&& mkdir -p /var/www/html/public \
&& mkdir -p /var/www/html/route \
&& mkdir -p /var/www/html/vendor \
&& mkdir -p /var/www/html/runtime
# 创建Composer缓存目录并设置权限
RUN mkdir -p /var/www/.composer/cache \
&& chown -R www-data:www-data /var/www/.composer
# 复制项目文件
COPY . .
# 设置目录权限
RUN chown -R www-data:www-data /var/www/html \
&& chmod -R 755 /var/www/html \
&& chmod -R 777 /var/www/html/runtime
# 配置git安全目录
RUN git config --global --add safe.directory /var/www/html
# 切换到www-data用户并安装依赖
USER www-data
RUN composer install --no-dev --optimize-autoloader
# 切换回root用户
USER root
# 暴露端口
EXPOSE 9000
# 启动PHP-FPM
CMD ["php-fpm"]