プライベートDockerリポジトリであるHarborをインストールするための詳細な手順

プライベートDockerリポジトリであるHarborをインストールするための詳細な手順

Harborのインストールは非常に簡単ですが、Dockerログインで行き詰まってしまいました。このブログを書いている間に、かなり時間をかけて再インストールしました。


1. 2台のサーバーを準備する

  • セントロス7
  • 港 10.19.46.15
  • クライアント 10.19.44.31

2. Harborはdockerとdocker-composereをインストールする必要がありますが、クライアントはdockerのみをインストールする必要があります。

Dockerのインストール

yum インストール -y yum-utils デバイスマッパー永続データ lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum -y で docker-ce をインストールします
systemctl ドッカーを起動する

Docker Compose のインストール

Docker Compose インストール yum インストール epel-release
python-pip をインストールします
pip で docker-compose をインストールします
yum git をインストール

harbor1.8 ダウンロード

https://github.com/goharbor/harbor/releases

解凍する

[root@harbor harbor]#ll
総投与量 32
-rw-r--r--。1 ルート ルート 4519 5月21日 15:59 harbor.yml
-rwxr-xr-x. 1 ルート ルート 5088 5月21日 15:59 install.sh
-rw-r--r--。1 ルート ルート 11347 5月21日 15:59 ライセンス
-rwxr-xr-x. 1 ルート ルート 1654 5月21日 15:59 準備

harbor.ymlを修正する

ホスト名 ローカルIPをここに設定

harbor_admin_password ウェブページのパスワード

走る

sh ./install.sh

インストール成功

......
ステータス: goharbor/harbor-registryctl:v1.8.0 の新しいイメージをダウンロードしました
港ログを作成中...完了
harbor-db を作成しています...完了
レジストリを作成しています...完了
redis を作成しています...完了
registryctl を作成しています...完了しました
ハーバーコアを作成中...完了
harbor-jobservice を作成しています...完了
港湾ポータルを作成中...完了
nginx を作成しています...完了

✔ ----Harbor が正常にインストールされ、起動しました。----

これで、http://10.19.46.15 にある管理ポータルにアクセスできるはずです。 
詳細については、https://github.com/goharbor/harbor をご覧ください。

ページを訪問

http://10.19.46.15

停止したり、サーバーが再起動したりする場合は、手動で再起動する必要があります。 harbor インストール ディレクトリでコマンドを実行します。

[root@harbor harbor]#ll
総投与量40
drwxr-xr-x. 3 ルート ルート 20 5月 22 22:24 共通
-rw-r-----。1 ルート ルート 5183 5月22日 22:24 docker-compose.yml
-rw-r--r--。1 ルート ルート 4514 5月22日 22:23 harbor.yml
-rwxr-xr-x. 1 ルート ルート 5088 5月21日 15:59 install.sh
-rw-r--r--。1 ルート ルート 11347 5月21日 15:59 ライセンス
-rwxr-xr-x. 1 ルート ルート 1654 5月21日 15:59 準備

# 停止 [root@harbor harbor]# docker-compose stop
nginx を停止しています...完了
港湾ポータルを停止しています...完了
harbor-jobservice を停止しています...完了
ハーバーコアを停止しています...完了
registryctl を停止しています...完了
redis を停止しています...完了
レジストリを停止しています...完了
harbor-db を停止しています...完了
港湾ログを停止しています...完了

# [root@harbor harbor]# docker-compose start を実行
ログを開始...完了
postgresql を起動しています...完了
redis を起動しています...完了
レジストリを開始しています...完了
コアを起動します...完了
ジョブサービスを開始しています...完了
ポータルを起動しています...完了
プロキシを起動しています...完了
registryctl を起動しています...完了しました

別のサーバー(クライアント)のハーバーにログインする

[root@client ~]# dockerログイン 10.19.46.15
ユーザー名: admin
パスワード: 
デーモンからのエラー応答: Get https://10.19.46.15/v2/: dial tcp 10.19.46.15:443: connect: connection declined

これは、docker バージョン 1.3.2 以降、デフォルトの docker レジストリが https を使用するためです。Harbor ではデフォルトで http を使用するように設定しているため、docker login、pull、push などのコマンドを実行して非 https docker レジストリを操作すると、エラーが報告されます。

httpsを解決する

ハーバーサーバーのハーバーインストールディレクトリ内

vim docker-compose.yml 

次に、ハーバーとクライアントの docker 構成ファイルを同時に編集します。10.19.46.15 10.19.46.15 是harbor的ip地址

#1。
:vim /etc/docker/daemon.json を実行します。

{
 「安全でないレジストリ」: [
 「10.19.46.15」
 ]
}

# 2. ExecStart=/usr/bin/dockerd |--insecure-registry=10.19.46.15 を追加します。
vim /usr/lib/systemd/system/docker.service

