在PythonAnywhere的Django项目中配置Google Cloud ADC(应用默认凭据)失败的问题求助
在PythonAnywhere的Django项目中配置Google Cloud ADC(应用默认凭据)失败的问题求助
我正在尝试为PythonAnywhere上的Django项目配置Google Cloud的应用默认凭据(ADC),但一直遇到下面的错误:
Error creating story: Your default credentials were not found. To set up Application Default Credentials, see https://cloud.google.com/docs/authentication/external/set-up-adc for more information.
我已经尝试过以下操作:
- 创建了服务账号:
- 在Google Cloud中创建了服务账号,并下载了JSON密钥文件
- 把文件存在了这个路径:
/home/footageflow/helloworld2003-754c20cfa98d.json
- 设置
GOOGLE_APPLICATION_CREDENTIALS环境变量:- 在
.bashrc中添加了以下内容:export GOOGLE_APPLICATION_CREDENTIALS="/home/footageflow/helloworld2003-754c20cfa98d.json"
- 在
- 尝试通过代码设置凭据:
- 在Django代码中显式设置了这个环境变量:
import os os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/home/footageflow/helloworld2003-754c20cfa98d.json"
- 在Django代码中显式设置了这个环境变量:
- 尝试CLI认证:
- 在PythonAnywhere上安装了gcloud CLI
- 运行了
gcloud auth application-default login并成功完成了认证
遇到的问题
尽管尝试了所有这些步骤,在PythonAnywhere上运行代码时错误还是会出现。但同样的代码在本地用gcloud认证后就能正常工作。
我的疑问:
- 在PythonAnywhere上配置ADC有没有什么特殊的配置要求?
- 是不是需要给Google Cloud中的服务账号额外授权?
- 会不会是PythonAnywhere处理环境变量或服务账号的方式导致的问题?
额外信息:
- Django项目部署在PythonAnywhere上
- 本地环境中,认证后项目可以完美运行
备注:内容来源于stack exchange,提问作者whoistari
相关产品推荐
相关产品推荐

