
Solace Corporation [***]
版本:2.7.11
版本日期:2025-07-11
Solace PubSub+ JMS连接器在Solace PubSub+事件代理和JMS代理之间桥接数据,为JMS应用数据与Solace支持的事件驱动架构及事件网格的集成提供灵活高效的方式。该连接器可独立部署,或采用"主备"(active-standby)或"主主"(active-active)冗余模式,以实现数据传输的高可用性和水平扩展。每个连接器实例支持最多20个独立工作流(源到目标管道),最大限度减少需部署和管理的连接器实例数量。通过使用多种Spring框架技术,可轻松配置连接器、实现高级日志功能,并将实时指标数据导出至外部监控解决方案。
发行说明
创建名为libs的目录
下载JMS库及其所需依赖(如有)至libs目录
提示
若要将连接器与ActiveMQ配合使用,可从Maven中央仓库下载
activemq-client及其所需依赖。
创建名为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-jms:2.7.11
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-jms:2.7.11
若服务(如PubSub+事件代理)在本地主机暴露,可使用容器平台的特殊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 \ solace/solace-pubsub-connector-jms:2.7.11
在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 \ solace/solace-pubsub-connector-jms:2.7.11
可配置健康检查执行以下任务:
使用SOLACE_CONNECTOR_SECURITY_USERS_0_NAME和SOLACE_CONNECTOR_SECURITY_USERS_0_PASSWORD创建名为healthcheck的常规只读用户及其密码。
在容器的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-jms:2.7.11
在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-jms:2.7.11
可通过以下方式之一向容器提供Spring配置属性:
使用环境变量。
使用包含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配置文件而非子目录。例如:
按以下方式设置配置:
/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社区许可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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务