Oracle Cloud Infrastructureドキュメント

10. 「Oracle Cloud Infrastructureレジストリ」へのログイン

Oracle Functionsを使用する前に、DockerをDockerイメージとして格納するDockerレジストリにログインする必要があります。 これは、Fn Project CLIコンテキスト(「6. Oracle Cloud Infrastructureに接続するFn Project CLIコンテキストの作成」を参照)で指定されたDockerレジストリです。

Oracle Cloud Infrastructure上に構築されたOracle管理のレジストリである「Oracle Cloud Infrastructureレジストリ」に、パブリックおよびプライベートのリポジトリにファンクションを格納できます。

Dockerレジストリにログインする場合、適切な認証の詳細を指定する必要があります。 たとえば、「Oracle Cloud Infrastructureレジストリ」の場合は、テナンシ・オブジェクト・ストレージ・ネームスペース、ユーザー名およびユーザー認証トークンを指定する必要があります。

このトピックのステップでは、「9. Dockerを起動」ですでにステップを完了していることを前提としています。

DockerをOracle Cloud Infrastructureレジストリにログインするには:

  1. ファンクション開発者として開発環境にログインします。

  2. ターミナル・ウィンドウで、次を入力して「Oracle Cloud Infrastructureレジストリ」にログインします:

    $ docker login <region-code>.ocir.io

    ここで、<region-code>は、Fn Project CLIコンテキストで指定された「Oracle Cloud Infrastructureレジストリ」リージョンのコードです(「6. Oracle Cloud Infrastructureに接続するFn Project CLIコンテキストの作成」を参照)。 たとえば、フェニックス用のphxなどです。 リージョン・コードのリストは、「リージョン名およびリージョン・コード別の可用性」を参照してください。

    例えば:

    $ docker login phx.ocir.io
  3. 「ユーザー名」の入力を求められたら、ファンクションを作成およびデプロイするためにOracle Functionsとともに使用するユーザーの名前を、次の形式で入力します:

    <tenancy-namespace>/<username>

    <tenancy-namespace>は、リポジトリを作成するテナンシの自動生成された「オブジェクト・ストレージ」ネームスペース文字列です(「テナンシ情報」ページに表示)。 たとえば、ansh81vru1zp/jdoe@acme.comです。

    一部の古いテナンシの場合、ネームスペース文字列がすべて小文字のテナンシ名(acme-devなど)と同じである可能性があります。

    テナンシがOracle Identity Cloud Serviceでフェデレーテッド化されている場合は、<tenancy-namespace>/oracleidentitycloudservice/<username>という形式を使用します。

    指定したユーザーのOracle Cloud Infrastructure認証トークンがすでに生成されている必要があります(「8.認証トークンを生成してOracle Cloud Infrastructureレジストリへのログインを有効化」を参照)。

  4. 「パスワード」の入力を求められたら、ユーザーOracle Cloud Infrastructure認証トークンを入力します。 パスワードを入力した場合、DockerはパスワードをDocker構成ファイルに暗号化しないで格納することを警告する可能性があります。 警告には、資格証明ヘルパーの構成方法を調べることができる「Dockerドキュメントへのリンク」が含まれます。 Oracleでは、Docker documentationの情報を確認し、セキュリティを強化するために外部資格証明ストアを使用することを検討します。

このトピックのステップを完了すると、クライアント環境の構成タスクが完了します。 「ファンクション開発のための構成の検証」にアクセスして、Fn Project CLIがAPIエンドポイントと通信できることを確認します。