IBM Cloud Docs
パブリック・レジストリー内のイメージからのアプリ・ワークロードのデプロイ

パブリック・レジストリー内のイメージからのアプリ・ワークロードのデプロイ

Code Engine でアプリをデプロイします。 コンソール または CLI を使用して アプリを作成できます。

コンソールからアプリをデプロイする

Code Engineコンソールを使用して、資格情報を必要としないパブリック・レジストリーからのイメージを含むアプリケーションをデプロイします。

この例では、IBM Cloud® Container Registry 内のパブリックicr.io/codeengine/helloworldイメージを参照します。 あるいは、パブリック Docker ハブまたはプライベート・レジストリー内のイメージ内のイメージを参照することもできます。

  1. Code Engine コンソールを開きます。
  2. 「始めましょう」 を選択します。
  3. **「アプリケーション」**を選択します。
  4. アプリケーションの名前を入力します。 プロジェクト内で固有のアプリケーション名を使用してください。
  5. 選択可能なプロジェクトのリストからプロジェクトを選択します。 新規作成することもできます。 アプリをデプロイするには、選択したプロジェクトがなければなりません。
  6. アプリのコンテナー・イメージを指定します (例: icr.io/codeengine/helloworld)。 アプリ用のコンテナイメージに変換したいソースコードをお持ちの場合は 、「ビルドの計画」 を参照してください。 この例で使用されるコードについて詳しくは、 helloworldを参照してください。
  7. エンドポイントまたはランタイム設定のデフォルト値を変更します。 これらのオプションについて詳しくは、アプリのエンドポイント可視性のオプション および アプリをデプロイするためのオプションを参照してください。
  8. 「作成」 をクリックします。
  9. アプリケーションの状況が**「準備完了 (Ready)」**に変わったら、アプリケーションをテストできます。 **「アプリケーションのテスト (Test application)」をクリックしてから、「アプリケーションのテスト (Test application)」ペインで「要求の送信」をクリックします。 Web ページでアプリケーションを開くには、「アプリケーション URL (Application URL)」**をクリックします。

アプリケーションのデプロイが完了したので、アプリケーション・リビジョンと実行中のインスタンスに関する情報、および構成の詳細を表示できます。

CLI でアプリをデプロイする

CLI でアプリを作成してデプロイするには、app create コマンドを使用します。 このコマンドには名前とイメージが必須です。また、オプションの他の引数を指定することもできます。 オプションの全リストについては、ibmcloud ce app create コマンドを参照してください。

開始前に

以下の**application create**コマンドは、myappという名前のアプリを作成してデプロイし、コンテナー・イメージicr.io/codeengine/helloを使用します。

ibmcloud ce application create --name myapp --image icr.io/codeengine/hello

出力例

Creating application 'myapp'...
OK
[...]
Run 'ibmcloud ce application get -n myapp' to check the application status.
OK

https://myapp.4idmmq6xpss.us-south.codeengine.appdomain.cloud

以下の表は、この例の app create コマンドで使用されるオプションの要約です。 コマンドとそのオプションについて詳しくは、ibmcloud ce app create コマンドを参照してください。

コマンドの説明
オプション 説明
--name

アプリケーションの名称。 プロジェクト内で固有の名前を使用します。 この値は必須です。

  • 名前は小文字で始まる必要があります。
  • 名前は小文字の英数字で終わる必要があります。
  • 名前は 55 文字以下でなければならず、文字、数字、およびハイフン (-) を使用できます。
--image このアプリケーションに使用するイメージの名前。 この値は必須です。 形式は REGISTRY/NAMESPACE/REPOSITORY:TAG です。REGISTRYTAG はオプションです。 TAG を指定しない場合、そのデフォルトは latest です。 Docker Hub 内の画像については、 NAMESPACE/REPOSITORY で画像を指定できます。 Registry のデフォルトは docker.io です。 その他のレジストリーの場合は、REGISTRY/NAMESPACE/REPOSITORY または REGISTRY/NAMESPACE/REPOSITORY:TAG を使用します。

次のステップ

アプリがデプロイされると、アプリの作成方法や以前の更新方法に関係なく、以下の任意の方法でデプロイされたアプリの更新および参照されるコードの更新を行うことができます。

  • Open Container Initiative(OCI)標準に準拠したコンテナイメージをお持ちの場合は、アプリをデプロイする際に、コンテナレジストリの場所を指すイメージへの参照のみを提供する必要があります。 パブリック・レジストリー または プライベート・レジストリー 内のイメージを使用してアプリをデプロイできます。

    app create コマンドを使用してアプリを作成し、 --build-source オプションを指定してローカルまたはリポジトリー・ソースからコンテナー・イメージをビルドし、別のコンテナー・イメージを指すようにアプリを変更する場合は、まずアプリからビルドの関連付けを削除する必要があります。 例えば、 ibmcloud ce application update -n APP_NAME --build-clear を実行します。 アプリからビルドの関連付けを削除した後、別のイメージを参照するようにアプリを更新できます。

  • Git リポジトリーにあるソース・コードから開始する場合は、ソースからイメージをビルドし、単一操作でアプリをデプロイする処理を Code Engine に任せることができます。 このシナリオでは、Code Engine はイメージを IBM Cloud® Container Registry にアップロードします。 詳しくは、リポジトリー・ソース・コードからのアプリのデプロイを参照してください。 イメージのビルドをより詳細に制御したい場合は、アプリをデプロイする前に Code Engine を使用してイメージのビルドを選択できます。

  • ローカル・ワークステーションにあるソース・コードから開始する場合は、ソースからのイメージのビルドと単一 CLI コマンドを使用したアプリのデプロイを Code Engine に処理させることができます。 このシナリオでは、Code Engine はイメージを IBM Cloud® Container Registry にアップロードします。 詳しくは、CLI を使用したローカル・ソース・コードからのアプリのデプロイを参照してください。 イメージのビルドをより詳細に制御したい場合は、アプリをデプロイする前に Code Engine を使用してイメージのビルドを選択できます。

    例えば、アプリのソースの開発を進化させながら、ローカル・ソースのビルドを Code Engine に処理させることができます。 その後、イメージが成熟すると、必要な特定のイメージを参照するようにデプロイ済みアプリを更新できます。 必要に応じて、このプロセスを繰り返すことができます。

更新したアプリをデプロイすると、イメージにタグが指定されていない限り、参照されているコンテナー・イメージの最新バージョンがダウンロードされてデプロイされます。 イメージにタグが指定されている場合、タグ付けされたイメージがデプロイメントに使用されます。

コード・サンプルがさらに必要ですか? IBM Cloud Code Engine GitHub repoを確認してください。