本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
该容器镜像包含PHP 7.1,作为S2I基础镜像,用于构建和运行PHP 7.1应用程序。用户可选择基于RHEL、CentOS或Fedora的构建器镜像,分别在Red Hat容器目录、Docker Hub和Fedora Registry提供。生成的镜像可使用podman或docker运行(本文档示例中podman命令可替换为docker,参数相同)。
适用于需要在容器化环境中构建、部署和运行PHP 7.1应用程序的场景,包括:
使用php:7.1镜像流标签(对应rhscl/php-71-rhel7镜像)构建测试应用:
oc new-app php:7.1~[***] --context-dir=7.1/test/test-app/
在安装S2I的系统上构建:
s2i build [***] --context-dir=7.1/test/test-app/ rhscl/php-71-rhel7 php-sample-app
curl 127.0.0.1:8080
通过.s2i/environment文件设置,对应php.ini属性:
| 变量名 | 描述 | 默认值 |
|---|---|---|
| ERROR_REPORTING | 控制PHP错误、警告和通知的处理范围 | E_ALL & ~E_NOTICE |
| DISPLAY_ERRORS | 控制PHP是否输出错误、通知和警告 | ON |
| DISPLAY_STARTUP_ERRORS | 单独处理PHP启动序列中的显示错误 | OFF |
| TRACK_ERRORS | 是否将最后错误/警告消息存储在$php_errormsg(布尔值) | OFF |
| HTML_ERRORS | 是否将错误链接到相关文档 | ON |
| INCLUDE_PATH | PHP源文件路径 | .:/opt/app-root/src:/opt/rh/rh-php71/root/usr/share/pear |
| PHP_MEMORY_LIMIT | 内存限制 | 128M |
| SESSION_NAME | 会话名称 | PHPSESSID |
| SESSION_HANDLER | 会话保存方法 | files |
| SESSION_PATH | 会话数据文件位置 | /tmp/sessions |
| SESSION_COOKIE_DOMAIN | Cookie有效的域 | (空) |
| SESSION_COOKIE_HTTPONLY | 是否为Cookie添加httpOnly标志 | 0 |
| SESSION_COOKIE_SECURE | 是否仅通过安全连接发送Cookie | Off |
| SHORT_OPEN_TAG | 是否识别标签之间的代码 | OFF |
| DOCUMENTROOT | 应用程序DocumentRoot路径(如/public) | / |
对应opcache.ini属性:
用于调整Apache性能,支持自动根据Cgroup限制优化(可手动覆盖):
TOTAL_MEMORY / 15MB自动计算,15MB为单个httpd进程平均大小)composer install添加额外参数(如--no-dev)现有PHP项目无需修改,以下文件影响构建过程:
/opt/app-root/src时,用于覆盖Apache行为,需位于源代码根目录实时获取代码更改:
podman run -e OPCACHE_REVALIDATE_FREQ=0 -p 8080:8080 php-app
podman exec -it <CONTAINER_ID> /bin/bash
进入后当前目录为源代码目录/opt/app-root/src。
通过S2I扩展配置和启动脚本,支持以下目录结构:
| 文件夹名称 | 描述 |
|---|---|
./httpd-cfg | 存放额外Apache配置文件(*.conf) |
./httpd-ssl | 存放SSL证书(certs/)和密钥(private/) |
./php-pre-start | 存放httpd启动前执行的shell脚本(*.sh) |
./php-post-assemble | 存放assemble脚本结束时执行的shell脚本(*.sh) |
./ | 应用源代码目录 |
Dockerfile及源码见GitHub仓库,包含各系统版本:CentOS(Dockerfile)、RHEL7(Dockerfile.rhel7)、RHEL8(Dockerfile.rhel8)、Fedora(Dockerfile.fedora)。
-p 8080:8080:开放容器8080端口并映射到主机相同端口。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429