【问题标题】:GOOGLE_APPLICATION_CREDENTIAL Failing on DO serverGOOGLE_APPLICATION_CREDENTIALS 在 TO 服务器上失败
【发布时间】:2020-01-26 01:15:02
【问题描述】:

我开发了一个使用 GCP 的 Django 应用程序并在开发环境中测试了代码,我正在使用 JSON 服务帐户密钥文件并在开发环境中正常工作。但是在登台环境中失败(使用 nginx 和 gunicorn 的 DO 服务器)。收到以下错误: “无法自动确定凭据。请设置 GOOGLE_APPLICATION_CREDENTIALS 或显式创建凭据并重新运行应用程序。有关详细信息,请参阅https://cloud.google.com/docs/authentication/getting-started” 我尝试使用 export env 变量并明确设置,但没有运气。知道这是什么原因/解决方案。 dev 和 stage env 使用相同的源代码并在 dev 上工作并在 staging env 上失败。谢谢

【问题讨论】:

  • 你能分享你设置凭据的代码吗?没有看到这些信息,很难知道出了什么问题。

标签: google-cloud-platform digital-ocean


【解决方案1】:

如果不描述如何部署 gunicorn 就很难知道,但您可以配置 gunicorn 来设置环境变量。例如。使用Systemd 你可以这样设置:

$ cat /etc/systemd/system/gunicorn.service
[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target

[Service]
# stuff omitted
Environment=GOOGLE_APPLICATION_CREDENTIALS=/foo/bar/my-creds.json
ExecStart=/path/to/bin/gunicorn \
      --workers 4 \
      --bind unix:/run/gunicorn.sock \
      sa.wsgi:application

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    相关资源
    最近更新 更多