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 パラメータの例と概要

推薦する

Docker に MySQL と MariaDB をインストールする方法

MySQLとMariaDBの関係MariaDB データベース管理システムは MySQL のブランチで...

Vueはシンプルなメモ帳機能を実装します

この記事では、参考までに、簡単なメモ帳機能を実装するためのVueの具体的なコードを紹介します。具体的...

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

目次1. nodejsをダウンロードする2. ダブルクリックしてインストール3. グローバル npm...

リフレッシュリダイレクトを実現する HTML ヘッドタグメタ

コードをコピーコードは次のとおりです。 <html> <ヘッド> <m...

ウェブサイトのパフォーマンスを向上させるためのウェブサーバーの改善

<br />このシリーズの最初のセクションでは、Web サイトのパフォーマンスを向上させ...

CocosCreatorを使ってシューティングゲームを作る方法

製造手順を分析します。 1. リソースを準備してシーンを構築するオンラインでリソースを探すか、私のリ...

Windows の MySQL net start mysql MySQL サービスの起動エラーが発生する システムエラーの解決

目次1- エラーの詳細2-シングルソリューション2.1-ディレクトリ C:\Windows\Syst...

Docker+Selenium Grid に基づく技術アプリケーションをテストするためのサンプル コード

Selenium Grid の紹介Selenium Grid のいくつかの新しい機能は、今後リリース...

Centos7 で Java8 と MySQL をインストールしてデプロイする

通常、Java の学習とプロジェクトのデプロイはローカルで行われますが、実稼働環境は Linux 環...

Dockerは単一のイメージを使用して複数のポートにマッピングします

必要:公式サイトのリソースサーバーは確かに1つのインスタンスでは使えず、複数のインスタンスを一緒に使...

JavaScript が Jingdong のカルーセル効果を模倣

この記事では、JD.comのカルーセル効果の表示を実現するためのJavaScriptの具体的なコード...

Vueはカウントダウン機能を実装する

この記事の例では、カウントダウン機能を実装するためのVueの具体的なコードを参考までに共有しています...

Vue-router ネストルーティングの詳細な説明

目次ステップ1. ルーティング ルールを設定し、子構成項目を使用します。 2. ジャンプ(フルパスを...

MySQL がデフォルトの分離レベルとして繰り返し読み取りを選択する理由

目次Oracle 分離​​レベルMySQL 分離レベル要約する多くの読者は、MySQL のトランザク...