
Solace Corporation [***]
版本:2.9.12
版本日期:2025-07-11
Solace PubSub+ Connector for IBM MQ在Solace PubSub+ Event Broker和IBM MQ之间桥接数据,提供灵活高效的方式将IBM MQ应用数据集成到基于Solace的事件驱动架构和Event Mesh中。该连接器可独立部署,或采用"active-standby"(主备)或"active-active"(主主)冗余模式,以实现高可用性和数据移动的水平扩展。每个连接器实例支持多达20个独立工作流(源到目标管道),最大限度减少需部署和管理的连接器实例数量。通过使用多种Spring Framework技术,可轻松配置连接器、实现高级日志功能,并将实时指标数据导出到外部监控解决方案。
发布说明
创建名为libs的目录
下载IBM MQ客户端及其所有依赖的JAR文件到libs目录:
创建名为config的目录
在config目录中创建application.yml或application.properties文件,包含连接器所需的属性配置。
使用最小配置运行容器:
Docker
bashdocker run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ solace/solace-pubsub-connector-ibmmq:2.9.12
Podman
bashpodman run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ solace/solace-pubsub-connector-ibmmq:2.9.12
如果服务(如PubSub+ event broker)在本地主机暴露,可使用容器平台的特殊DNS名称通过SOLACE_JAVA_HOST引用,该名称解析为主机使用的内部IP地址。
Docker示例:
bashdocker run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ --env SOLACE_JAVA_HOST=host.docker.internal:55555 \ --env IBM_MQ_CONNNAME='host.docker.internal(1414)' \ solace/solace-pubsub-connector-ibmmq:2.9.12
Podman示例:
bashpodman run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ --env SOLACE_JAVA_HOST=host.containers.internal:55555 \ --env IBM_MQ_CONNNAME='host.containers.internal(1414)' \ solace/solace-pubsub-connector-ibmmq:2.9.12
可配置健康检查执行以下任务:
healthcheck的常规只读用户,通过SOLACE_CONNECTOR_SECURITY_USERS_0_NAME和SOLACE_CONNECTOR_SECURITY_USERS_0_PASSWORD设置用户名和密码。healthcheck用户作为容器healthcheck命令中轮询管理健康端点的用户,若连接器不健康则检查失败。Docker健康检查配置示例:
bashdocker run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/application.yml:/app/external/spring/config/application.yml:ro \ --env SOLACE_CONNECTOR_SECURITY_USERS_0_NAME=healthcheck \ --env SOLACE_CONNECTOR_SECURITY_USERS_0_PASSWORD=healthcheck \ --healthcheck-command="curl -X GET -u healthcheck:healthcheck --fail localhost:8090/actuator/health" \ solace/solace-pubsub-connector-ibmmq:2.9.12
Podman健康检查配置示例:
bashpodman run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/application.yml:/app/external/spring/config/application.yml:ro \ --env SOLACE_CONNECTOR_SECURITY_USERS_0_NAME=healthcheck \ --env SOLACE_CONNECTOR_SECURITY_USERS_0_PASSWORD=healthcheck \ --healthcheck-command="curl -X GET -u healthcheck:healthcheck --fail localhost:8090/actuator/health" \ solace/solace-pubsub-connector-ibmmq:2.9.12
可通过以下方式向容器提供Spring配置属性:
容器需要以下端口:
| 端口 | 用途 |
|---|---|
8090 | 连接器的管理端点 |
以下是支持创建卷或绑定挂载的目录:
| 内容 | 容器路径 | 是否可选 | 推荐权限 |
|---|---|---|---|
| Spring配置文件 | /app/external/spring/config/ | 除非所有属性通过环境变量定义,否则必需 | 只读 |
| 库文件 | /app/external/libs/ | 必需 | 只读 |
| 类路径文件 | /app/external/classpath/ | 可选 | 只读 |
| 输出文件 | /app/external/output/ | 可选 | 读写 |
Spring配置文件卷用于添加Spring配置文件(如application.yml等),可添加只读卷或绑定挂载到/app/external/spring/config/。
此目录遵循Spring默认config/目录的语义,连接器启动时会自动从以下位置查找并加载Spring配置文件:
/app/external/spring/config/的根目录。/app/external/spring/config/的直接子目录。提示
若要在同一config目录中为不同环境(如开发、生产)的多个连接器配置文件,建议使用Spring Boot Profiles而非子目录。例如:
- 推荐配置:
/app/external/spring/config/application-prod.yml/app/external/spring/config/application-dev.yml- 不推荐配置:
/app/external/spring/config/prod/application.yml/app/external/spring/config/dev/application.yml
子目录用于合并来自多个配置属性源的配置。有关何时可能需要使用多个子目录组合应用配置的示例,请参见Spring Boot文档。
库文件卷用于添加额外库,可添加只读卷或绑定挂载到/app/external/libs/。
此目录用于存放Java库依赖项(外部JAR文件),这些依赖项是连接器运行所必需的,或在使用某些功能(如配置中导出指标到Prometheus时的Prometheus库)时必需的。
由于许可考虑,Solace不提供所需JAR文件。这些JAR文件是连接器部署的必要部分,以确保其正确运行。
有关更多信息,请参见ZIP包中连接器的libs目录提供的文档。
类路径文件卷用于添加任意文件(非JAR库或Spring Boot配置文件),可添加只读卷或绑定挂载到/app/external/classpath/。
注意
此目录不得包含库JAR文件或Spring Boot配置文件,否则可能导致库无法在连接器部署期间被正确加载,或覆盖连接器内部配置。
输出文件卷用于某些支持写入输出文件的功能(如日志到文件)。要捕获这些文件,可添加读写卷或绑定挂载到/app/external/output/目录。
重要
使用生成文件的功能时,必须将功能配置为将文件生成到/app/external/output/目录。生成文件到其他目录不受支持。
可在容器上设置JDK_JAVA_OPTIONS环境变量来配置Java虚拟机(JVM)。
有关更多信息,请参见JDK文档。
提示
此容器作为示例提供,并已使用以下参数测试:
- 两个活动处理器(使用
-XX:ActiveProcessorCount=2指定)。- 最大堆内存2 GB(使用
-Xmx2048m指定)。
通过Solace开发者社区提供尽力支持。
提供高级支持选项,请联系Solace。
本项目根据Solace Community License 1.0版授权。详情请参见容器/licenses目录下的LICENSE文件。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。






探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务