Dockerプライベートライブラリの実装

Dockerプライベートライブラリの実装

プライベート Docker レジストリのインストールとデプロイは、Docker テクノロジーを導入、学習、使用するために必要な手順の 1 つです。特に、Docker が組織に受け入れられ、より多くの人々、プロジェクト、製品が Docker を使用し始めると、自作の Docker イメージを保存および配布することが必要になります。 Docker Registry は相変わらず「Docker には落とし穴が多い」という特性を継承しています。そのため、自分の参考と参考にするために、「各種」Registry を構築する過程での手順と遭遇した問題点を記録しておきます。

Registry2 は、イメージ保存用のローカル ディスクをサポートするだけでなく、多くの主流のサードパーティ ストレージ ソリューションもサポートします。分散ストレージ システムを通じて、分散 Docker レジストリ サービスを実装することもできます。

準備する

server1、server2 (server1 はプライベート ライブラリ サーバーとして使用され、server2 は共通クライアントとして使用されます)

サーバー1

1 レジストリをダウンロードする

docker pull レジストリ:最新

2 /etc/default/dockerを設定します。httpsでは証明書のパスワードやその他の複雑な処理が必要なので、insecure-registryを追加するだけです。

# Docker Upstart および SysVinit 構成ファイル

# Docker バイナリの場所をカスタマイズします (特に開発テスト用)。
#DOCKER="/usr/local/bin/docker"

# DOCKER_OPTS を使用してデーモンの起動オプションを変更します。
#DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"
DOCKER_OPTS="--insecure-registry 127.0.0.1:5000"
# Docker で HTTP プロキシを使用する必要がある場合は、ここで指定することもできます。
#エクスポート http_proxy="http://127.0.0.1:3128/"

# これは、Docker の一時ファイルの保存場所を調整するのにも便利な場所です。
#エクスポート TMPDIR="/mnt/bigdrive/docker-tmp"

3 レジストリを起動する

sudo docker run --name registry -d -p 5000:5000 -v /home/docker_registry:/var/lib/registry --restart=always registry:latest

4タグミラー

docker タグ redis server1:5000/redis

5 プライベート画像をプッシュして保存する

docker プッシュサーバー1:5000/redis

5.1 プライベートリポジトリにプッシュされたイメージを表示する

$ docker 検索 10.10.105.71:5000/tonybai/busybox/
デーモンからのエラー応答: 予期しないステータス コード 404
しかし、API の v2 バージョンを使用すると、同じ目的を達成できます。

$curl http://10.10.105.71:5000/v2/_catalog
{"リポジトリ":["tonybai/busybox"]}

サーバー2(クライアント)

Docker レジストリでは、非セキュア レジストリ モードを使用する場合、レジストリと対話するすべてのホスト上の Docker デーモンを –insecure-registry オプションで構成する必要があると記載されています。このモードに加えて、証明書を構成することもできますが、ここでは説明しません。

1 セキュアでないレジストリを構成する (centos:/etc/sysconfig/docker ubuntu:/etc/default/docker)

# Docker Upstart および SysVinit 構成ファイル

# Docker バイナリの場所をカスタマイズします (特に開発テスト用)。
#DOCKER="/usr/local/bin/docker"

# DOCKER_OPTS を使用してデーモンの起動オプションを変更します。
#DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"
DOCKER_OPTS="--insecure-registry server1:5000"
# Docker で HTTP プロキシを使用する必要がある場合は、ここで指定することもできます。
#エクスポート http_proxy="http://127.0.0.1:3128/"

# これは、Docker の一時ファイルの保存場所を調整するのにも便利な場所です。
#エクスポート TMPDIR="/mnt/bigdrive/docker-tmp"

2 ダウンロード

docker pull server1:5000/redis

3 プッシュを送信

docker タグ redis server1:5000/redis
docker プッシュサーバー1:5000/redis

参照:
http://www.cnblogs.com/xcloudbiz/articles/5526262.html

dockerプライベートライブラリの構築と実装に関するこの記事はこれで終わりです。dockerプライベートライブラリの構築に関するより関連性の高いコンテンツについては、123WORDPRESS.COMの以前の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • プライベートウェアハウス(レジストリとハーバー)を構築するためのDockerの実装
  • プライベートイメージウェアハウスを構築するためのDockerレジストリの実装方法
  • Docker はプライベート ウェアハウス (レジストリ、ハーバー) を構築します
  • プライベートDockerレジストリを構築する方法
  • Dockerプライベートウェアハウスレジストリの構築と検証の詳細説明
  • Docker Registry プライベート ウェアハウスを構築するための詳細な手順
  • プライベート Docker レジストリの設定に関するチュートリアル

<<:  Vueのスロットの詳細な説明

>>:  MySQL ストアド プロシージャの in、out、inout パラメータの例と概要

推薦する

MySQL におけるデータタイムとタイムスタンプの違い

MySQL には 3 つの日付型があります。日付(年-月-日)テーブル test(hiredate ...

WeChatミニプログラムマップの使い方を詳しく解説

この記事の例では、WeChatアプレットマップで使用される具体的な実装コードを参考までに共有していま...

コーディングスキルを向上させるためのJavaScriptのヒント

目次1. 一意の値をフィルタリングする2. 短絡評価2.1 シナリオ例3. ブール変換4. 文字列を...

Electronで不規則な形状の透明部分をクリックする実装

目次不規則なフォームの実装透明な部分をクリックする不規則なフォームの実装ここでは円形フォームを実装し...

MySQL explain クエリ命令情報の取得原理と例

explain はクエリ実行プラン情報を取得するために使用されます。 1. 文法次のように、sele...

Reactでパスワード強度検出器を実装する方法

目次序文使用コンポーネントの記述データ構造分析プロセス分析基礎コードの分析他の要約する序文パスワード...

CSSを使用してすべての子要素を選択する方法の詳細な説明

CSS を使用してすべての子要素を再帰的に選択するにはどうすればよいですか?以下の記事では、CSS ...

Docker で ElasticSearch をデプロイする方法

1. ElasticSearch とは何ですか? Elasticsearch も Java で開発さ...

MySQL開発標準と使用スキルの概要

1. 命名規則1. データベース名、テーブル名、フィールド名には小文字を使用し、アンダースコアで区切...

MySQL データベースの基本的な SQL ステートメントの概要

この記事では、例を使用して、Mysql データベースの基本的な SQL ステートメントについて説明し...

LeetCode の SQL 実装 (196. 重複するメールボックスを削除する)

[LeetCode] 196.重複したメールを削除するSQL クエリを記述して、Person とい...

MySQL データベースは SQL ステートメントを知っている必要があります (拡張バージョン)

拡張版です。質問とSQL文は以下の通りです。ユーザー テーブルを作成し、id、name、gender...

JS の querySelector メソッドと getElementById メソッドの違い

目次1. 概要1.1 querySelector() と querySelectorAll() の使...

Linux ディレクトリ切り替え実装コード例

ファイルの切り替えは Linux でよく行われる操作です。Linux を初めて学ぶときに最初に触れる...

MySQL のデータ統計に関するヒント

よく使用されるデータベースである MySQL では、多くの操作が必要です。デジタル操作には非常に便利...