Aliyun Serverless VSCode Extensionの手順
本書は、Aliyun Serverless VSCode Extensionのインストール、実行、デバッグ、デプロイの手順を記載します。
1.Aliyun Serverless VSCode Extensionとは
Aliyun Serverless VSCode ExtensionはFunctionComputeが提供しているプラグインです。このプラグインは、FunctionComputeコマンドラインツールFunとFunctionCompute SDKの機能を組み合わせて、VSCodeに基づく開発、デバッグ、およびデプロイツールです。 このプラグインは下記の機能を提供します。
- ローカルでプロジェクトをすばやく初期化と関数作成することができます
- ローカル関数を実行およびデバッグし、サービス関数をクラウドにデプロイします
- クラウドのサービス関数リストを取得し、サービス関数の構成情報を表示し、クラウドの関数を呼び出します
- テンプレートファイルの構文プロンプトを取得します:オートコンプリート、スキーマ検証、フローティングプロンプト
2.Aliyun Serverless VSCode Extensionをインストールします
2-1.前提条件
AliyunサーバーレスVSCodeExtensionのすべて機能を使用するには下記の前提条件を満たす必要があります ・VSCode: Visual Studio Code公式サイトからダウンロードし、インストールします ・Docker:Funcraftのチュートリアルに従ってDockerをにインストールおよび構成する、FuncraftのインストールはFuncraftインストールを参照してください
2-2.VSCodeをインストールします
詳細インストール手順は省略します ① Visual Studio Code公式サイトからVisual Studio Codeをダウンロードします
②VScode.exeをダブルクリックし、インストールします
2-3.Funをインストールします
Funを使用して依存関係をコンパイルおよびインストールし、ローカルで実行およびデバッグし、fun install / build / localなどのコマンドの機能を使用する必要がある場合は、開発環境にdockerをインストールする必要があります。 FuncraftインストールからFunとDockerのインストール方法をご参照ください
2-3-1.Funをインストールする(Windows環境)
1)Funのインストールは3つの方法を提供します。 ・npmパッケージでインストールすべてのプラットフォーム(Windows / Mac / Linux)に適しています。npmの開発パッケージをプリインストールしている ・バイナリインストールパッケージでインストール、すべてのプラットフォーム(Windows / Mac / Linux)に適しています ・HomebrewパッケージマネージャーでインストールMacプラットフォームに適しており、MacOS開発者の習慣に沿っています。
2)バイナリインストールパッケージでインストール ①下記リンクからインストールファイルをダウンロードします バイナリインストールパッケージ
②fun-v3.6.23-win.exe.zipを解凍します
③fun-v3.6.23-win.exeをfun.exeリネームし、C:\WINDOWS\System32パスにコピーペーストします
④CMDを開き、funのバージョンを確認します
fun.exe --version
2-3-2.Dockerをインストールする(Windows環境)
1)Dockerのインストールファイル ①Windows ・公式サイトのチュートリアルを参照できます。AlibabaCloudのDocker For Windowsからもダウンロードできます ②MacOS ・公式サイトのチュートリアルを参照できます。AlibabaCloudのDocker For Macからもダウンロードできます ③Linux ・公式サイトのチュートリアルを参照できます。AlibabaCloudの Docker CE イメージサイトからもダウンロードできます
2)Dockerをインストールします ①公式サイトからダウンロードします
②Docker Desktop Installer.exeがダウンロードされる
③Docker Desktop Installer.exeをダブルクリックし、デフォルト設定でDockerをインストールする
3)wsl2をインストールします ① 下記リンクからwsl2-kernelをダウンロードします Linux kernel update packageの(https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)リンクからDockerをダウンロードします
③wsl2-kernelをインストール後、Windowsを再起動します
⑤Startをクリックする ここまでWindowsでDockerのインストールが完了しました。
2-3-3.Funを構成する(Windows環境)
1)fun configで構成します ①CMDを起動し、下記のコマンドでfunを構成します
# fun config
② Account ID、Access Key Id、Secret Access Key、Default Region Nameを正しく設定し、その他デフォルトで設定します Account IDはrootアカウントのAccount IDで設定してください。
・FunctionComputeコンソール画面にAccount ID情報を確認します ・Access Key Id、Secret Access Key情報を確認します
2-4.VSCodeでAliyun Serverlessプラグインをインストールします
②Extensions画面に、Aliyun Serverlessプラグインを検索します
③Aliyun Serverlessプラグインをインストールします
④Aliyun Serverlessプラグインがインストールされました 左側メニューにAliyun Serverlessプラグインメニューが追加されました
3.Aliyun Serverless VSCode Extensionのクイックスタート
3-1.AlibabaCloudのFunctionComputeでサービスと関数を作成します
①AlibabaCloudサイトをログインし、FunctionComputeでサービスと関数を作成します ②関数を確認します
3-2.VSCodeでAlibabaCloudのアカウントをバインドします
1)アカウントをバインドします ①左側のFunctionComputeメニューをクリックします ②アカウントIDをインプットする(プライマリーアカウントのAccountID)、Cloudのサービスと関数がリストされました 今回は2-3-3.Funを構成するAccount ID、AccessKey ID、AccessKey Secretが設定されました
2)リージョンを変更します リージョンを変更することで、ほかのリージョンのサービスと関数が確認することができます ①リージョンを変更します
3-3.VSCodeでローカルの関数を作成します
1)VSCodeでファイルメニューからフォルダを開く ①フォルダを作成します
2)ローカルの関数を作成します ①Aliyun:FunctionComputeをクリックし、Local resourceに「+」をクリックします
④code uriを確認し、エンターキーを押します
nancy_local_service\nancy_local_fc
⑦Functionを確認します nancy_local_service\nancy_local_fc\index.py
# -*- coding: utf-8 -*-import logging# if you open the initializer feature, please implement the initializer function, as below:# def initializer(context):# logger = logging.getLogger()# logger.info('initializing')def handler(event, context):logger = logging.getLogger()logger.info('hello world')return 'hello world'
3-4.ローカルで関数を実行します
①Function右側の実行メニューをクリックします ②初回実行するときはPython実行環境を初期化します
3-5.ローカルで関数をデバッグします
②breakpointを設定し、「Run and debug」をクリックします
3-6.VSCodeでサービスと関数をデプロイします
③AlibabaCloudのFunctionComputeコンソール画面に関数を確認します
3-7.クラウドの関数を実行します
①freshメニューをクリックし、RemoteInvokeメニューをクリックします
最後に
ここまでAliyun Serverless VSCode Extensionのインストール、実行、デバッグ、デプロイの手順をご紹介しました。VSCodeを使った開発をする際、参考に頂ければ幸いです。