# この行をコメントアウトし、次の設定を追加します。ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
実行開始=/usr/bin/dockerd
  |--安全でないレジストリ=10.19.46.15

1. ハーバーのdocker-composeを再起動します。コマンドは次のとおりです。
2. Dockerを再起動する

 systemctlデーモンリロード
systemctl dockerを再起動します

クライアントが倉庫にログインする

[root@client ~]# dockerログイン 10.19.46.15 
ユーザー名: admin
パスワード: 
警告! パスワードは暗号化されずに /root/.docker/config.json に保存されます。
この警告を削除するには、資格情報ヘルパーを構成します。
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
ログインに成功しました

手抜き

プルコマンド

プッシュおよびタグコマンド

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • HarborをベースにしたDockerプライベートイメージリポジトリの構築の詳細な説明
  • Docker はプライベート ウェアハウス (レジストリ、ハーバー) を構築します
  • DockerプライベートライブラリHarborのアーキテクチャとコンポーネントの説明
  • プライベートウェアハウス(レジストリとハーバー)を構築するためのDockerの実装
  • Docker で Harbor パブリック リポジトリを構築する方法の例
  • ドッカー専用倉庫港湾建設プロセス
  • Dockerがプライベート倉庫Harborを構築する手順
  • Docker Gitlab+Jenkins+Harborは永続的なプラットフォーム運用を構築します
  • Docker+K8S+GitLab/SVN+Jenkins+Harbor をベースにした継続的インテグレーション配信環境の構築に関する詳細なチュートリアル
  • Harborを使用してプライベートDockerリポジトリを構築する方法
  • Docker5フル機能の港湾倉庫構築プロセス
  • docker compose を使用してハーバープライベートウェアハウスをインストールする詳細なチュートリアル
  • Jenkins は Docker イメージを構築し、Harbor ウェアハウスにプッシュします
  • HarborをベースにしたDocker専用倉庫の構築方法
  • Dockerプライベート倉庫Harborの導入と展開方法

<<:  Node.jsミドルウェアの仕組みの詳細な説明

>>:  Windows で mysql5.7.21 をインストールするための詳細なチュートリアル

推薦する

MySQL インポートおよびエクスポートのバックアップの詳細

目次1. MySQLのバックアップタイプの詳細な説明1. バックアップがデータベースに与える影響に基...

マウスがカード上に移動したときにフローティング効果を実現する CSS の使用例

原理ホバーしたときに要素に影を設定します: box-shadow で、通常とは異なるスタイルにします...

HTML テーブル マークアップ チュートリアル (22): 行の境界線の色属性 BORDERCOLORLIGHT

行内では、明るい境界線の色を個別に定義できます。基本的な構文<TR ボーダーカラーライト=co...

WeChatミニプログラムの基本チュートリアル:Echartの使用

序文まずは最終的な効果を見てみましょう。私が自分で作った小さなデモです。まずEChartsの公式サイ...

ウェブデザインの教育または学習プログラム

セクションコース内容営業時間1 ウェブデザインの概要2 2 HTML 基本タグとフォーマットタグ 2...

JS がビデオ弾幕効果を実現

これを実現するには、ES6 モジュール開発とオブザーバー モードを使用します。オブザーバー パターン...

MySQLスタートアップが起こした事故の実録

目次背景MySQLが完全に起動したかどうかを確認する方法事故最初の変更2回目の改訂要約するMySQL...

Vue+SpringBoot で Alipay サンドボックス決済を実装するためのサンプルコード

まず、Alipay サンドボックスから一連のものをダウンロードします。多くのブログで取り上げられてお...

Docker Composeを使用してDOCleverをインストールする詳細なプロセスを説明します

目次1. Docker Composeとは何か、インストールして使用する方法2. DOCleverと...

高速でクールな揺れアニメーション効果を実現するCSS

1. Animate.css の紹介Animate.css は、Web プロジェクトですぐに使用で...

Vueフォームバインディングとコンポーネントの詳細な説明

目次1. 双方向データバインディングとは1. データの双方向バインディングを実装する必要があるのはな...

Vue の 2 択タブバー切り替えの新しいアプローチ

問題の説明プロジェクトに取り組んでいるときに、タブ バーの切り替え効果を作成する必要がある場合があり...

Web プロジェクト開発 JS 機能の手ぶれ補正とスロットリングのサンプル コード

目次安定導入手ぶれ補正シーン1(マウスの動き込み)手ぶれ補正シーン2(キーボードのキー)関数のスロッ...

MySQL 起動エラーを解決する: エラー 2003 (HY000): 'localhost' の MySQL サーバーに接続できません (10061)

このエラーは初心者によく発生します。この記事では主に、エラー 2003 (HY000): '...

MySQL 5.7.18 無料インストールバージョンの設定チュートリアル

MySQL 5.7.18 無料インストール版のインストールチュートリアルMySQL は現在、世界で最...