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ソースプロセスレコードを構成する

推薦する

一意の注文番号を生成するためのMySQLの高同時実行方法

序文このブログ記事が公開された後、何人かの友人からSQL Serverバージョンがあるかどうか尋ねら...

RedisとMemcacheの比較と選び方

最近 redis を使っていて、とても便利だと感じているのですが、インメモリ データベースを選択する...

MySQL のフィールドにデフォルトの時間を追加する方法

日付型の違いと用途MySQL には、日付、時刻、年、日付時刻、タイムスタンプの 5 つの日付タイプが...

Linux での Python のアップグレードと pip のインストールの詳細な説明

Linuxバージョンのアップグレード: 1. まず、Linuxオペレーティングシステムに付属するPy...

小さな画面のモバイルデバイス向けにWebページを設計する際に注意すべきこと

その理由は、このタイプの Web ページが WAP と呼ばれるワイヤレス プロトコルから生成されたた...

CSS3に基づいてiPhoneを描く

結果:実装コードhtml <div class='iphone'> &l...

JavaScript のマクロタスクとマイクロタスクの詳細

目次1. マイクロタスクとは何ですか? 2. マクロタスクとは何ですか? 3. 事例3.1 結論4....

Vue パッケージアップロードサーバー更新 404 問題に対する 2 つの解決策

1: nginxサーバーソリューション、.conf構成ファイルを変更する解決策は2つある1: 位置 ...

テキストエリアタグはサイズ変更できず、マウスでドラッグすることもできません

テキストエリアタグのサイズは不変ですコードをコピーコードは次のとおりです。 <textarea...

Apache Log4j2 が核レベルの脆弱性と迅速な修正を報告

Apache Log4j2 が核レベルの脆弱性を報告し、スタックリーダーの友人たちは大騒ぎになりまし...

Ubuntu で VIM を C++ 開発エディタとして設定する

1. 設定ファイルをユーザー環境にコピーし、新しい.vimフォルダを作成し、バンドルサブフォルダを作...

Linux 上でプライベート Git サーバーを構築するための詳細なチュートリアル

1. サーバーのセットアップリモート リポジトリは実際にはローカル リポジトリと何ら変わりなく、純粋...

ウェブページの右下隅に「いいね!」カード効果を実現するための CSS (サンプルコード)

効果 HTML を実装するには、まずクリーンな HTML ページを準備し、ノードを記述します。 &l...

Linux システム MySQL8.0.19 クイックインストールと構成チュートリアル図

目次1. 環境の紹介2. MySQL-8.0.19をインストールする3. MySQLを設定する1. ...

vue3でDOMをマウントするためのプラグインを書く際の問題について

vue2と比較して、vue3にはアプリの概念が追加され、vue3プロジェクトの作成も // メイン....