首頁 >後端開發 >Python教學 >建立本機環境以從 Flask 操作 GCS 模擬器

建立本機環境以從 Flask 操作 GCS 模擬器

Patricia Arquette
Patricia Arquette原創
2025-01-04 07:38:35731瀏覽

Creating a Local Environment to Operate GCS Emulator from Flask

在 Cloud Run 上建立透過 Flask 操作 GCS(Google Cloud Storage)的應用程式時,我想在本地環境中使用 GCS 模擬器。本文檔描述如何設定這樣的環境。

使用的模擬器

  • fsouza/fake-gcs-server

範例程式碼

我在以下儲存庫中建立了範例程式碼。依照README.md中的說明,您可以在本機環境中使用GCS模擬器上傳、下載和刪除檔案。

由於您只需克隆儲存庫並執行 make up 即可開始一切操作,因此設定非常簡單。

  • 燒瓶-gcs

docker-compose.yml 的內容

要在 Flask 容器中使用 GCS 模擬器,需要設定 STORAGE_EMULATOR_HOST 環境變數:

services:
  app:
    environment:
      - STORAGE_EMULATOR_HOST=http://gcs:4443

配置 Flask 的 StorageClient

檢查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

結論

在 Cloud Run 上建立透過 Flask 操作 GCS 的應用程式時,您可能需要在本機環境中使用 GCS 模擬器。這些是設定步驟。請注意,在生產中您不會使用 GCS 模擬器,因此只需不要設定 STORAGE_EMULATOR_HOST 環境變量,指定您的 BUCKET_NAME,並向 Cloud Run 授予適當的權限即可。

以上是建立本機環境以從 Flask 操作 GCS 模擬器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn