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-connector-java ドライバのバージョン問題の概要

Mysql-connector-java ドライバのバージョンの問題私のデータベースのバージョンは ...

IDEA は MySQL への接続時にエラーを報告します。サーバーが無効なタイムゾーンを返します。タブに移動して serverTimezone プロパティを設定してください。

これからの道は常に困難で、棘だらけです。歯を食いしばって、乗り越えられると信じてください。さあ、さあ...

Centos7 ベースの Varnish キャッシュ プロキシ サーバーを展開する

1. ワニスの概要1. ワニスの紹介Varnish は、新しいソフトウェア アーキテクチャを使用し、...

CentOS7にNginxをインストールして自動起動を設定する方法

1.公式サイトからインストールパッケージをダウンロードするhttp://nginx.org/en/d...

JavaScript のデシェイクとスロットリングの例

目次安定スロットル: 手ぶれ防止: 一定時間内に最後のタスクのみを実行します。スロットル: 一定期間...

CSSのclip-pathプロパティを使用して不規則なグラフィックを表示する

clip-path CSS プロパティはクリッピングを使用して要素の表示可能領域を作成します。領域内...

一般的でない js 演算演算子の概要

目次2. カンマ演算子3. JavaScript Null 結合演算子 (??) 4. JavaSc...

MySQL データ挿入最適化メソッドconcurrent_insert

スレッドがテーブルに対して DELAYED ステートメントを実行するときに、そのようなハンドラーが存...

デザイン理論:テキスト表現とユーザビリティ

<br />テキストデザインでは、通常、テキストのレイアウト、つまりテキストをより美しく...

MySQL 8.0.19 のインストールと設定方法のグラフィックチュートリアル

この記事は、参考のためにMySQL 8.0.19のインストールと設定のグラフィックチュートリアルを記...

JavaScriptカスタムオブジェクトメソッドの概要

目次1. オブジェクトを使用してオブジェクトを作成する2. コンストラクタを使用してオブジェクトを作...

グループフィールドを 1 行に書き込むための mysql group_concat メソッドの例

この記事では、MySQL group_concat を使用してグループ化されたフィールドを 1 つの...

js の一般的でない演算子と演算子の概要

一般的な演算子と JavaScript の演算子の概要カテゴリオペレーター算術演算子+、–、*、/、...

div の幅が width:100% に設定されていて、パディングまたはマージンが親要素を超えてしまう問題の解決方法

序文この記事では、div の幅を 100% に設定し、親要素を超えてパディングまたはマージンを設定す...

Nginx で CDN サーバーを構築する方法の詳細な説明 (画像とテキスト)

Nginxのproxy_cacheを使用してキャッシュサーバーを構築する1: ngx_cache_...