
本文介绍如何在本地环境中使用 GCS 模拟器,以便在 Cloud Run 上构建使用 Flask 操作 Google Cloud Storage (GCS) 的应用程序。
模拟器选择
我们采用 fsouza/fake-gcs-server 作为 GCS 模拟器。
示例代码及设置
示例代码已上传至 GitHub 仓库(flask-gcs),详细步骤请参考仓库中的 README.md 文件。 通过克隆仓库并运行 make up 命令即可快速搭建本地环境,实现文件的上传、下载和删除操作。
docker-compose.yml 配置
为了在 Flask 容器中使用 GCS 模拟器,需要设置 storage_emulator_host 环境变量:
services: app: environment: - storage_emulator_host=http://gcs:4443
Flask 中的 Storage Client 配置
通过检查 storage_emulator_host 环境变量来判断是否使用模拟器:
def get_storage_client(): emulator_host = Config.STORAGE_EMULATOR_HOST if emulator_host: client = storage.Client( credentials=AnonymousCredentials(), project="test", ) else: client = storage.Client() return client
总结
在本地开发环境中使用 GCS 模拟器,可以方便地测试 Flask 应用与 GCS 的交互。 生产环境中无需使用模拟器,只需移除 storage_emulator_host 环境变量,指定您的 bucket 名称,并确保 Cloud Run 拥有相应的权限即可。
以上就是创建本地环境以从 Flask 操作 GCS 模拟器的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1355353.html
微信扫一扫
支付宝扫一扫