B.2 アプリケーション・イメージのリモート・リポジトリへのプッシュ

アプリケーションの構築したDockerイメージをリモート・リポジトリにプッシュします。

構築したコンテナ・イメージは、ローカル・リポジトリで使用することができます。このイメージをリモート・リポジトリにプッシュする必要があります。Helmを使用してこのイメージにアクセスできるようにするためです。後で、Helmを使用してアプリケーションをインストールします。

Oracle Cloud Infrastructure Registryを使用している場合は、Oracle Cloud Infrastructure Registryへのイメージのプッシュを参照してください。他のKubernetesプラットフォームを使用している場合は、この項で説明する手順を使用します。

開始する前に、次のタスクを完了してください。
  • コンテナ・イメージのアップロード先のリモート・プライベート・リポジトリを指定します。新しいリモートDockerリポジトリを作成することも、既存のリモートDockerリポジトリを使用することもできます。アクセスを制限するにはプライベート・リポジトリを使用します。リモートDockerリポジトリを使用する際、リモートDockerリポジトリにイメージをプッシュする必要があるのは1回のみですが、作成したKubernetesクラスタにイメージを複数回プルできます。
  • リモートDockerリポジトリにアクセスするためのKubernetesシークレットを作成します。DockerレジストリにアクセスするためのKubernetesシークレットの作成を参照してください。
  1. イメージのプッシュ先のリモート・プライベート・リポジトリにログインするための資格証明を指定します。
    docker login <repo>

    使用しているKubernetesプラットフォームに基づいてログイン資格証明を指定します。

  2. ローカル・コンテナ・レジストリで、プッシュするイメージのタグを識別します。

    このイメージのタグを書き留めておいた場合は、このステップをスキップします。

    1. 次のコマンドを実行して、Dockerイメージをリストします。
      docker images
    2. プッシュするイメージのタグをコピーします。この情報は後で指定する必要があります。
  3. 次のコマンドを使用して、リモートDockerリポジトリにプッシュするイメージの一意のタグを指定します。

    構文

    docker tag local_image_tag remote_image_tag

    説明

    • local_image_tagは、イメージがローカル・リポジトリ内で識別されるタグです。
    • remote_image_tagは、リモートDockerリポジトリ内でイメージを識別するためのタグです。

    コマンド例

    docker tag myApp123 <region-key>.ocir.io/otmmrepo/myApp123

    ここで、<region-key>.ocir.io/otmmrepoは、イメージ・ファイルmyApp123のプッシュ先のOracle Cloud Infrastructure Registryです。他のKubernetesプラットフォームを使用している場合は、ご使用の環境に基づいてレジストリの詳細を指定します。

  4. ローカル・リポジトリからリモートDockerリポジトリにDockerイメージをプッシュします。

    構文

    docker push remote_image_tag
    コマンド例
    docker push <region-key>.ocir.io/otmmrepo/myApp123

リモートDockerリポジトリのDockerイメージのタグを書き留めます。リモートDockerリポジトリからイメージをプルする際に、このタグを入力する必要があります。