
khamazaspyan/nginx-php-fpmNginx PHP FPM镜像是一个预配置的Docker镜像,集成了Nginx Web服务器与PHP-FPM(FastCGI Process Manager)解释器。该镜像旨在简化PHP应用部署流程,解决传统环境中Nginx与PHP-FPM配置复杂的问题,提供开箱即用的Web服务与PHP执行环境,适用于快速搭建PHP应用运行环境。
通过以下命令快速启动容器,将本地PHP应用目录挂载到容器中:
bashdocker run -d \ --name nginx-php-fpm \ -p 80:80 \ -v /path/to/your/php/app:/var/www/html \ nginx-php-fpm:latest
参数说明:
-p 80:80:映射容器80端口到主机,提供Web服务访问-v /path/to/your/php/app:/var/www/html:挂载本地PHP应用代码到容器Nginx默认网站根目录创建docker-compose.yml文件实现多容器联动(如搭配数据库):
yamlversion: '3.8' services: web: image: nginx-php-fpm:latest ports: - "80:80" volumes: - ./php-app:/var/www/html - ./nginx-conf:/etc/nginx/conf.d # 挂载自定义Nginx配置 - ./php-ini:/usr/local/etc/php # 挂载自定义PHP配置 environment: - PHP_MEMORY_LIMIT=256M # 自定义PHP内存限制 - NGINX_MAX_BODY_SIZE=20M # 自定义Nginx最大请求体大小 depends_on: - db db: image: mysql:8.0 environment: - MYSQL_ROOT_PASSWORD=your_password - MYSQL_DATABASE=php_app_db
支持通过环境变量调整基础配置,常用变量如下:
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
PHP_MEMORY_LIMIT | PHP脚本内存限制 | 128M |
PHP_MAX_EXECUTION_TIME | PHP最大执行时间(秒) | 30 |
NGINX_MAX_BODY_SIZE | Nginx允许的最大请求体大小 | 1M |
NGINX_INDEX | Nginx默认索引文件列表 | index.php index.html |
如需高级配置,可通过挂载文件覆盖默认配置:
/etc/nginx/conf.d,容器会自动加载该目录下的.conf文件php.ini文件至/usr/local/etc/php/php.ini/usr/local/etc/php-fpm.d,自定义进程池配置示例(挂载自定义配置):
bashdocker run -d \ --name nginx-php-fpm \ -p 80:80 \ -v ./php-app:/var/www/html \ -v ./nginx-conf:/etc/nginx/conf.d \ # 自定义Nginx虚拟主机配置 -v ./php.ini:/usr/local/etc/php/php.ini \ # 自定义PHP配置 nginx-php-fpm:latest
nginx-php-fpm:8.2),避免因版本更新导致兼容性问题-u $(id -u):$(id -g)参数指定容器运行用户IDphp-fpm.d/[***]配置)及Nginx工作进程数



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务