Alibaba Cloud イメージリポジトリを使用して外部 Docker イメージを構築する方法の詳細な説明

Alibaba Cloud イメージリポジトリを使用して外部 Docker イメージを構築する方法の詳細な説明

Alibaba Cloud Image Repositoryを使用して外部イメージをダウンロードする

Docker や K8S を日常的に使用する際には、海外の Web サイトからイメージをダウンロードする必要があることがよくありますが、一部の Web サイトは中国ではアクセスできません。この問題を解決するには、Alibaba Cloud が提供するイメージ リポジトリを使用してイメージをダウンロードし、それをローカル コンピューターにプルしてタグを変更し、実装します。

たとえば、K8S を使用して Istio をデプロイする場合は、gcr.io/istio-testing/install-cni:1.5-dev イメージをダウンロードする必要があります。次の手順に従って、Alibaba Cloud でビルドしてダウンロードできます。

1. Githubを設定する

まずGithubにログインし、image-buildなどの名前でイメージをビルドするためのリポジトリを作成します。

ローカルコンピュータに、たとえばdockerImageという名前のフォルダを作成します。

dockerImage ディレクトリに入り、Github のリポジトリをローカル マシンにクローンします。

https://github.com/CoderX-Aaron/image-build.git

クローン作成が完了したら、image-build ディレクトリに移動し、次の内容を含む install-cni という名前の Dockerfile を作成します。

gcr.io/istio-testing/install-cni:1.5-dev から

作成した Dockerfile ファイルを git に送信し、ブランチ名を master として指定します (Github でリポジトリを作成するときにデフォルトの最初のブランチ名に合わせて変更します)。

git で install-cni を追加します
git commit -m "install-cni イメージをビルドするための Dockerfile を作成する"
git ブランチ -M マスター

Git のコンテンツを Github にプッシュします。

git プッシュ -u origin マスター

2. Alibaba Cloudを構成する

Alibaba Cloud でイメージリポジトリを構成してビルドする手順は次のとおりです。

Alibaba Cloudコンソールにログインし、コンテナイメージサービスに入ります。

左のタブの代碼源をクリックし、Githubアカウントをバインドします

バインディングが完了したら、左側のタブでイメージリポジトリをクリックして、名前空間、リポジトリ名、概要情報の作成を開始し、[次へ]をクリックします。

コード ソースで Github、名前空間で CoderX-Aaron (つまり Github のユーザー名)、リポジトリで image-build を選択します。下のビルド設定で、海外機器構建をチェックし、Create Mirror Repositoryをクリックします。

リポジトリを作成したら、「リポジトリの管理」をクリックし、左側のタブで「ビルド」を選択します。まず、ビルド ルールで新しいビルド ルールを設定します。Dockerfile ディレクトリのパスとファイル名に注意してください。これは Github のものと一致している必要があります。

ビルド ルールを作成したら、対応するルールの背後にある [今すぐビルド] ボタンをクリックしてイメージのビルドを開始します。

3. イメージをプルする

イメージが正常にビルドされると、「イメージ バージョン」タブにビルドされたイメージが表示されます。次に、イメージをローカル コンピューターにプルします。手順は次のとおりです。

まず、ローカルマシンのコマンドラインで Alibaba Cloud Mirror Repository にログインします。ログインに使用するユーザー名は Alibaba Cloud アカウントのフルネーム、パスワードはサービスを起動したときに設定したパスワードです。

docker ログイン --username=ユーザー名 registry.cn-hangzhou.aliyuncs.com

レジストリからローカルにイメージをプルする

docker pull registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:v1

画像タグを変更する

docker タグ registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:v1 gcr.io/istio-testing/install-cni:1.5-dev

これにより、install-cni イメージのダウンロードが完了し、K8S のイメージ プル ポリシーがIfNotPresentまたはNeverに変更されます。

4. イメージをAlibaba Cloudにプッシュする

