druidfi/php本Docker镜像提供多种PHP版本支持,旨在为PHP应用程序提供一致、可移植的运行环境。支持的PHP版本包括当前活跃维护的8.2、8.1、8.0,以及已终止官方支持(EOL)的7.4和7.3版本,满足不同应用对PHP版本的兼容性需求。
提供多种PHP主版本选择,适配不同年代的PHP应用程序,便于版本迁移测试和多版本应用并行部署。
基于官方基础镜像构建,确保环境一致性,减少"在我机器上能运行"的问题,简化开发到生产的部署流程。
支持多种部署模式(如CLI、FPM、Apache模块等,具体取决于镜像标签),满足不同架构需求(如独立运行、配合Nginx反向代理等)。
通过Docker Hub或私有仓库拉取指定版本的镜像,格式如下:
bashdocker pull [镜像仓库地址]/php:[版本标签]
示例(假设使用官方命名规范):
bash# 拉取PHP 8.2版本 docker pull php:8.2 # 拉取PHP 7.4(EOL)版本 docker pull php:7.4
bash# 执行PHP脚本 docker run --rm -v $(pwd):/app php:8.2-cli php /app/script.php # 启动交互式PHP shell docker run -it --rm php:8.0-cli php -a
使用Docker Compose示例(docker-compose.yml):
yamlversion: '3' services: php-fpm: image: php:8.1-fpm volumes: - ./php-app:/var/www/html restart: always nginx: image: nginx:alpine ports: - "80:80" volumes: - ./php-app:/var/www/html - ./nginx.conf:/etc/nginx/conf.d/default.conf depends_on: - php-fpm
bash# 启动PHP Apache服务,映射80端口 docker run -d -p 8080:80 -v $(pwd)/php-app:/var/www/html --name php-apache php:8.2-apache
镜像标签通常包含PHP版本和运行模式,常见格式:
{version}: 基础版本(通常为CLI模式){version}-cli: 仅包含PHP CLI{version}-fpm: 包含PHP-FPM{version}-apache: 包含Apache Web服务器和PHP模块{version}-alpine: 基于Alpine Linux的轻量级版本bashdocker run --rm -v $(pwd)/custom-php.ini:/usr/local/etc/php/php.ini php:8.2-cli php -i | grep "Loaded Configuration File"
通过docker-php-ext-install命令在构建时安装扩展:
dockerfileFROM php:8.2-cli RUN docker-php-ext-install pdo_mysql mysqli
构建并使用自定义镜像:
bashdocker build -t my-php:8.2 . docker run --rm my-php:8.2 php -m | grep pdo_mysql
8.2.10)而非浮动标签(如8.2),确保环境一致性
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务