コードのパッケージ化
モジュールをデプロイするには、コードをアーカイブにパッケージ化する必要があります。アーカイブは、モジュールのデプロイに使用するオーサリング方法に応じて .ccm ファイルまたは .zip ファイルにすることができます。.ccm ファイルは、単純には拡張子が .ccm に変更された ZIP ファイルです。
- UGS CLI を使用してデプロイする には、コードを .ccm ファイルにパッケージ化する必要があります。
- Cloud Code Admin API を使用してデプロイする には、.ccm ファイルまたは .zip ファイルを受け入れます。
x64 Linux で実行するためにアーカイブにはパッケージ化されたアセンブリのみを入れることができます。
ストレージ制限を確認するには、Cloud Code 制限 を参照してください。
Ready to Run (R2R) コンパイル
モジュールプロジェクトのアセンブリを生成する場合は、Ready to Run コンパイルを有効にすることができます。これにより、モジュールのコールドスタート時間が若干向上しますが、最初の呼び出し後のレスポンス時間は向上しません。オプションでは、アセンブリのサイズも増えます。詳細については、ReadyToRun コンパイル に関する Microsoft ドキュメントを参照してください。
アセンブリの生成
この形式でアセンブリを生成するには、以下のセクションで説明するように .NET コマンドラインインターフェース (CLI) または JetBrains Rider や Microsoft Visual Studio などの IDE を使用します。アセンブリは、Cloud Code モジュールエンドポイントを含む メインモジュールプロジェクト に対してのみ生成する必要があります。
ノート: .NET 6.0 の使用をお勧めします。
.NET コマンドラインインターフェースの使用
.NET CLI でアセンブリを生成するには、dotnet publish
コマンドを使用します。詳細については、dotnet publish に関する Microsoft ドキュメントを参照してください。
dotnet publish -c Release -r linux-x64 -p:PublishReadyToRun=true
<PublishReadyToRun>
設定を追加することにより、プロジェクトにターゲットプラットフォームと R2R コンパイルを指定できます。
<PropertyGroup>
<PublishReadyToRun>true</PublishReadyToRun>
</PropertyGroup>
以下のコマンドを使用してモジュールを公開します。
dotnet publish -c Release -r linux-x64
デフォルトでは、これによりアセンブリが bin/Release/net6.0/linux-x64/publish
フォルダーに生成されます。
Microsoft Visual Studio の使用
Microsoft Visual Studio を使用してアセンブリを生成できます。これを行うには、以下のステップに従います。
- モジュールの C# プロジェクトを右クリックし、メニューから Publish (公開) を選択します。
- Publish (公開) ページで以下を実行します。
- ターゲットとして Folder (フォルダー) を選択し、Next (次へ) を選択します。
- 特定のターゲットとして Folder (フォルダー) を選択し、Next (次へ) を選択します。
- Finish (終了) を選択します。
- Publish profile creation progress (公開プロファイルの作成の進捗状況) ページで、Close (閉じる) を選択します。
- Publish (公開) ウィンドウの Publish (公開) タブで、Show all settings (すべての設定の表示) を選択します。
- ターゲットランタイムが
linux-x64
であることを確認します。 - (任意) PublishReadyToRun がアクティベートされていることを確認します。
- Publish (公開) を選択します
詳細については、Microsoft ドキュメントのチュートリアル Visual Studio を使用して .NET コンソールアプリケーションを発行する を確認してください。
JetBrains Rider の使用
JetBrains Rider を使用してアセンブリを生成できます。これを行うには、以下のステップに従います。
- Run (実行) > Edit Configurations... (設定の編集...) を開くか、ナビゲーションバーから Edit Configurations (設定の編集) を選択します。
- + > Add New Configuration (新しい設定を追加) を選択します。
- Publish to folder (フォルダーに公開) 設定タイプを選択します。
- Target runtime (ターゲットランタイム) を
linux-x64
に設定します。 - (任意) Enable ReadyToRun compilation (ReadyToRun コンパイルの有効化) をアクティベートします。
- Apply (適用) を選択して設定を保存します。
- モジュールを公開する準備ができたら、ツールバーで作成した実行設定を選択し、Run (実行) を選択します。
詳細については、JetBrains Rider ドキュメント Publish .NET applications to folder を参照してください。
アセンブリのパッケージ化
これらのアセンブリを生成した後で、それらをアーカイブに圧縮します。UGS CLI を使用してデプロイすることを計画している場合は、アーカイブの拡張子を .ccm に設定できます。
ノート: Windows のエクスプローラーを使用している場合、アーカイブの拡張子を .ccm に変更するには、一般的なファイル名拡張子 を有効にする必要があります。
アーカイブの構造は以下のようになります。
MyModule.ccm
├─ MyModule.dll
├─ MyModule.deps.json
├─ Dependency1.dll
├─ Dependency2.dll
└─ ...
デフォルトでは、これには Cloud Code NuGet パッケージの依存関係が含まれます。
ノート: 生成されたアセンブリには .pdb ファイルも含まれます。これらのファイルは、行番号付きのスタックトレースを生成するために必要です。ただし、モジュールの実行には必要ありません。
UGS CLI または Cloud Code Admin API を使用して、アーカイブをデプロイできます。