gpt4 book ai didi

go - pubsub.NewClient 方法卡在 GKE golang 上

转载 作者:IT王子 更新时间:2023-10-29 01:38:31 33 4
gpt4 key购买 nike

我正在开发一个使用 Google Pub/Sub 客户端库的 golang 应用程序。我正在使用 Google 容器引擎进行部署。我按照以下步骤进行部署 -

  1. 使用 CGO_ENABLED=0 GOOS=linux go build -o bin/app app.go 构建 golang 二进制文件
  2. 使用如下所示的 dockerfile 构建 docker 镜像。
  3. 创建 kubernetes 部署。

Docker 文件 -

FROM scratch 
ADD bin/app /
CMD ["/app"]

应用程序启动正常,我可以看到一些初始调试日志。但是,当我尝试使用 client, err := pubsub.NewClient(ctx, projectId) 实例化发布/订阅客户端时,方法调用永远不会返回。我没有看到此语句后立即打印的日志消息。

我在我的 GKE 集群上启用了“Cloud Pub/Sub”权限。此外,该应用程序在我的本地计算机上运行没有任何问题。

可能是什么问题?

最佳答案

好的,所以我终于找到了问题及其解决方案。我的图像不包含发布/订阅客户端(当然还有许多其他库)进行通信所需的任何 SSL 证书。

将我本地机器的 /etc/ssl/certs/ca-certificates.crt 文件添加到 docker 镜像的 /etc/ssl/certs/ 位置解决了这个问题。

这真棒 post在 codeship 上我学到了这个解决方案。

关于go - pubsub.NewClient 方法卡在 GKE golang 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46618942/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com