Harbor は、Docker イメージを保存および配布するためのエンタープライズ レベルのレジストリ サーバーです。エンタープライズ全体の Docker イメージ リポジトリを構築するために使用できます。 Docker のオープンソース プロジェクト Distribution をベースに、イメージ同期レプリケーション、脆弱性スキャン、権限管理など、企業に必要な機能が追加されています。 Harbor は、VMware がオープンソース化したエンタープライズ レベルの Docker レジストリ管理プロジェクトです。権限管理 (RBAC)、LDAP、ログ監査、管理インターフェイス、自己登録、イメージ複製、中国語サポートなどの機能が含まれています。 匿名プルをサポートするフル機能のリポジトリを構築する [root@server1 mnt]# cd compose/ [root@server1 compose]# ls docker-compose-Linux-x86_64-1.16.1 ドッカーコンポーズ-Linux-x86_64-1.24.1 docker-compose-Linux-x86_64-1.22.0 docker-compose-Linux-x86_64-1.27.0 [root@server1 compose]# mv docker-compose-Linux-x86_64-1.27.0 /usr/local/bin/docker-compose [root@server1 compose]# chmod +x /usr/local/bin/docker-compose [root@server1 mnt]# tar zxf harbor-offline-installer-v1.10.1.tgz 依存関係を解決し、ハーバーを解凍する vim ハーバー.yml 港湾ディレクトリ 認証とキーの場所を正しく記述する必要があります ./install.sh スクリプトのインストールを実行する redis を作成しています...完了 ハーバーコアを作成中...完了 nginx を作成しています...完了 harbor-jobservice を作成しています...完了しました ✔ ----Harbor が正常にインストールされ、起動しました。---- 終わり [root@server1 ハーバー]# docker-compose docker-composeコマンドは、ハーバーディレクトリで実行する必要があります。 [root@server1 harbor]# docker-compose を開始 [root@server1 ハーバー]# docker-compose ps 名前 コマンド 状態 ポート -------------------------------------------------------------------------------------------------------------------------------------------------------------- harbor-core /harbor/harbor_core アップ(正常) harbor-db /docker-entrypoint.sh 稼働中(正常)5432/tcp harbor-jobservice /harbor/harbor_jobservice ... 稼働中(正常) harbor-log /bin/sh -c /usr/local/bin/ ... 稼働中 (正常) 127.0.0.1:1514->10514/tcp harbor-portal nginx -g デーモンオフ; 稼働中(正常)8080/tcp nginx nginx -g デーモンオフ; 稼働中 (正常) 0.0.0.0:80->8080/tcp,:::80->8080/tcp, 0.0.0.0:443->8443/tcp、:::443->8443/tcp redis redis-server /etc/redis.conf アップ(正常)6379/tcp レジストリ /home/harbor/entrypoint.sh アップ(正常) 5000/tcp registryctl /home/harbor/start.sh 起動中(正常) ミラーが起動していることを確認し、ブラウザにIPアドレスを直接入力します。 ユーザ admin、パスワード yume [root@server1 docker]# docker logout reg.westos.org reg.westos.org のログイン資格情報を削除する [root@server1 docker]# docker ログイン reg.westos.org ユーザー名: admin パスワード: 警告! パスワードは暗号化されずに /root/.docker/config.json に保存されます。 この警告を削除するには、資格情報ヘルパーを構成します。 https://docs.docker.com/engine/reference/commandline/login/#credentials-store ログインに成功しました 前回のログインからログアウトし、再度ログインしてください。これはデータベースに保存されている情報です。 [root@server1 docker]# docker タグ yakexi007/game2048:latest reg.westos.org/library/game2048:latest [root@server1 docker]# docker push reg.westos.org/library/game2048:latest プッシュはリポジトリ [reg.westos.org/library/game2048] を参照します。 88fca8ae768a: プッシュ 6d7504772167: 押された 192e9fad2abc: プッシュ 36e9226e74f8: プッシュ 011b303988d2: プッシュ 最新: ダイジェスト: sha256:8a34fb9cb168c420604b6e5d32ca6d412cb0d533a826b313b190535c03fe9390 サイズ: 1364 倉庫にアップロードして表示する [root@server2 docker]# cat daemon.json { "レジストリミラー": ["https://reg.westos.org"] } サーバー2では、プライベート倉庫がポイントされています レジストリ: https://index.docker.io/v1/ ラベル: 実験的: 偽 安全でないレジストリ: 127.0.0.0/8 レジストリミラー: 翻訳元 ライブリストアが有効: false そして、サーバ2でアドレス解決を行うのが効果的です [root@server2 docker]# docker pull reg.westos.org/library/game2048:latest 最新: library/game2048 から取得 534e72e7cedc: プル完了 f62e2f6dfeef: プル完了 fe7db6293242: プル完了 3f120f6a2bf8: プル完了 4ba4e6930ea5: プル完了 ダイジェスト: sha256:8a34fb9cb168c420604b6e5d32ca6d412cb0d533a826b313b190535c03fe9390 ステータス: reg.westos.org/library/game2048:latest の新しいイメージをダウンロードしました reg.westos.org/library/game2048:最新 server1からプッシュされたイメージがserver2に正常にプルダウンされました ログから、匿名ユーザーがプルしたことがわかります [root@server1 docker]# docker タグ yakexi007/nginx:latest reg.westos.org/library/nginx:latest [root@server1 docker]# docker push reg.westos.org/library/nginx プッシュはリポジトリ [reg.westos.org/library/nginx] を参照します。 3bd8699f28ba: プッシュ 1d3b68b6972f: 押された de1602ca36c9: プッシュ 最新: ダイジェスト: sha256:5ea5a786e978abd8e6e0b6c0f37f7271be19c40d6b8247b1d9dae70c1fbab9eb サイズ: 949 server1にnginxイメージを再度アップロードする 見ることができます [root@server2 docker]# docker pull nginx デフォルトタグの使用: 最新 最新: library/nginx からプル cfb92865f5ba: プル完了 8dd350b5e0d5: プル完了 15157df2751c: プル完了 ダイジェスト: sha256:5ea5a786e978abd8e6e0b6c0f37f7271be19c40d6b8247b1d9dae70c1fbab9eb ステータス: nginx:latest の新しいイメージをダウンロードしました docker.io/ライブラリ/nginx:最新 Server2が再びnginxをプルし、完了 [root@server1 harbor]# docker-compose ログ ログを表示 [root@server1 harbor]# docker-compose を停止します 倉庫を非アクティブ化する [root@server1 ハーバー]# docker-compose rm すべてのコンテナを削除します。次に、ハーバー機能を追加します。インストール スクリプトのヘルプを確認します。イメージ脆弱性スキャン、コンテンツの信頼、リモート ログインの 3 つのモジュールが表示されます。インストール スクリプトの後にモジュール名を追加します。再インストール後、これらのモジュール機能が有効になります。 [root@server1 ハーバー]# ./install.sh --help 注意: 最初に harbor.yml でホスト名とその他の必要な属性を設定してください。 Harbor は外部クライアントからアクセスする必要があるため、ホスト名には localhost または 127.0.0.1 を使用しないでください。 Harbor で Notary を有効にする必要がある場合は --with-notary を設定し、notary は https で実行する必要があるため、harbor.yml で ui_url_protocol/ssl_cert/ssl_cert_key を設定してください。 HarborでClairを有効にする必要があるときは、--with-clairを設定してください。 HarborでChartmuseumを有効にする必要があるときは、--with-chartmuseumを設定してください。 [root@server1 harbor]# ./install.sh --with-notary --with-clair --with-chartmuseum [ステップ5]: Harborを起動します... デフォルトドライバーでネットワーク「harbor_harbor-clair」を作成しています デフォルトドライバーでネットワーク「harbor_harbor-notary」を作成しています デフォルトドライバーでネットワーク「harbor_harbor-chartmuseum」を作成しています デフォルトドライバーでネットワーク「harbor_notary-sig」を作成しています 港ログを作成中...完了 レジストリを作成しています...完了 harbor-db を作成しています...完了 registryctl を作成しています...完了しました redis を作成しています...完了 チャートミュージアムを作成中...完了 港湾ポータルを作成中...完了 ハーバーコアを作成中...完了 公証人署名者を作成しています...完了 クリアを作成中...完了 clair-adapter を作成しています...完了 公証サーバーを作成しています...完了 nginx を作成しています...完了 harbor-jobservice を作成しています...完了しました ✔ ----Harbor が正常にインストールされ、起動しました。---- [root@server1 ハーバー]# docker-compose ps 名前 コマンド 状態 ポート -------------------------------------------------------------------------------------------------------------------------------------------------------------- chartmuseum ./docker-entrypoint.sh 起動中 (正常性: 開始中) 9999/tcp clair ./docker-entrypoint.sh 起動中 (正常性: 開始中) 6060/tcp、6061/tcp clair-adapter /clair-adapter/clair-adapter 稼働中 (正常性: 開始中) 8080/tcp harbor-core /harbor/harbor_core アップ(体力:開始) harbor-db /docker-entrypoint.sh 起動中 (正常性: 開始中) 5432/tcp harbor-jobservice /harbor/harbor_jobservice ... 稼働中 (ヘルス: 開始中) harbor-log /bin/sh -c /usr/local/bin/ ... 起動中 (正常性: 開始中) 127.0.0.1:1514->10514/tcp harbor-portal nginx -g デーモンオフ; 起動中 (正常性: 開始中) 8080/tcp nginx nginx -g デーモンオフ; 起動中 (正常性: 開始中) 0.0.0.0:4443->4443/tcp,:::4443->4443/tcp, 0.0.0.0:80->8080/tcp、:::80->8080/tcp、 0.0.0.0:443->8443/tcp、:::443->8443/tcp notary-server /bin/sh -c migrate-patch - ... 上へ notary-signer /bin/sh -c migrate-patch - ... 上へ redis redis-server /etc/redis.conf 起動中 (正常性: 開始中) 6379/tcp レジストリ /home/harbor/entrypoint.sh アップ (ヘルス: 開始中) 5000/tcp registryctl /home/harbor/start.sh 起動中 (正常性: 開始中) psを使用して確認すると、172.25.250.11にログインするための機能がいくつか見つかります。 これらは再インストール前には存在しませんでした。 --公証人付き --クレア付き --チャート博物館付き 画像を自動的にスキャンするにはどうすればいいですか? 「保存して再試行する」を選択して、画像を再度アップロードしてください [root@server1 harbor]# docker tag rhel7:latest reg.westos.org/library/rhel7:latest 今回は、rhel7 イメージを使用して、最初に名前を変更します。 [root@server1 harbor]# docker push reg.westos.org/library/rhel7:latest プッシュはリポジトリ [reg.westos.org/library/rhel7] を参照します。 18af9eb19b5f: プッシュ 最新: ダイジェスト: sha256:58cd9120a4194edb0de4377b71bd564953255a1422baa1bbd9cb23d521c6873b サイズ: 528 港にアップロード ブラウザを開くと、自動的にスキャンされていたことがわかりました。 画像署名機能を実装するにはどうすればいいですか? コンテンツの信頼が選択されたら、server2にアップロードしたばかりのrhel7イメージをプルしてみます。 [root@server2 ~]# docker pull rhel7 デフォルトタグの使用: 最新 デーモンからのエラー応答: rhel7 のプル アクセスが拒否されました。リポジトリが存在しないか、または 'docker login' が必要になる可能性があります: 拒否されました: リソースへの要求されたアクセスが拒否されました コンテンツの信頼のチェックを外すと、リポジトリでコンテンツの信頼が有効になっているため、正常にプルできます。クライアントは署名されたイメージのみをダウンロードできますが、リポジトリ内の Debian イメージは署名されていません。そのため、クライアントはプルに失敗します。 次に、信頼されたイメージの署名を承認する必要があります。まず、Web インターフェースで以前にアップロードしたイメージを削除します。署名のないイメージの場合は、Docker サーバーで 2 つの環境変数を設定します。次に、コンテンツ信頼機能を使用して、アップロードしたイメージに署名します。 [root@server1 ハーバー]# docker-compose ps 名前 コマンド 状態 ポート -------------------------------------------------------------------------------------------------------------------------------------------------------------- chartmuseum ./docker-entrypoint.sh アップ(正常)9999/tcp clair ./docker-entrypoint.sh 稼働中(正常)6060/tcp、6061/tcp clair-adapter /clair-adapter/clair-adapter アップ(正常) 8080/tcp harbor-core /harbor/harbor_core アップ(正常) harbor-db /docker-entrypoint.sh 稼働中(正常)5432/tcp harbor-jobservice /harbor/harbor_jobservice ... 稼働中(正常) harbor-log /bin/sh -c /usr/local/bin/ ... 稼働中 (正常) 127.0.0.1:1514->10514/tcp harbor-portal nginx -g デーモンオフ; 稼働中(正常)8080/tcp nginx nginx -g デーモンオフ; 稼働中 (正常) 0.0.0.0:4443->4443/tcp,:::4443->4443/tcp, 0.0.0.0:80->8080/tcp、:::80->8080/tcp、 0.0.0.0:443->8443/tcp、:::443->8443/tcp notary-server /bin/sh -c migrate-patch - ... 上へ notary-signer /bin/sh -c migrate-patch - ... 上へ redis redis-server /etc/redis.conf アップ(正常)6379/tcp レジストリ /home/harbor/entrypoint.sh アップ(正常) 5000/tcp registryctl /home/harbor/start.sh 起動中(正常) ポート4443は署名に使用されます [root@server1 harbor]# エクスポート DOCKER_CONTENT_TRUST=1 [root@server1 harbor]# DOCKER_CONTENT_TRUST_SERVER=https://reg.westos.org:4443 をエクスポートします (2)Dockerコンテンツの信頼を有効にする [root@server1 harbor]# docker push reg.westos.org/library/nginx:latest プッシュはリポジトリ [reg.westos.org/library/nginx] を参照します。 3bd8699f28ba: レイヤーが既に存在します 1d3b68b6972f: レイヤーが既に存在します de1602ca36c9: レイヤーが既に存在します 最新: ダイジェスト: sha256:5ea5a786e978abd8e6e0b6c0f37f7271be19c40d6b8247b1d9dae70c1fbab9eb サイズ: 949 信頼メタデータの署名とプッシュ エラー: 公証サーバーへの接続エラー: x509: 証明書は不明な機関によって署名されています 更新されたバージョンであることを示す Latest を追加する必要があります。 (3) 再度アップロードする際にエラーが発生しました。隠しディレクトリ .docker に証明書がありません。証明書ディレクトリ tls を作成します。ディレクトリに入ったら、コンテナと同じ名前のディレクトリ reg.westos.org:4443 を作成します。 [root@server1 ~]# cd .docker/ [root@server1 .docker]# ls config.json 信頼 [root@server1 .docker]# mkdir tls [root@server1 .docker]# cd tls/ [root@server1 tls]# mkdir reg.westos.org:4443 [root@server1 tls]# cd reg.westos.org\:4443/ [root@server1 reg.westos.org:4443]# cp /docker / .autorelabel データ/ etc/ lib64/ opt/ run/ sys/ var/ bin/ dev/ ホーム/ メディア/ proc/ sbin/ tmp/ ブート/ docker lib/ mnt/ ルート/ srv/ usr/ [root@server1 reg.westos.org:4443]# cp /root/data/certs/westos.org.crt ca.crt [root@server1 reg.westos.org:4443]# ls ca.crt (4)もう一度アップロードしてみる [root@server1 harbor]# docker push reg.westos.org/library/nginx:latest プッシュはリポジトリ [reg.westos.org/library/nginx] を参照します。 3bd8699f28ba: レイヤーが既に存在します 1d3b68b6972f: レイヤーが既に存在します de1602ca36c9: レイヤーが既に存在します 最新: ダイジェスト: sha256:5ea5a786e978abd8e6e0b6c0f37f7271be19c40d6b8247b1d9dae70c1fbab9eb サイズ: 949 信頼メタデータの署名とプッシュ 新しいルート署名キーのパスフレーズを作成しようとしています。このパスフレーズ 署名システムで最も機密性の高い鍵を保護するために使用されます。 長くて複雑なパスフレーズを選択し、パスワードと キーファイル自体は安全でバックアップされています。 パスワードマネージャを使用してパスフレーズを生成し、安全に保管します。 このキーを回復する方法はありません。キーは config ディレクトリにあります。 ID dbac0cb の新しいルート キーのパスフレーズを入力してください: パスフレーズが短すぎます。パスワード マネージャーを使用して、適切なランダム パスフレーズを生成し、保存してください。 ID dbac0cb の新しいルート キーのパスフレーズを入力してください: パスフレーズが短すぎます。パスワード マネージャーを使用して、適切なランダム パスフレーズを生成し、保存してください。 ID dbac0cb の新しいルート キーのパスフレーズを入力してください: パスフレーズが短すぎます。パスワード マネージャーを使用して、適切なランダム パスフレーズを生成し、保存してください。 ID dbac0cb の新しいルート キーのパスフレーズを入力してください: パスフレーズが短すぎます。パスワード マネージャーを使用して、適切なランダム パスフレーズを生成し、保存してください。 ID dbac0cb の新しいルート キーのパスフレーズを入力してください: ID dbac0cb の新しいルート キーのパスフレーズを繰り返します。 ID a868e96 の新しいリポジトリ キーのパスフレーズを入力してください: ID a868e96 の新しいリポジトリ キーのパスフレーズを繰り返します。 「reg.westos.org/library/nginx」の初期化が完了しました reg.westos.org/library/nginx:latest に正常に署名されました 問題を解決した後、サーバーはイメージを再度アップロードします。新しいイメージを正常にアップロードするには、管理者がルート キーとウェアハウス キーを設定する必要があります。 署名済み、最新のものを追加する必要があります [root@server2 ~]# docker pull nginx デフォルトタグの使用: 最新 最新: library/nginx からプル cfb92865f5ba: プル完了 8dd350b5e0d5: プル完了 15157df2751c: プル完了 ダイジェスト: sha256:5ea5a786e978abd8e6e0b6c0f37f7271be19c40d6b8247b1d9dae70c1fbab9eb ステータス: nginx:latest の新しいイメージをダウンロードしました docker.io/ライブラリ/nginx:最新 server2 で署名済みイメージをプルしても問題はありません。署名されておらず、コンテンツの信頼が有効になっている場合は、それでも機能しません。もう一度実行可能性を試して、まず harbor から 2048 を削除し、次に server2 で以前にダウンロードした 2048 イメージを削除して、もう一度プルすると、エラーが報告されます。 [root@server2 ~]# docker pull game2048 デフォルトタグの使用: 最新 デーモンからのエラー応答: game2048 のプル アクセスが拒否されました。リポジトリが存在しないか、または 'docker login' が必要になる可能性があります: 拒否: リソースへの要求されたアクセスが拒否されました その後、サーバー1は再び2048をプッシュします [root@server1 harbor]# docker push reg.westos.org/library/game2048:latest プッシュはリポジトリ [reg.westos.org/library/game2048] を参照します。 88fca8ae768a: レイヤーが既に存在します 6d7504772167: レイヤーが既に存在します 192e9fad2abc: レイヤーが既に存在します 36e9226e74f8: レイヤーが既に存在します 011b303988d2: レイヤーが既に存在します 最新: ダイジェスト: sha256:8a34fb9cb168c420604b6e5d32ca6d412cb0d533a826b313b190535c03fe9390 サイズ: 1364 信頼メタデータの署名とプッシュ ID dbac0cb のルート キーのパスフレーズを入力してください: ID 18c8514 の新しいリポジトリ キーのパスフレーズを入力してください: ID 18c8514 の新しいリポジトリ キーのパスフレーズを繰り返します。 「reg.westos.org/library/game2048」の初期化が完了しました reg.westos.org/library/game2048:latest に正常に署名されました すでに署名済み、server2が再度プル [root@server2 ~]# docker pull game2048 デフォルトタグの使用: 最新 最新: library/game2048 から取得 534e72e7cedc: プル完了 f62e2f6dfeef: プル完了 fe7db6293242: プル完了 3f120f6a2bf8: プル完了 4ba4e6930ea5: プル完了 ダイジェスト: sha256:8a34fb9cb168c420604b6e5d32ca6d412cb0d533a826b313b190535c03fe9390 ステータス: game2048:latest の新しいイメージをダウンロードしました docker.io/library/game2048:最新 終わり 4. ゲストユーザーが非公開のリポジトリにアクセスする [root@server1 harbor]# エクスポート DOCKER_CONTENT_TRUST=0 コンテンツの信頼をオフにしてください。そうしないと、問題が発生します。 [root@server1 harbor]# docker タグ reg.westos.org/library/game2048:latest reg.westos.org/haoge/game2048:latest [root@server1 harbor]# docker push reg.westos.org/haoge/game2048 新しいプロジェクトhaoge用の2048画像を再アップロードします [root@server2 ~]# docker pull reg.westos.org/haoge/game2048:latest デーモンからのエラー応答: reg.westos.org/haoge/game2048 のプル アクセスが拒否されました。リポジトリが存在しないか、'docker login' が必要になる可能性があります: 拒否されました: リソースへの要求されたアクセスが拒否されました Server2はhaogeから2048を取得し、エラーを報告し、ログインする必要がある 新しいユーザーを作成する haogeプロジェクトでは、ユーザーにゲストIDを付与します [root@server2 ~]# docker ログイン reg.westos.org ユーザー名: wqh パスワード: 警告! パスワードは暗号化されずに /root/.docker/config.json に保存されます。 この警告を削除するには、資格情報ヘルパーを構成します。 https://docs.docker.com/engine/reference/commandline/login/#credentials-store ログインに成功しました server2 ログイン wqh [root@server2 ~]# docker pull reg.westos.org/haoge/game2048:latest 最新: haoge/game2048 から取得 ダイジェスト: sha256:8a34fb9cb168c420604b6e5d32ca6d412cb0d533a826b313b190535c03fe9390 ステータス: reg.westos.org/haoge/game2048:latest の新しいイメージをダウンロードしました reg.westos.org/haoge/game2048:最新 [root@server2 ~]# docker イメージ リポジトリ タグ イメージ ID 作成 サイズ nginx 最新 2560dbd4ee1e 14 か月前 31.1MB game2048 最新 19299002fdbe 4年前 55.5MB reg.westos.org/haoge/game2048 最新 19299002fdbe 4年前 55.5MB 問題ありませんが、訪問者に権限がないためプッシュは許可されません。 ログには、wqh がミラーをプルし、最終的に次のことが示されています。 [root@server1 harbor]# docker-compose を停止します harbor-jobservice を停止しています...完了 nginx を停止しています...完了 notary-server を停止しています...完了 clair-adapter を停止しています...完了 公証人署名者を停止しています...完了 クレアを止めています...完了 ハーバーコアを停止しています...完了 chartmuseum を停止しています...完了 港湾ポータルを停止しています...完了 redis を停止しています...完了 registryctl を停止しています...完了 harbor-db を停止しています...完了 レジストリを停止しています...完了 港湾ログを停止しています...完了 [root@server1 ハーバー]# docker-compose rm harbor-jobservice、nginx、notary-server、clair-adapter、notary-signer、clair、harbor-core、chartmuseum、harbor-portal、redis、registryctl、harbor-db、registry、harbor-log を削除します。 本当にいいですか?[yN] y harbor-jobservice を削除しています...完了 nginx を削除しています...完了 notary-server を削除しています...完了しました clair-adapter を削除しています...完了 公証人署名者を削除しています...完了 クレアを削除しています...完了 ハーバーコアを削除しています...完了 chartmuseum を削除しています...完了 港湾ポータルを削除しています...完了 redis を削除しています...完了 registryctl を削除しています...完了しました harbor-db を削除しています...完了 レジストリを削除しています...完了 港のログを削除しています...完了 [root@server1 harbor]# ./install.sh --with-chartmuseum [ステップ 0]: docker がインストールされているかどうかを確認しています... 注: docker バージョン: 19.03.15 [ステップ 1]: docker-compose がインストールされていることを確認します... 注: docker-compose バージョン: 1.27.0 [ステップ 2]: Harbor イメージを読み込んでいます... 読み込まれたイメージ: goharbor/clair-adapter-photon:v1.0.1-v1.10.1 読み込まれたイメージ: goharbor/harbor-jobservice:v1.10.1 読み込まれたイメージ: goharbor/redis-photon:v1.10.1 読み込まれたイメージ: goharbor/notary-server-photon:v0.6.1-v1.10.1 読み込まれた画像: goharbor/clair-photon:v2.1.1-v1.10.1 読み込まれたイメージ: goharbor/harbor-log:v1.10.1 読み込まれたイメージ: goharbor/registry-photon:v2.7.1-patch-2819-2553-v1.10.1 読み込まれたイメージ: goharbor/notary-signer-photon:v0.6.1-v1.10.1 読み込まれた画像: goharbor/chartmuseum-photon:v0.9.0-v1.10.1 読み込まれたイメージ: goharbor/harbor-registryctl:v1.10.1 読み込まれたイメージ: goharbor/nginx-photon:v1.10.1 読み込まれたイメージ: goharbor/harbor-migrator:v1.10.1 読み込まれたイメージ: goharbor/prepare:v1.10.1 読み込まれた画像: goharbor/harbor-portal:v1.10.1 読み込まれたイメージ: goharbor/harbor-core:v1.10.1 読み込まれたイメージ: goharbor/harbor-db:v1.10.1 [ステップ3]:環境の準備... [ステップ 4]: 港の設定を準備する... 準備ベースディレクトリは/mnt/harborに設定されます 設定ファイルをクリアする: /config/log/logrotate.conf 設定ファイルをクリアする: /config/log/rsyslog_docker.conf 設定ファイルをクリアする: /config/nginx/conf.d/notary.upstream.conf 設定ファイルをクリアする: /config/nginx/conf.d/notary.server.conf 設定ファイルをクリアする: /config/nginx/nginx.conf 設定ファイルをクリアする: /config/core/env 設定ファイルをクリアする: /config/core/app.conf 設定ファイルをクリアする: /config/registry/config.yml 設定ファイルをクリアする: /config/registry/root.crt 設定ファイルをクリアする: /config/registryctl/env 設定ファイルをクリアする: /config/registryctl/config.yml 設定ファイルをクリアする: /config/db/env 設定ファイルをクリアする: /config/jobservice/env 設定ファイルをクリアする: /config/jobservice/config.yml 設定ファイルをクリアする: /config/notary/server-config.postgres.json 設定ファイルをクリアする: /config/notary/server_env 設定ファイルをクリアする: /config/notary/signer_env 設定ファイルをクリアする: /config/notary/signer-config.postgres.json 設定ファイルをクリアする: /config/notary/notary-signer.key 設定ファイルをクリアする: /config/notary/notary-signer.crt 設定ファイルをクリアする: /config/notary/notary-signer-ca.crt 設定ファイルをクリアする: /config/notary/root.crt 設定ファイルをクリアする: /config/clair/postgresql-init.d/README.md 設定ファイルをクリアする: /config/clair/postgres_env 設定ファイルをクリアする: /config/clair/config.yaml 設定ファイルをクリアする: /config/clair/clair_env 設定ファイルをクリアする: /config/clair-adapter/env 設定ファイルをクリアする: /config/chartserver/env 生成された設定ファイル: /config/log/logrotate.conf 生成された構成ファイル: /config/log/rsyslog_docker.conf 生成された設定ファイル: /config/nginx/nginx.conf 生成された設定ファイル: /config/core/env 生成された構成ファイル: /config/core/app.conf 生成された構成ファイル: /config/registry/config.yml 生成された設定ファイル: /config/registryctl/env 生成された構成ファイル: /config/db/env 生成された構成ファイル: /config/jobservice/env 生成された構成ファイル: /config/jobservice/config.yml ファイルからシークレットをロードしました: /secret/keys/secretkey 生成された設定ファイル: /config/chartserver/env 生成された構成ファイル: /compose_location/docker-compose.yml 入力ディレクトリをクリーンアップする [ステップ5]: Harborを起動します... 港ログを作成中...完了 港湾ポータルを作成中...完了 registryctl を作成しています...完了しました harbor-db を作成しています...完了 redis を作成しています...完了 レジストリを作成しています...完了 チャートミュージアムを作成中...完了 ハーバーコアを作成中...完了 nginx を作成しています...完了 harbor-jobservice を作成しています...完了 ✔ ----Harbor が正常にインストールされ、起動しました。---- [root@server1 ハーバー]# docker-compose ps 名前 コマンド 状態 ポート -------------------------------------------------------------------------------------------------------------------------------------------------------------- chartmuseum ./docker-entrypoint.sh 起動中 (正常性: 開始中) 9999/tcp harbor-core /harbor/harbor_core アップ(体力:開始) harbor-db /docker-entrypoint.sh 起動中 (正常性: 開始中) 5432/tcp harbor-jobservice /harbor/harbor_jobservice ... 稼働中 (ヘルス: 開始中) harbor-log /bin/sh -c /usr/local/bin/ ... 起動中 (正常性: 開始中) 127.0.0.1:1514->10514/tcp harbor-portal nginx -g デーモンオフ; 起動中 (正常性: 開始中) 8080/tcp nginx nginx -g デーモン off; 起動中 (正常性: 開始中) 0.0.0.0:80->8080/tcp,:::80->8080/tcp, 0.0.0.0:443->8443/tcp、:::443->8443/tcp redis redis-server /etc/redis.conf 起動中 (正常性: 開始中) 6379/tcp レジストリ /home/harbor/entrypoint.sh アップ (ヘルス: 開始中) 5000/tcp registryctl /home/harbor/start.sh 起動中 (正常性: 開始中) 最終結果 上記はdocker5フル機能のハーバーの詳細な内容です。docker harborの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Vueコンポーネント通信のさまざまな方法の詳細な説明
>>: HTML およびプラグイン アプリケーションにおけるデータ カスタム属性の使用の概要
1. MySQL での or 構文の使用、および MySQL 構文で or を使用する際の注意点。 ...
目次1. バブルソートとは何か2. 例を挙げるラウンド1:第2ラウンド:第3ラウンド:第4ラウンド:...
目次導入Next.jsプロジェクトを作成するNext.js プロジェクトを手動で作成するcreact...
1. ブリッジ: デフォルトでは VMnet0 が使用されます1. 原則:ブリッジは、それぞれ 2...
目次1. Commonjsのエクスポートとrequireの使用1.1 CommonJS エクスポート...
目次JS はファイルを読み取る FileReader書類イベントとメソッド基本的な使い方イベント処理...
目次1. 背景2. サイレントログインとは何ですか? 3. カスタムログイン状態を維持する方法4. ...
テストテーブルを作成する -- ---------------------------- -- ch...
必要なファイルをインストールする Yum インストール openssl-* -yデータベースインデッ...
プロジェクトで使用されている特殊文字とアイコンHTMLコードXML/HTML コードコンテンツをクリ...
CSS3はクールな3D回転パースペクティブを実現します3D アニメーション効果はますます人気が高まっ...
Anaconda は、conda、Python、およびそれらの依存関係など、180 を超える科学パッ...
目次コンポーネントの登録コンポーネントの追加ソースコードドラッグ可能なテキスト ボックスでは、ユーザ...
この記事の例では、テーブルを追加および削除するためのjsの具体的なコードを参考までに共有しています。...
文法 背景: linear-gradient(direction,color-stop1,color...