# 使用官方 PHP 镜像作为基础镜像 FROM php:8.2-fpm # 设置工作目录 WORKDIR /var/www/html # 安装所需的依赖 RUN apt-get update && apt-get install -y \ git \ unzip \ libpng-dev \ libonig-dev \ libxml2-dev \ zip \ && docker-php-ext-install pdo_mysql gd mbstring exif pcntl bcmath # 安装 Composer RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer # 复制 Laravel 项目文件到工作目录 COPY . . # 安装项目依赖 RUN composer install # 设置权限 RUN chown -R www-data:www-data /var/www/html \ && chmod -R 775 /var/www/html/storage /var/www/html/bootstrap/cache # 暴露容器端口 EXPOSE 并不会使容器的端口直接映射到宿主机(本地)的端口,它只是声明这个端口可以被映射或暴露出来。 EXPOSE 9000 # 启动 PHP-FPM 服务 CMD ["php-fpm"]