
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
替代方案已发布,详见:[***]
本仓库包含Dockerfile和脚本,演示如何在Docker容器中运行IBM App Connect Enterprise及关联的IBM MQ队列管理器。
基础镜像包含IBM App Connect Enterprise for Developers Version 11.0.0.9和IBM MQ Advanced for Developers Version 9.1.4的完整安装,以及系统配置和用户创建。
镜像源码可在https://github.com/ot4i/ace-docker%E7%9A%84%E5%8F%91%E5%B8%83%E7%89%88%E6%9C%AC%E4%B8%AD%E6%89%BE%E5%88%B0%E3%80%82%E6%B3%A8%E6%84%8F%EF%BC%9A%E6%9C%80%E6%96%B0%E9%95%9C%E5%83%8F%E5%8F%AF%E8%83%BD%E4%B8%8EGitHub%EF%BC%88master%E5%88%86%E6%94%AF%EF%BC%89%E7%9A%84%E6%9C%80%E6%96%B0%E4%BB%A3%E7%A0%81%E4%B8%8D%E4%B8%80%E8%87%B4%E3%80%82
预构建的App Connect Enterprise和MQ服务器镜像提供以下标签:
11.0.0.211.0.0.311.0.0.411.0.0.5-amd6411.0.0.5.1-amd6411.0.0.6-amd6411.0.0.6.1-amd6411.0.0.7-r1-amd6411.0.0.8-r1-amd6411.0.0.9-r1-amd64, latesthttps://github.com/ot4i/ace-docker/blob/master/ubi/Dockerfile.acemq
使用镜像前需接受IBM App Connect Enterprise许可条款,通过运行镜像时指定环境变量LICENSE=accept实现。设置为view可查看许可条款。未设置该变量将导致容器终止并显示使用说明。可通过LANG环境变量指定许可显示语言。
使用默认配置运行容器,包含以下设置:
QMGR1414ACESERVER7600运行以下命令:
bashdocker run --name acemqserver -p 7600:7600 -p 7800:7800 -p 7843:7843 -p 1414:1414 --env LICENSE=accept --env MQ_QMGR_NAME=QMGR --env ACE_SERVER_NAME=ACESERVER ibmcom/ace-mq:latest
控制台显示集成服务器监听7600端口后,可通过http://localhost:7600/访问App Connect Enterprise UI。停止容器:docker stop acemqserver,容器将正常关闭,依次停止集成服务器和队列管理器。
accept表示同意IBM App Connect Enterprise许可;设置为view可查看许可。json(每行JSON对象)或basic(人类可读格式),默认basic。true启动队列管理器并让集成服务器使用它。true为集成服务器生成Prometheus指标。true使用SSL保护集成服务器。accept表示同意IBM MQ许可;设置为view可查看许可。LOG_FORMAT。true为队列管理器生成Prometheus指标。更多IBM MQ Advanced for Developers环境变量见https://github.com/ibm-messaging/mq-container/blob/master/docs/developer-config.md#environment-variables%E3%80%82
支持通过注入文件动态配置集成服务器。容器启动前会检查/home/aceuser/initial-config目录,每个子目录对应一个配置脚本ace_config_{folder-name}.sh,用于处理目录中的配置信息。
注意:镜像中集成服务器的工作目录为
/home/aceuser/ace-server。
注意:示例initial-config目录及运行时挂载命令见sample目录。
可挂载以下文件结构到/home/aceuser/initial-config(缺失目录会被跳过,空目录将导致错误):
/home/aceuser/initial-config/keystore{alias}.crt(alias为证书别名,不含空格),与私钥一同导入密钥库。{alias}.key。{alias}.pass(如私钥加密)。ACE_KEYSTORE_PASSWORD环境变量设置密钥库密码。.crt和.key,加密私钥需附加.pass。/home/aceuser/initial-config/odbciniodbc.ini文件:适用于集成服务器连接数据库的ODBC配置文件,将复制到/home/aceuser/ace-server/odbc.ini。/home/aceuser/initial-config/policy.policyxml文件和一个policy.descriptor文件:复制到/home/aceuser/ace-server/overrides/DefaultPolicies/,需在server.conf.yaml中配置使用。/home/aceuser/initial-config/serverconfserver.conf.yaml文件:包含集成服务器配置覆盖内容,复制到/home/aceuser/ace-server/overrides/server.conf.yaml。/home/aceuser/initial-config/setdbparmssetdbparms.txt文件:通过mqsisetdbparms设置参数,支持两种格式:
# 以"#"开头的行忽略 # 以mqsisetdbparms开头的行将直接执行 # 其他行格式:<resource> <userId> <password>(空格分隔) # 每行将通过以下命令处理: # mqsisetdbparms ${ACE_SERVER_NAME} -n <resource> -u <userId> -p <password> resource1 user1 password1 resource2 user2 password2 mqsisetdbparms -w /home/aceuser/ace-server -n salesforce::SecurityIdentity -u myUsername -p myPassword -c myClientID -s myClientSecret
/home/aceuser/initial-config/truststore{alias}.crt(alias为证书别名,不含空格),导入信任库。ACE_TRUSTSTORE_PASSWORD环境变量设置信任库密码。/home/aceuser/initial-config/webusersadmin-users.txt:创建admin用户(READ、WRITE、EXECUTE权限),格式:
# 以"#"开头的行忽略 # 每行格式:<user> <password>(空格分隔) # 处理命令:mqsiwebuseradmin -w /home/aceuser/ace-server -c -u <user> -a <password> -r admin admin1 password1 admin2 password2
operator-users.txt:创建operator用户(READ、EXECUTE权限),格式同上,角色为operator。editor-users.txt:创建editor用户(READ、WRITE权限),格式同上,角色为editor。audit-users.txt:创建audit用户(READ权限),格式同上,角色为audit。viewer-users.txt:创建viewer用户(READ权限),格式同上,角色为viewer。/home/aceuser/initial-config/mqscconfig.mqsc文件:包含runmqsc命令,启动时执行,详见MQ知识中心。/home/aceuser/initial-config/agentswitch.json:交换机配置,复制到iibswitch目录。agentx.json、agentc.json、agentp.json:代理连接配置,复制到iibswitch目录。/home/aceuser/initial-config/extensionsextensions.zip:解压到/home/aceuser/ace-server/extensions,可在server.conf.yaml中引用。/home/aceuser/initial-config/sslca.crt、tls.key、tls.cert:复制到/home/aceuser/ace-server/ssl。容器内集成服务器和MQ队列管理器日志输出到标准输出,支持两种格式:
docker logs或kubectl logs)日志格式由LOG_FORMAT环境变量控制,同时影响MQ队列管理器日志格式。
示例Kibana仪表盘见https://github.com/ot4i/ace-docker/blob/master/sample/dashboards/ibm-ace-kibana5-dashboard.json%E3%80%82
IBM App Connect Enterprise的记账和统计功能提供组件级数据,深入洞察运行中的消息流,支持问题诊断、性能分析、容量规划等。
启用ACE_ENABLE_METRICS=true后,Prometheus exporter在9483端口运行,通过WebSocket监听记账、统计和资源统计数据,聚合后供Prometheus采集。
示例Grafana仪表盘见https://github.com/ot4i/ace-docker/blob/master/sample/dashboards/ibm-ace-grafana-dashboard.json%E3%80%82
启用MQ_ENABLE_METRICS=true且存在MQ队列管理器时,额外exporter在9157端口运行,提供MQ统计数据,详见https://github.com/ibm-messaging/mq-container/blob/master/docs/internals.md#prometheus-metrics%E3%80%82
Dockerfile及关联脚本采用https://github.com/ot4i/ace-docker/blob/master/LICENSE%E8%AE%B8%E5%8F%AF%E3%80%82%E9%95%9C%E5%83%8F%E4%B8%AD%E5%AE%89%E8%A3%85%E7%9A%84%E4%BA%A7%E5%93%81%E8%AE%B8%E5%8F%AF%E8%AF%81%E5%A6%82%E4%B8%8B%EF%BC%9A
LICENSE=view环境变量查看。/usr/share/doc/${package}/copyright。注意:IBM App Connect Enterprise for Developers许可证不允许进一步分发。
© Copyright IBM Corporation 2015, 2019
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务