本仓库通过统一构建系统支持多个Magento和PHP版本。无需修改compose文件或Dockerfile,只需使用环境变量即可轻松切换版本。
设置MAGENTO_VERSION环境变量可使用不同版本。所有服务版本均可通过环境变量自定义:
MAGENTO_VERSION - PHP容器版本(必填)MARIADB_VERSION - 数据库版本(默认:10.6)OPENSEARCH_VERSION - 搜索引擎版本(默认:2.12.0)RABBITMQ_VERSION - 消息队列版本(默认:3.12)REDIS_VERSION - 缓存/会话存储版本(默认:7.2)MAILPIT_VERSION - 邮件测试工具版本(默认:1.10)COMPOSE_PROFILES - 启用可选服务(见下文)这些均由manta自动生成的.env文件处理。修改此env文件即可轻松更改服务版本,无需新建项目。
GraphQL服务仅适用于Magento 2.4.7及以上版本,因为早期版本不支持GraphQL Inspector。
要启用GraphQL服务,将graphql添加到COMPOSE_PROFILES环境变量:
shellmanta init <目录名称>
Manta会提示选择平台和项目,并自动执行初始化流程。
shellmanta bitbucket clone-infra ~/Documents/takeflight-infra
shellmanta bitbucket clone-app --branch take-flight
shellmanta magento init # 或可选安装应用程序 manta magento init --install
docker compose无需manta cli也可使用模板。
克隆compose项目并切换标签,例如:git switch 2.4.6
将应用程序克隆到src/目录
shellgit clone git@bitbucket.org:aligent/mcloud-partner.git src
shelldocker compose up -d
shelldocker compose exec php composer install
shelldocker compose exec php bin/magento --version
待补充(TBC)
!架构图
Traefik
Traefik是应用代理,用于将所有HTTP请求路由到正确的容器。Aligent特定的Traefik服务详情见其仓库。注意:这是Aligent Ubuntu镜像的一部分,应已在您的笔记本电脑上配置。
路由基于PROJECT环境变量,暴露三个HTTP服务:
https://{PROJECT}.aligent.devhttps://rabbitmq-{PROJECT}.aligent.devhttps://mail-{PROJECT}.aligent.dev本地Traefik仪表板可通过[***]
PHP容器使用统一构建系统,支持从单个Dockerfile构建多个Magento和PHP版本。
构建参数
DOCKER_TAG(必填):版本标签,格式为X.Y.Z或X.Y.Z-SUFFIX
2.4.8、2.4.8-8.4、2.4.7-8.2、2.4.5-custom构建系统包含自动配置管理,可:
配置加载顺序
PHP按字母顺序加载配置文件。后续文件会覆盖早期文件的设置:
2.4.8.dev.ini - Magento版本特定(数字优先于字母)8.4.dev.ini - PHP版本特定dev.ini - 通用基础配置_custom.dev.ini - 自定义后缀(下划线文件在字母数字之后加载)名称含下划线的文件(如_custom.dev.ini或2.4.8_custom.dev.ini)因字母顺序加载最晚,因此具有最高优先级,可覆盖其他设置。
添加版本特定配置
在以下目录创建文件:docker/php/config/usr/local/etc/php/conf.d/或docker/php/config/usr/local/etc/php-fpm.d/
shell# Magento版本特定 docker/php/config/usr/local/etc/php/conf.d/2.4.8.dev.ini # PHP版本特定 docker/php/config/usr/local/etc/php/conf.d/8.4.dev.ini # 自定义后缀(最高优先级) docker/php/config/usr/local/etc/php/conf.d/_performance.dev.ini
load-version-config.sh脚本会基于DOCKER_TAG构建参数自动管理激活的配置。
更新docker/php/docker-bake.hcl中的magento_php_map:
hcllocals { magento_php_map = { "2.4.9" = "8.4" # 添加新版本 "2.4.8" = "8.3" # ... } }
如需要,添加版本特定配置文件
使用新标签更新Docker Hub
在Docker Hub触发重建
注意:对于Magento 2.4.7以下版本,仅构建php和debug目标。graphql目标需要Magento 2.4.7及以上版本。旧版本使用extended-legacy组。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。






探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务