
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
为Magento 2定制的PHP-FPM Docker镜像,基于官方php:X.X-fpm基础镜像构建,包含Magento所需的全套PHP扩展、PCOV代码覆盖率工具及https://github.com/mailhog/mhsendmail%EF%BC%88%E7%94%A8%E4%BA%8E%E9%80%9A%E8%BF%87MailHog%E6%8B%A6%E6%88%AA%E6%9C%AC%E5%9C%B0%E9%82%AE%E4%BB%B6%EF%BC%89%E3%80%82
可从以下平台获取:
gitlab-registry.collab.pl/collab/docker/magento-php-fpm| 标签 | PHP版本 | 基础镜像 |
|---|---|---|
8.3 | 8.3 | php:8.3-fpm |
8.4 | 8.4 | php:8.4-fpm |
8.5 | 8.5 | php:8.5-fpm |
所有版本通用的核心扩展:
bcmath, bz2, calendar, exif, gd, gmp, intl, mysqli, pdo_mysql, shmop, soap, sockets, sysvmsg, sysvsem, sysvshm, tidy, xsl, zip, pcntl, ftp, ldap
各版本差异:
| 扩展 | 8.3 | 8.4 | 8.5 |
|---|---|---|---|
pspell | 内置 | 通过PECL | — |
gettext | ✅ | ✅ | — |
opcache | ✅ | ✅ | — |
PECL扩展(所有版本):gnupg, mailparse, msgpack, oauth, pcov, raphf, redis, xmlrpc, yaml, libsodium
PECL扩展(仅8.4):额外包含pspell
/var/www/html目录权限9000端口,日志输出到stdout/stderr| 变量 | 默认值 | 描述 |
|---|---|---|
PHP_MEMORY_LIMIT | 2G | php.ini中的memory_limit配置 |
PHP_VALIDATE_TIMESTAMPS | 1 | opcache.validate_timestamps配置 |
DEBUG | false | 设置为true时启用入口脚本的bash -x调试 |
MAGENTO_RUN_MODE | production | 注入到PHP-FPM池的MAGE_MODE变量 |
UPLOAD_MAX_FILESIZE | 64M | 最大文件上传大小 |
SENDMAIL_PATH | /dev/null | 设置为/usr/local/bin/mhsendmail以启用MailHog |
PHPRC | ${MAGENTO_ROOT}/php.ini | 活跃php.ini的路径 |
PHP_EXTENSIONS | (见Dockerfile) | 启动时启用的扩展列表(空格分隔) |
bashdocker pull collabpl/magento-php-fpm:8.4
bashdocker pull gitlab-registry.collab.pl/collab/docker/magento-php-fpm:8.4
yamlservices: php-fpm: image: collabpl/magento-php-fpm:8.4 environment: PHP_MEMORY_LIMIT: "4G" MAGENTO_RUN_MODE: developer SENDMAIL_PATH: "/usr/local/bin/mhsendmail --smtp-addr=mailhog:1025" volumes: - ./src:/var/www/html
yamlservices: php-fpm: image: collabpl/magento-php-fpm:8.4 environment: SENDMAIL_PATH: "/usr/local/bin/mhsendmail --smtp-addr=mailhog:1025" mailhog: image: mailhog/mailhog ports: - "8025:8025"
. ├── etc/ # 所有版本共享的PHP/FPM配置 │ ├── php-fpm.conf # PHP-FPM池配置 │ ├── php-fpm.ini # PHP设置(内存、opcache) │ ├── mail.ini # sendmail_path配置 │ ├── php-pcov.ini # PCOV配置 │ └── php-gnupg.ini # gnupg扩展配置 ├── docker-entrypoint.sh # 所有版本共享的入口脚本 ├── 8.3/ │ └── Dockerfile ├── 8.4/ (结构相同) ├── 8.5/ (结构相同) ├── .github/ │ └── workflows/ # GitHub Actions — 构建并推送到Docker Hub └── .gitlab-ci.yml # GitLab CI — 通过Kaniko构建
GitHub Actions:为linux/amd64和linux/arm64架构构建镜像,每次推送到main分支或发布版本时推送到Docker Hub,需配置DOCKERHUB_USERNAME和DOCKERHUB_TOKEN仓库密钥。
GitLab CI:使用内部kaniko-build组件并行构建三个版本,并推送到GitLab容器 registry。
{version}/目录FROM php:{version}-fpm行.gitlab-ci.yml的并行矩阵中添加新标签.github/workflows/build-php-fpm-{version}.ymlMIT
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务