【GCP】google cloud functionsにローカル環境からデプロイする

google cloud functionsにローカル環境からデプロイする方法です。

Cloud SDKがインストールされていることが前提なので、インストールされていない方は公式サイトを参考にインストールをお願いします。

macOSのインストール手順

Windowsのインストール手順

ディレクトリ構成

ディレクトリ構成は下記のようにしています(Pythonの場合)

/
┗functions
  ┗hello_world
    ┗main.py
    ┗requirements.txt

ソースコード

ソースコードは下記になります。

main.py

def hello_world(request):

    request_json = request.get_json()
    if request.args and 'message' in request.args:
        return request.args.get('message')
    elif request_json and 'message' in request_json:
        return request_json['message']
    else:
        return f'Hello World!'

requirements.txt

# Function dependencies, for example:
# package>=version

デプロイ方法

関数のコードがあるディレクトリに移動します。

cd ./functions/hello_world

デプロイコマンドを実行します。

gcloud functions deploy hello_world --entry-point hello_world --runtime python39 --region asia-northeast1 --trigger-http --allow-unauthenticated

これでローカル環境から関数のデプロイができました。

cloud-functions

デプロイについては公式サイトの下記に記載されています。
ローカルマシンからのデプロイ

デプロイするときに環境変数を使用することも可能です。
環境変数の使用

ディレクトリ構成にも決まりがあるので、下記をご覧ください。
ソースコードの構造化

IT技術ブログ
↓↓「にほんブログ村」のランキングに参加しています。少しでも面白い、参考になったとか思われたらポチッとしていただけると嬉しいです!
にほんブログ村 IT技術ブログへ
にほんブログ村