Function Compute は、ランタイムで参照できる組み込みの共通依存関係を提供します。Function Compute は、サードパーティの依存関係もサポートしています。このトピックでは、関数のサードパーティ依存関係をインストールする方法について説明します。
背景情報
Function Compute の組み込みの共通依存関係の詳細については、以下のトピックをご参照ください。
レイヤーを使用して依存関係をインストールする
Function Compute は、直接使用できるライブラリの依存関係をいくつかリリースしています。詳細については、「関数の公開レイヤーを構成する」をご参照ください。さらに公開レイヤーを取得する場合は、awesome-layers をご参照ください。
公開レイヤーを使用して依存関係をインストールする
公式の公開レイヤー
関数を作成した後、[関数の詳細] ページの [構成] タブをクリックします。 [レイヤー] セクションで、[変更] をクリックします。レイヤー変更パネルで、関数の公開レイヤーを構成する」をご参照ください。
を選択します。詳細については、「非公式の公開レイヤー
awesome-layers から目的のレイヤーを見つけ、レイヤーの Alibaba Cloud Resource Name (ARN) を取得します。 [構成] タブをクリックします。 [レイヤー] セクションで、[変更] をクリックします。レイヤー変更パネルで、 を選択します。
カスタムレイヤーを使用して依存関係をインストールする
Function Compute コンソールを使用してレイヤーをビルドする
Function Computeコンソール にログインします。左側のナビゲーションウィンドウで、 を選択します。詳細については、「カスタムレイヤーを作成する」をご参照ください。
説明この方法は、Node.js および Python ランタイムにのみ適用されます。
この方法は、Node.js 用 Puppeteer など、システムの動的リンクライブラリ (.so) を含む依存関係をサポートしていません。依存関係に動的リンクライブラリ (.so) が含まれている場合は、Dockerfile を使用してレイヤーをビルドすることをお勧めします。
オンプレミス マシンでレイヤーをビルドする
オンプレミス マシンでカスタムレイヤーをビルドできます。詳細については、「レイヤーの ZIP パッケージをビルドする」をご参照ください。この方法を使用するには、オンプレミス マシンのオペレーティングシステムとプロセッサアーキテクチャが Function Compute ランタイムと同じであることを確認してください。オンプレミス マシンは Linux x86-64 を実行しているか、インストールするライブラリの依存関係が基盤となる環境またはプロセッサアーキテクチャに依存していない必要があります。そうでない場合は、Function Compute コンソールまたは Dockerfile を使用してレイヤーをビルドすることをお勧めします。
たとえば、Python の numpy ライブラリは、基盤となる環境に依存しています。オンプレミス マシンで M1 チップを搭載した Mac システムを実行している場合は、オンプレミス マシンに依存関係をインストールできません。
Dockerfile を使用してレイヤーをビルドする
依存関係に、基盤となる動的リンクライブラリが含まれている場合、またはオンプレミス マシンにインストールできない場合は、Dockerfile を使用して依存関係をインストールできます。詳細については、「Dockerfile を使用してレイヤーをビルドする」をご参照ください。
Function Compute コンソールを使用して依存関係をインストールする
依存関係をパッケージ化し、コンソールにアップロードする
サードパーティの依存関係とコードファイルを 1 つのパッケージに圧縮します。
重要コードディレクトリ内のすべてのファイルを 1 つのパッケージに圧縮する必要があります。ハンドラ関数のファイルは、パッケージのルートディレクトリにある必要があります。
パッケージ化方法は、オペレーティングシステムによって異なります。ビジネス要件に基づいてパッケージ化方法を選択してください。
Function Computeコンソール にログインし、[ZIP をアップロード]、[フォルダをアップロード]、または [OSS] をクリックしてコードパッケージをアップロードし、関数をデプロイします。
コンソールの WebIDE を使用して依存関係をインストールする
Function Computeコンソール にログインし、目的の関数を見つけます。
[関数の詳細] ページで、[コード] タブをクリックします。WebIDE インターフェイスで、
を選択します。表示されるターミナルで、依存関係をインストールするコマンドを実行します。次のサンプルコードは、Python で依存関係をインストールする方法を示しています。詳細については、「コードパッケージをデプロイする」をご参照ください。
pip install -t . <PackageName> # PackageName は依存関係パッケージの名前を示します。 -t はインストールパスを示します。 . は現在のディレクトリにインストールすることを示します。
次の図に示すように、WebIDE のディレクトリ構造を表示します。
Serverless Devs を使用して依存関係をインストールする
Function Compute が提供する Serverless Devs を使用して、関数を作成およびデプロイします。詳細については、「Serverless Devs コマンド」をご参照ください。