ローカルイメージを Alibaba Cloud にプッシュするには、まずローカルイメージのタグを変更する必要があります。

docker タグ [イメージ ID] registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:[イメージ バージョン番号]

次に、イメージをプッシュします。

docker push registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:[イメージバージョン番号]

Alibaba Cloud のイメージリポジトリを使用して外部の Docker イメージを構築する方法についてはこれで終わりです。Alibaba Cloud で外部の Docker イメージを構築する方法の詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Centos7 システムで Docker ローカル イメージ ウェアハウスを構築する方法
  • Docker でプライベートイメージリポジトリを作成する方法のチュートリアル
  • Docker用国産イメージウェアハウスの使い方
  • Alibaba Cloud イメージリポジトリの Docker 構成変更の実装
  • .NETCore Dockerはコンテナ化とプライベートイメージリポジトリ管理を実装します
  • Dockerが独自のローカルイメージリポジトリを構築するための手順
  • CentOS 7.2 サーバー上にプライベート Docker イメージ リポジトリを設定する例
  • HarborをベースにしたDockerプライベートイメージリポジトリの構築の詳細な説明
  • DockerでAlibaba Cloudイメージリポジトリを使用する方法
  • Docker でプライベートイメージリポジトリを構築する方法
  • Dockerイメージリポジトリの使い方

<<:  HTML メタタグの使用の概要 (推奨)

>>:  nodejsとyarnをインストールし、Taobaoソースプロセスレコードを構成する

推薦する

Vue3 の動的コンポーネントはどのように機能しますか?

目次1. コンポーネントの登録1.1 グローバル登録1.2 グローバルコンポーネントの登録プロセス1...

Gogs+Jenkins+Docker による .NetCore ステップの自動デプロイ

目次環境説明DockerのインストールゴグのインストールDocker で .NetCore サービス...

W3C チュートリアル (10): W3C XQuery アクティビティ

XQuery は、XML ドキュメントからデータを抽出するための言語です。 XQuery は、XML...

nginxリバースプロキシwebSocket設定の詳細な説明

最近、プロジェクトで作業しているときに webSocket プロトコルを使用し、WeChat アプレ...

純粋なCSSを使用してスイッチ効果を実現する

まずアイデアはこの効果を実現するには、 <input type="checkbox&...

MySQLは、where in()順序ソートを実装するためにfind_in_set()関数を使用します。

この記事では、MySQL で find_in_set() 関数を使用して where in() の順...

Vueのシンプルストアの詳しい説明

Vue におけるストアの最も単純な応用はグローバル ストレージです。ここでは、相互にジャンプするため...

MySQL データベースのステートメント ワイルドカード ファジー クエリの概要

MySQL エラー: パラメータ インデックスが範囲外です (1 > パラメータ数、つまり 0...

MySQL ストレージエンジンの簡単な紹介

1. MySQL アーキテクチャストレージ エンジンを紹介する前に、まずは MySQL アーキテクチ...

ElementuiはデータをxlsxとExcelテーブルにエクスポートします

最近、Vue プロジェクトについて知り、ElementUI でデータを xlsx および Excel...

ジョセフリング問題を解決する 3 つの JavaScript メソッド

目次概要問題の説明循環リンクリスト順序付き配列数学的再帰要約する概要ジョセフ・リング問題は、ジョセフ...

JavaScript でロジック判定コードを最適化する方法

序文日常生活で使用する論理的判断文には、if...else...、switch...case...、...

JSの矢印関数におけるこのポイントの詳細な説明

矢印関数は ES6 の新機能です。独自の this はありません。その this ポイントは外部のコ...

Dockerに関するよくある質問

Docker はポートを IPv6 にのみマッピングし、IPv4 にはマッピングしません。 dock...

12個のJavascriptテーブルコントロール(DataGrid)が整理されています

DataGrid コントロールの DataSource プロパティがデザイン時に設定されている場合、...