はじめに 以前は、Docker イメージは Azure のコンテナー レジストリに保存されていました。最近、独自の Docker レジストリを構築しました。以前 Azure のコンテナー レジストリに保存した Docker イメージを独自の Docker レジストリに同期したいと考えています。 実装のアイデア 私たちの方法は比較的単純で低レベルですが、基本的には要件を満たすことができます。 私たちのアプローチは
その後、Alibaba Cloudにイメージ同期ツールがあるらしいことを突然思い出しました。 https://github.com/AliyunContainerService/image-syncer Docker レジストリ API Dockerレジストリには一連の仕様があり、詳細についてはhttps://docs.docker.com/registry/spec/api/を参照してください。 すべての画像を取得 Dockerレジストリv2では、すべてのイメージを取得するための新しい 構文は次のとおりです。
デフォルトでは、最大 100 件のレコードが返されます。レコード数が 100 を超える場合は、パラメータ 画像タグを取得する docker イメージのタグ リストを取得するには、 操作例 デモ用にテスト用の Docker レジストリがローカルにデプロイされています。テストには httpie を使用します。 ミラーリストを取得します: 画像リストを取得するには
画像のタグリストを取得する
PowerShell スクリプト 自動化されていない運用とメンテナンスはフーリガンです。将来的にも同様のニーズが発生する可能性が非常に高いです。自動的に実行するスクリプトを記述する方がよいでしょう。 以下のスクリプトは、Azure コンテナー レジストリにイメージがあまりなく、50 または 60 イメージ程度しかなく、イメージには最新のタグのみがあり、他のタグはないため、上記の手順は簡略化されており、ページングによってすべてのイメージが取得されるわけではなく、すべてのタグが取得されるわけでもありません。実際に使用する場合は、使用前に自分で変更してください。 # 変数 $srcRegUser = "xxx" $srcRegPwd = "111111" $srcRegHost = "xxx.azurecr.cn" $destRegUser = "yyy" $destRegPwd = "222" $destRegHost = "registry.xxx.com" # ソースレジストリからリポジトリを取得する # httpie $response = (http -b -a "${srcRegUser}:${srcRegPwd}" "https://${srcRegHost}/v2/_catalog") | ConvertFrom-Json # カール #$response = (curl -u "${srcRegUser}:${srcRegPwd}" "https://${srcRegHost}/v2/_catalog") | ConvertFrom-Json # リポジトリ $リポジトリ = $レスポンス.リポジトリ # 書き込みホスト $repositories # ログインソースレジストリ docker ログイン $srcRegHost -u $srcRegUser -p $srcRegPwd # ログイン先レジストリ docker ログイン $destRegHost -u $destRegUser -p $destRegPwd # 同期 foreach($repo と $repositories) { 書き込みホスト "同期 $repo 開始" $srcTag = "${srcRegHost}/${repo}:latest" $destTag = "${destRegHost}/${repo}:latest" Write-Host "ソース画像タグ: $srcTag" Write-Host "dest イメージ タグ $destTag" ホストへの書き込み「docker pull $srcTag begin」 docker pull $srcTag Write-Host "docker pull $srcTag が完了しました" Write-Host "docker tag $srcTag $destTaging" docker タグ $srcTag $destTag ホストへの書き込み「docker push $destTag begin」 docker push $destTag Write-Host "docker push $destTag が完了しました" 書き込みホスト "docker rmi $srcTag $destTag begin" docker rmi $srcTag $destTag 書き込みホスト "docker rmi $srcTag $destTag end" 書き込みホスト「$repo の同期が完了しました」 } ホストへの書き込み「完了しました...」 もっと 多数の画像を同期する必要がある場合は、Alibaba Cloud の画像同期ツールを使用して同期することを検討してください。 参照 https://stackoverflow.com/questions/31251356/docker-registry-v2 上のイメージのリストを取得する方法 https://github.com/AliyunContainerService/image-syncer 詳しくはこちら: 要約する これで、docker レジストリ イメージの同期に関するこの記事は終了です。docker レジストリ イメージに関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: Windows で MySQL マスター スレーブ レプリケーションを構成する方法
成果を達成する実装コードhtml <ヘッダー> <h1><em>...
React は、ユーザー インターフェイスを構築するための JavaScript ライブラリです。F...
本体の幅をウィンドウの幅に設定します(次のスクリプトで制御されます) $("body&qu...
この記事では、MySQL で 2 つのテーブルを関連付ける結合テーブルにインデックスを作成する方法を...
1. 単一マシン環境の構築# 1.1 ダウンロードZookeeper の対応するバージョンをダウンロ...
目次1. JavaScriptの基礎2. 基本的なJavaScript構文3. JavaScript...
昨日は写真をアップロードしてリンクを返す機能を実装していました。プロジェクトが Tomcat に再デ...
VirtualBoxのHost Only+NATモードのネットワーク構成は参考用です。具体的な内容は...
<br />前回の記事:優秀なデザイナーの7つの原則(1):フォントデザイン 英語 原文...
目次背景: Nginx スムーズ アップグレード ソリューションフォールバック手順要約する背景:負荷...
この記事では、例を使用して、MySQL 5.7 で生成された列の使用方法を説明します。ご参考までに、...
目次tf-gpu をダウンロード取得したtf-gpuイメージに基づいて独自のイメージを構築するイメー...
DOM の概念DOM: ドキュメント オブジェクト モデル: ドキュメント オブジェクト モデルは、...
この記事は、参考のためにMySQL 8.0.17のインストールと設定のグラフィックチュートリアルを記...
この記事では、複数の画像を切り替えるJavaScriptの具体的なコードを参考までに紹介します。具体...