如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该容器镜像包含PHP 7.1,作为https://github.com/openshift/source-to-image%E5%9F%BA%E7%A1%80%E9%95%9C%E5%83%8F%EF%BC%8C%E7%94%A8%E4%BA%8E%E6%9E%84%E5%BB%BA%E5%92%8C%E8%BF%90%E8%A1%8CPHP 7.1应用程序。用户可选择基于RHEL、CentOS或Fedora的构建器镜像,分别在Red Hat容器目录、Docker Hub和Fedora Registry提供。生成的镜像可使用https://github.com/containers/libpod%E6%88%96docker%E8%BF%90%E8%A1%8C%EF%BC%88%E6%9C%AC%E6%96%87%E6%A1%A3%E7%A4%BA%E4%BE%8B%E4%B8%AD%60podman%60%E5%91%BD%E4%BB%A4%E5%8F%AF%E6%9B%BF%E6%8D%A2%E4%B8%BA%60docker%60%EF%BC%8C%E5%8F%82%E6%95%B0%E7%9B%B8%E5%90%8C%EF%BC%89%E3%80%82
适用于需要在容器化环境中构建、部署和运行PHP 7.1应用程序的场景,包括:
在OpenShift中构建应用
使用php:7.1镜像流标签(对应rhscl/php-71-rhel7镜像)构建测试应用:
bashoc new-app php:7.1~https://github.com/sclorg/s2i-php-container.git --context-dir=7.1/test/test-app/
使用S2I工具构建应用
在安装S2I的系统上构建:
bashs2i build https://github.com/sclorg/s2i-php-container.git --context-dir=7.1/test/test-app/ rhscl/php-71-rhel7 php-sample-app
访问应用
bashcurl 127.0.0.1:8080
PHP配置相关变量
通过.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配置变量
对应opcache.ini属性:
PHP配置目录覆盖
Apache MPM Prefork设置
用于调整Apache性能,支持自动根据Cgroup限制优化(可手动覆盖):
TOTAL_MEMORY / 15MB自动计算,15MB为单个httpd进程平均大小)Composer相关设置
composer install添加额外参数(如--no-dev)现有PHP项目无需修改,以下文件影响构建过程:
/opt/app-root/src时,用于覆盖Apache行为,需位于源代码根目录实时获取代码更改:
bashpodman run -e OPCACHE_REVALIDATE_FREQ=0 -p 8080:8080 php-app
bashpodman exec -it <CONTAINER_ID> /bin/bash
进入后当前目录为源代码目录/opt/app-root/src。
通过https://github.com/openshift/source-to-image%E6%89%A9%E5%B1%95%E9%85%8D%E7%BD%AE%E5%92%8C%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC%EF%BC%8C%E6%94%AF%E6%8C%81%E4%BB%A5%E4%B8%8B%E7%9B%AE%E5%BD%95%E7%BB%93%E6%9E%84%EF%BC%9A
| 文件夹名称 | 描述 |
|---|---|
./httpd-cfg | 存放额外Apache配置文件(*.conf) |
./httpd-ssl | 存放SSL证书(certs/)和密钥(private/) |
./php-pre-start | 存放httpd启动前执行的shell脚本(*.sh) |
./php-post-assemble | 存放assemble脚本结束时执行的shell脚本(*.sh) |
./ | 应用源代码目录 |
Dockerfile及源码见https://github.com/sclorg/s2i-php-container%EF%BC%8C%E5%8C%85%E5%90%AB%E5%90%84%E7%B3%BB%E7%BB%9F%E7%89%88%E6%9C%AC%EF%BC%9ACentOS%EF%BC%88Dockerfile%EF%BC%89%E3%80%81RHEL7%EF%BC%88Dockerfile.rhel7%EF%BC%89%E3%80%81RHEL8%EF%BC%88Dockerfile.rhel8%EF%BC%89%E3%80%81Fedora%EF%BC%88Dockerfile.fedora%EF%BC%89%E3%80%82
-p 8080:8080:开放容器8080端口并映射到主机相同端口。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务