
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Solace Corporation https://solace.com
版本:2.7.12
版本日期:2025-07-11
Solace PubSub+ Connector for GCP Pub/Sub在Solace PubSub+ Event Broker与GCP Pub/Sub之间桥接数据,为GCP Pub/Sub应用数据与基于Solace的事件驱动架构及事件网格(Event Mesh)集成提供灵活高效的方式。该连接器可独立部署,或采用“主备”(active-standby)、“主主”(active-active)冗余模式部署,以实现数据传输的高可用性和水平扩展。每个连接器实例支持最多20个独立工作流(源到目标管道),减少需部署和管理的连接器实例数量。通过使用多种Spring框架技术,可轻松配置连接器、实现高级日志功能,并将实时指标数据导出到外部监控解决方案。
https://products.solace.com/download/CONN_GCPPUBSUB_RN
创建名为config的目录
在config目录中创建application.yml或application.properties文件,包含连接器所需的属性配置
已通过gcloud cli设置https://cloud.google.com/docs/authentication/application-default-credentials#personal%EF%BC%8C%E4%B8%94%60application_default_credentials.json%60%E4%BD%8D%E4%BA%8E%E9%BB%98%E8%AE%A4%E4%BD%8D%E7%BD%AE
在application.yml或application.properties中设置属性spring.cloud.gcp.credentials.location为/app/external/gcp/config/application_default_credentials.json
使用最小配置运行容器:
Docker
bashdocker run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ -v $HOME/.config/gcloud/application_default_credentials.json:/app/external/gcp/config/application_default_credentials.json:ro \ docker.xuanyuan.run/solace/solace-pubsub-connector-gcppubsub:2.7.12
Podman
bashpodman run -d --name my-connector \ -v `pwd`/libs/:/app/external/libs/:ro \ -v `pwd`/config/:/app/external/spring/config/:ro \ -v $HOME/.config/gcloud/application_default_credentials.json:/app/external/gcp/config/application_default_credentials.json:ro \ solace/solace-pubsub-connector-gcppubsub:2.7.12
注意
在Windows系统中,application_default_credentials.json的默认位置为%APPDATA%\gcloud\application_default_credentials.json,请相应调整卷挂载路径。
提示
假设Google Cloudapplication_default_credentials.json位于默认位置,后续所有docker/podman命令需根据环境添加卷挂载:
Linux/MacOS:
-v $HOME/.config/gcloud/application_default_credentials.json:/app/external/gcp/config/application_default_credentials.json:ro \
Windows:
-v %APPDATA%\gcloud\application_default_credentials.json:/app/external/gcp/config/application_default_credentials.json:ro \
如果服务(如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 \ docker.xuanyuan.run/solace/solace-pubsub-connector-gcppubsub:2.7.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 \ solace/solace-pubsub-connector-gcppubsub:2.7.12
可配置健康检查执行以下任务:
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" \ docker.xuanyuan.run/solace/solace-pubsub-connector-gcppubsub:2.7.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-gcppubsub:2.7.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/。
该目录遵循https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.files%E7%9A%84%E8%AF%AD%E4%B9%89%EF%BC%8C%E8%BF%9E%E6%8E%A5%E5%99%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E4%BC%9A%E8%87%AA%E5%8A%A8%E4%BB%8E%E4%BB%A5%E4%B8%8B%E4%BD%8D%E7%BD%AE%E6%9F%A5%E6%89%BE%E5%B9%B6%E5%8A%A0%E8%BD%BDSpring%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%EF%BC%9A
/app/external/spring/config/的根目录/app/external/spring/config/的直接子目录提示
若需在同一config目录中为不同环境(如开发、生产)配置多个连接器的配置文件,建议使用https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.files.profile-specific%E8%80%8C%E9%9D%9E%E5%AD%90%E7%9B%AE%E5%BD%95%E3%80%82%E4%BE%8B%E5%A6%82%EF%BC%9A
- 推荐配置:
/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
子目录用于合并多个配置源的配置属性。有关何时可能需要使用多个子目录组合应用配置的示例,详见https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.files.wildcard-locations%E3%80%82
库文件卷用于添加额外库,需添加只读卷或绑定挂载到/app/external/libs/。
该目录用于存放仅在使用连接器特定功能时所需的Java库依赖(外部JAR文件),例如使用连接器配置中的Prometheus指标导出功能时所需的Prometheus库。
详见ZIP包中连接器libs目录下的文档。
类路径文件卷用于添加任意文件(非JAR库或Spring Boot配置文件),需添加只读卷或绑定挂载到/app/external/classpath/。
注意
该目录不得包含库JAR文件或Spring Boot配置文件,否则可能导致库无法在连接器部署时被正确加载,或覆盖连接器内部配置。
输出文件卷用于支持写入输出文件的功能(如文件日志),需添加读写卷或绑定挂载到/app/external/output/目录。
重要
使用生成文件的功能时,必须将功能配置为将文件生成到/app/external/output/目录。生成文件到其他目录不受支持。
可通过在容器上设置JDK_JAVA_OPTIONS环境变量配置Java虚拟机(JVM)。
详见https://docs.oracle.com/en/java/javase/17/docs/specs/man/java.html#using-the-jdk_java_options-launcher-environment-variable%E3%80%82
提示
本容器作为示例提供,已通过以下配置测试:
- 两个活动处理器(使用
-XX:ActiveProcessorCount=2指定)- 最大堆内存2 GB(使用
-Xmx2048m指定)
通过Solace开发者社区提供尽力支持。
提供高级支持选项,详情请https://solace.com/contact-us%E3%80%82
本项目采用Solace社区许可证1.0版。详见容器/licenses目录下的LICENSE文件。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务