ドッカー倉庫管理ツールハーバー

要約:

ハーバーエンタープライズレジストリは、セキュリティ、アイデンティティ管理など、いくつかの企業のために必要な機能を追加することにより、ミラードッカーを格納して配布するためのサーバであり、オープンソースドッカー分布を拡張します。民間企業のサーバーのレジストリとして、ハーバーは、より良いパフォーマンスとセキュリティを提供します。レジストリユーザーのビルドと透過像のランタイム環境の効率を高めます。ハーバーミラーリソースは、プライベートレジストリに保存されているすべてのミラーリング、複数のレジストリにインストールされたノードの複製をサポートし、企業の内部ネットワークの管理とコントロールのデータや知的財産を確保します。また、ハーバーにも、このようなユーザー管理、アクセス制御と監査活動などの高度なセキュリティ機能を提供し、
公式ウェブサイトのアドレスを:http://vmware.github.io/harbor/index_cn.html
公式githubの住所:https://github.com / vmwareの/港

公式特長ハーバー:

役割ベースのアクセス制御-ユーザとユーザが同じ名前空間(プロジェクト)に複数のミラー倉庫異なる権限を持つことができる「プロジェクト」を通じてドッカーミラー倉庫組織と管理、。
ミラーリング-インスタンスレジストリの複数の複製(同期)をミラーリング。負荷分散、高可用性、およびハイブリッドクラウド曇ったシーンのために特に適しています。
グラフィカル・ユーザー・インターフェース-ユーザーは、ブラウザを介して閲覧するカレントミラードッカー倉庫を取得し、プロジェクトおよび名前空間を管理することができます。
AD / LDAPサポート-ハーバーは、認証と承認の管理のために、企業の既存のAD / LDAP内に統合することができます。
監査管理-すべてのミラーリポジトリ上で動作は、監査管理のために遡って記録することができます。
国際化-英語、中国語、ドイツ語、日本語、ロシア語、すでにローカライズされたバージョン。より多くの言語が追加されます。
RESTfulなAPI -より多くの制御のための管理者の港に提供するRESTfulなAPI、およびその他の管理ソフトウェアの統合は、それが容易になります。
シンプルな展開-インストールされるオンラインとオフラインツールの両方を提供するには、vSphereプラットフォーム(OVA方法)仮想デバイスをインストールすることができます。

分散クラスタの展開Harbor1.75

環境の準備

系统:centos7.6
关闭防火墙:systemctl stop firewalld
关闭selinux:setenforce 0
node1 IP:192.168.8.156
node2 IP:192.168.8.134

インストールのドッキングウィンドウ

1台のサーバー

[root@node1 ~]#yum install docker -y
[root@node1 ~]#vim /lib/systemd/system/docker.service
#在此行末尾添加本机IP地址
14:ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.8.156
[root@node1 ~]#systemctl  start  docker
[root@node1 ~]#systemctl  enable  docker

サーバー2

[root@node2 ~]#yum install docker -y
[root@node2 ~]#vim /lib/systemd/system/docker.service
14:ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.8.134
[root@node2 ~]#systemctl  start  docker
[root@node2 ~]#systemctl  enable  docker

ハーバーオフラインインストールパッケージをダウンロードしてください

公式インストールマニュアル:https://github.com/vmware/harbor/blob/master/docs/installation_guide.md
サーバー1

[root@node1 ~]#cd /usr/local/src/
[root@node1 harbor]#wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.5.tgz

サーバー2

[root@node2 ~]#cd /usr/local/src/
[root@node2 harbor]#wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.5.tgz

コンフィギュレーション・ハーバー

1台のサーバー

[root@node1 ~]#cd /usr/local/harbor/
[root@node1 harbor]#tar xvf harbor-offline-installer-v1.7.5.tgz
[root@node1 harbor]#vim harbor.cfg
[root@node1 harbor]# grep "^[a-Z]" harbor.cfg
#本机IP地址
hostname = 192.168.8.156
#通讯传输协议
ui_url_protocol = http
max_job_workers = 10 
customize_crt = on
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
secretkey_path = /data
admiral_url = NA
log_rotate_count = 50
#日志滚动大小
log_rotate_size = 200M
http_proxy =
https_proxy =
no_proxy = 127.0.0.1,localhost,core,registry
#设置通知邮箱地址,也可在web界面设置
email_identity = 
email_server = smtp.mydomain.com
email_server_port = 25
email_username = [email protected]
email_password = abc
email_from = admin <[email protected]>
email_ssl = false
email_insecure = false
#设置登录密码
harbor_admin_password = 123456
auth_mode = db_auth
ldap_url = ldaps://ldap.mydomain.com
ldap_basedn = ou=people,dc=mydomain,dc=com
ldap_uid = uid 
ldap_scope = 2 
ldap_timeout = 5
ldap_verify_cert = true
ldap_group_basedn = ou=group,dc=mydomain,dc=com
ldap_group_filter = objectclass=group
ldap_group_gid = cn
ldap_group_scope = 2
self_registration = on
token_expiration = 30
project_creation_restriction = everyone
db_host = postgresql
db_password = root123
db_port = 5432
db_user = postgres
redis_host = redis
redis_port = 6379
redis_password = 
redis_db_index = 1,2,3
clair_db_host = postgresql
clair_db_password = root123
clair_db_port = 5432
clair_db_username = postgres
clair_db = postgres
clair_updaters_interval = 12
uaa_endpoint = uaa.mydomain.org
uaa_clientid = id
uaa_clientsecret = secret
uaa_verify_cert = true
uaa_ca_cert = /path/to/ca.pem
registry_storage_provider_name = filesystem
registry_storage_provider_config =
registry_custom_ca_bundle = 
[root@node1  harbor]#./install.sh
#启动后会下载很多镜像,需要等待一些时间
[Step 0]: checking installation environment ...

