ローカル開発環境の準備
Oracle Functionsを使用してファンクションの作成およびデプロイを開始する前に、ファンクション開発用のローカル環境を設定する必要があります。
クラウド・シェルまたはOracle Cloud Infrastructureコンピュート・インスタンスを開発環境として使用できますが、このドキュメントではファンクション開発にローカルLinux環境を使用することを前提としています。
始める前に
ファンクション開発用のローカルLinuxインスタンスを設定するためにこの項で説明するタスクに加えて、次のタスクも実行する必要があります。
-
ファンクションをローカルで開発するには、GitHubからFn Project開発プラットフォームをインストールします。
-
ローカル・インスタンスにDockerバージョン17.10.0以上がインストールされていることを確認します。
LinuxでのDockerのインストールまたはアップグレードの詳細は、Oracle Container Runtime for Dockerユーザーズ・ガイドを参照してください。
コマンド行インタフェース(CLI)プロファイルの作成
Oracle Functionsを使用する前に、ファンクションの作成およびデプロイに使用するユーザー・アカウントの資格証明プロファイルを含むOracle Cloud Infrastructure CLI構成ファイルが必要です。
Oracle Cloud Infrastructure CLI構成ファイルには、複数のプロファイルを含めることができます。すでに1つ以上のプロファイルを含む構成ファイルがある場合は、Oracle Functionsを使用してファンクションを作成およびデプロイするユーザーの既存のファイルに新しいプロファイルを追加する必要があります。
oci - curlスクリプトのコピーおよび構成
スクリプトを使用して関数を起動できます。oci-curl
スクリプトは、スクリプト本体で指定した資格証明に基づいて署名付きリクエストを作成します。
oci-curl
を使用してファンクションを起動するには、同じテナンシ内のリソースへのアクセス権を付与され、ファンクションと同じコンパートメントに属しているOracle Cloud Infrastructureユーザーの資格証明を指定する必要があります。
通常は、開発環境用に構成されたファンクション開発者としてファンクションを呼び出します。次の手順では、その場合を想定しています。
Fn Projectコマンド行インタフェース(CLI)のインストール
Oracle Functionsを使用する前に、Fn Projectのコマンドライン・インタフェース(CLI)を開発環境にインストールする必要があります。
この手順では、curlを使用してLinuxインスタンスにCLIをインストールします。その他のオペレーティングシステムの手順は、GitHubのFn Projectのreadmeファイルに記載されています。
Fnコマンド・ライン・インタフェース・コンテキストの作成
Fn Projectコマンドライン・インタフェース(CLI)は、最初にインストールされると、ローカル開発用に構成されます。Oracle Cloud Infrastructureテナンシに接続するようにFn ProjectのCLIを構成するには、新しいコンテキストを作成する必要があります。
コンテキストは、Oracle Functionsエンドポイント、デプロイされたファンクションが属するコンパートメントのOCID、およびイメージのプッシュとプルを行うDockerレジストリのアドレスを指定します。それぞれが.yaml形式で異なるコンテキスト・ファイルに格納されている複数のコンテキストを定義できます。
認証トークンの作成
Oracle Cloud Infrastructureでファンクションをデプロイするには、DockerをOracle Cloud Infrastructure Registryにサインインするときにパスワードとして使用する認証トークンを作成する必要があります。
- Oracle Cloud Infrastructureコンソールにサインインし、「ユーザー」アイコンをクリックして、「ユーザー設定」を選択します。
- 新しい認証トークンを作成するには、「リソース」セクションで「認証トークン」をクリックし、「トークンの生成」をクリックします。
- 認証トークンの説明を入力し、「トークンの生成」をクリックします。表示されたら、トークンをコピーします。
- 「コピー」リンクをクリックして、トークン情報をセキュアな場所に格納します。これは、ダイアログを閉じると、コンソールにトークンが再度表示されなくなるためです。
- 「閉じる」をクリックします。
Oracle Cloud Infrastructure Registryにサインイン
Oracle Functionsを使用する前に、ファンクションをDockerイメージとして格納するDockerレジストリにDockerをサインインする必要があります。これは、Fn Projectのコマンドライン・インタフェース(CLI)コンテキストで以前に指定したDockerレジストリです。
- 開発環境でのDockerのインストールおよび起動
- Fnコマンド行インタフェース(CLI)のOracle Cloud Infrastructureコンテキストを作成しました
- ユーザーのOracle Cloud Infrastructure認証トークンを作成しました
ファンクションは、Oracle Cloud Infrastructure上に構築されたOracle管理レジストリであるOracle Cloud Infrastructure Registryのパブリック・リポジトリおよびプライベート・リポジトリに格納できます。
次のステップを完了するには、Oracle Cloud Infrastructure Object Storageのテナンシ・ネームスペース、ユーザー名およびユーザーの認証トークンを指定する必要があります。
DockerをOracle Cloud Infrastructure Registryにサインインするには: