You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Django-storages与GCE配置GS_CREDENTIALS及应用凭证?

如何为基于Django-storages和GCE的Web应用创建并配置GS_CREDENTIALS凭证

我来一步步帮你搞定这个配置,流程其实清晰明了,跟着下面的步骤走就行:

第一步:在GCP控制台创建服务账号并生成密钥

  • 登录Google Cloud控制台,导航到「IAM与管理」>「服务账号」页面
  • 点击「创建服务账号」,填写好名称(比如django-storage-sa)和描述,完成后点击「创建并继续」
  • 为这个服务账号分配合适的Cloud Storage权限:如果需要读写存储桶内容,推荐选择Storage Object Admin;如果仅需只读访问,选Storage Object Viewer即可,分配完成后点击「继续」
  • 跳过添加用户/群组的步骤,直接点击「完成」回到服务账号列表
  • 找到刚创建的服务账号,点击右侧「密钥」选项卡,再点击「添加密钥」>「创建新密钥」
  • 密钥类型选择「JSON」,点击「创建」——此时浏览器会自动下载一个JSON格式的密钥文件,务必妥善保存,不要泄露或丢失

第二步:配置Django项目

首先确保你已经安装了必要的依赖包:

pip install django-storages google-cloud-storage

接下来有两种配置GS_CREDENTIALS的方式,按需选择:

方式一:直接在settings.py中指定密钥文件路径

在你的Django项目settings.py中添加以下配置:

import os
from pathlib import Path

BASE_DIR = Path(__file__).resolve().parent.parent

# 配置GS凭证
GS_CREDENTIALS = os.path.join(BASE_DIR, "你的密钥文件名.json")
# 其他必要的GCS配置
GS_BUCKET_NAME = "你的GCS存储桶名称"
DEFAULT_FILE_STORAGE = "storages.backends.gcloud.GoogleCloudStorage"

方式二:使用环境变量(推荐用于生产环境)

这种方式更安全,避免把密钥文件路径硬编码到配置文件中:

  • Linux/macOS终端:
export GOOGLE_APPLICATION_CREDENTIALS="/绝对路径/到/你的密钥文件.json"
  • Windows命令提示符:
set GOOGLE_APPLICATION_CREDENTIALS=C:\绝对路径\到\你的密钥文件.json

配置好环境变量后,settings.py中无需手动指定GS_CREDENTIALS——django-storages会自动读取GOOGLE_APPLICATION_CREDENTIALS环境变量的值。

一些关键注意事项

  • 确保你的GCS存储桶的IAM权限与服务账号的权限匹配,否则会出现访问被拒绝的错误
  • 生产环境中绝对不要把密钥文件提交到Git等版本控制系统,建议使用python-dotenv配合.env文件来管理环境变量
  • 如果遇到权限相关的问题,先检查GCP控制台中服务账号的权限配置,以及存储桶的IAM访问控制设置

内容的提问来源于stack exchange,提问作者rprasad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:28:46