Note: docker version: 18.09.7

Note: docker-compose version: 1.18.0

[Step 1]: loading Harbor images ...
f60840e24dbf: Loading layer [==================================================>]  33.23MB/33.23MB
ea7b46fcd541: Loading layer [==================================================>]  8.959MB/8.959MB
79b1bab71f92: Loading layer [==================================================>]   15.6MB/15.6MB
e44aff944dd8: Loading layer [==================================================>]  18.94kB/18.94kB
7f6318c65689: Loading layer [==================================================>]   15.6MB/15.6MB
Loaded image: goharbor/harbor-adminserver:v1.7.5
[Step 0]: checking installation environment ...

2サーバーの設定

[root@node2 ~]#cd /usr/local/harbor/
[root@node2 harbor]#tar xvf harbor-offline-installer-v1.7.5.tgz
[root@node2 harbor]#vim harbor.cfg
[root@node2 harbor]# grep "^[a-Z]" harbor.cfg
hostname = 192.168.8.134
ui_url_protocol = http
max_job_workers = 10 
customize_crt = on
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
secretkey_path = /data
admiral_url = NA
log_rotate_count = 50
log_rotate_size = 200M
http_proxy =
https_proxy =
no_proxy = 127.0.0.1,localhost,core,registry
email_identity = 
email_server = smtp.mydomain.com
email_server_port = 25
email_username = [email protected]
email_password = abc
email_from = admin <[email protected]>
email_ssl = false
email_insecure = false
harbor_admin_password = 123456
auth_mode = db_auth
ldap_url = ldaps://ldap.mydomain.com
ldap_basedn = ou=people,dc=mydomain,dc=com
ldap_uid = uid 
ldap_scope = 2 
ldap_timeout = 5
ldap_verify_cert = true
ldap_group_basedn = ou=group,dc=mydomain,dc=com
ldap_group_filter = objectclass=group
ldap_group_gid = cn
ldap_group_scope = 2
self_registration = on
token_expiration = 30
project_creation_restriction = everyone
db_host = postgresql
db_password = root123
db_port = 5432
db_user = postgres
redis_host = redis
redis_port = 6379
redis_password = 
redis_db_index = 1,2,3
clair_db_host = postgresql
clair_db_password = root123
clair_db_port = 5432
clair_db_username = postgres
clair_db = postgres
clair_updaters_interval = 12
uaa_endpoint = uaa.mydomain.org
uaa_clientid = id
uaa_clientsecret = secret
uaa_verify_cert = true
uaa_ca_cert = /path/to/ca.pem
registry_storage_provider_name = filesystem
registry_storage_provider_config =
registry_custom_ca_bundle = 
[root@node2  harbor]#./install.sh

注意:

次のメッセージが表示された場合

[root@node1 harbor]#./install.sh
Note: docker version: 18.09.7
✖ Need to install docker-compose(1.7.1+) by yourself first and run this script again.

あなたは、実行をインストールする必要があります

[root@node1 ~]#yum -y install docker-compose

設定するには、ログインWebインタフェース

アカウントはadmin、パスワードは内のコンフィギュレーションファイルに設定したパスワードで
ドッカー倉庫管理ツールハーバー
新しいプロジェクト
ドッカー倉庫管理ツールハーバー
パブリックまたはプライベート、後者書くためにここにも変更することができます
ドッカー倉庫管理ツールハーバー
レプリケーションターゲットを作成するために
ドッカー倉庫管理ツールハーバー
あなたがホストIPをコピーしたい塗りつぶし、およびリモート認証証明書が起動しない
ドッカー倉庫管理ツールハーバー
作成
ドッカー倉庫管理ツールハーバー

ミラーノード1ノードをアップロードして検証

ログイン港アカウント

[root@node1 ~]#docker login 192.168.8.156
Username: admin
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

ミラーテストをアップロード

[root@node1 ~]#docker tag test/nginx:v1 192.168.8.156/myimage/nginx:v1
[root@node1 ~]#docker push 192.168.8.156/myimage/nginx:v1

共通の操作をハーバー

港ミラーをダウンロード

[root@node1 ~]#docker login 192.168.8.156
[root@node1 ~]#docker pull 192.168.8.156/myimage/nginx:v1

港を停止し、閉じます

[root@node1 ~]#cd /usr/local/src/harbor/
[root@node1 harbor]#docker-compose stop
[root@node1 harbor]#docker-compose start

あなたは、このディレクトリの実装を入力しなければならない、またはエラーが発生します。注意してください

[root@node1 ~]#docker-compose start 
ERROR: 
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?

        Supported filenames: docker-compose.yml, docker-compose.yaml

おすすめ

転載: blog.51cto.com/14163901/2417594