gpt4 book ai didi

docker - 通过 docker compose 在 digital ocean 上使用 docker gcplogs(Google Cloud Logging 驱动程序)

转载 作者:行者123 更新时间:2023-12-02 21:25:19 25 4
gpt4 key购买 nike

我目前已经在 digital ocean 上设置了 docker compose,并想尝试 gcplogs(Google Cloud Logging 驱动程序)。据我了解,我需要设置我的 Google Application Default Credentials通过下载 json key 文件并设置 GOOGLE_APPLICATION_CREDENTIALS指向它。

这就是我设置它的方式(没有它的工作)

version: "2"
services:
containername:
build: /whatever/containername
environment:
- GOOGLE_APPLICATION_CREDENTIALS=/usr/src/app/project-12349aba.json
logging:
driver: gcplogs
options:
env: test
gcp-project: my-project-name

这给了我以下错误:
ERROR: for containername  Failed to initialize logging driver: google.DefaultTokenSource: google: could not find default credentials. See https://developers.google.com/accounts/docs/application-default-credentials for more information.

我错过了什么?我究竟做错了什么?

我很肯定凭证文件可以工作并且在那个位置,因为我在应用程序中使用它和 ruby google/cloud成功的 gem 。我也能够使用该 ruby​​-gem 成功登录,但我真的很想让它在 docker 容器上运行,以便我可以在其他非 ruby​​ 项目中重新使用它。

最佳答案

日志驱动程序由 docker 守护进程而不是容器运行。您需要将这些凭据提供给守护程序环境,您当前正在做的是将它们提供给容器,正如您所发现的那样,这不起作用。

要将它们提供给守护程序,您需要首先在 Digital Ocean 主机上复制或下载 json 文件。然后

export GOOGLE_APPLICATION_CREDENTIALS=...
# run the docker daemon
docker daemon ....

关于docker - 通过 docker compose 在 digital ocean 上使用 docker gcplogs(Google Cloud Logging 驱动程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39531267/

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