前言
???Harbor可以通過Docker Composer的方式來部署,如果有正常運行的k8s環境,也可以使用k8s來部署Harbor,本文采用 Docker Composer的方式。?
準備
??假定Linux系統為Centos 7。
docker ,默認安裝即可
yum -y install docker
1
docker compose ,安裝最新版
curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
1
2
harbor離線安裝包,下載最新版本,如果在線下載失敗,我上傳了一份到百度云:https://pan.baidu.com/s/1dnDZjg
wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.3.0.tgz
1
導入 harbor 鏡像
??解壓harbor離線安裝包
tar -xzvf harbor-offline-installer-v1.3.0.tgz
1
??進入harbor目錄
cd harbor
1
??有如下文件:
??導入harbor鏡像
docker load -i harbor.v1.3.0.tar.gz
1
如果提示:Cannot connect to the Docker daemon. Is the docker daemon running on this host? 是因為docker服務未啟動,使用systemctl start docker命令運行docker。
修改 harbor 配置
??編輯 harbor.cfg文件
vi harbor.cfg
1
??修改hostname為自己機器的ip地址
hostname = 192.168.22.83
1
??當然,harbor還有很多配置項可以修改,來滿足一些企業級的功能特性,比如可以使用https來保證文件傳輸的安全。在這里,為了可以快速上手,只進行簡單的配置。
安裝與啟動
??執行 install.sh 腳本
./install.sh
1
??等待安裝完成:
[Step 0]: checking installation environment ...
Note: docker version: 1.12.6
Note: docker-compose version: 1.18.0
[Step 1]: loading Harbor images ...
Loaded image: vmware/harbor-adminserver:v1.3.0
Loaded image: vmware/photon:1.0
Loaded image: vmware/notary-photon:signer-0.5.1
Loaded image: vmware/postgresql:9.6.5-photon
Loaded image: vmware/harbor-db-migrator:1.3
Loaded image: vmware/harbor-ui:v1.3.0
Loaded image: vmware/harbor-log:v1.3.0
Loaded image: vmware/nginx-photon:1.11.13
Loaded image: vmware/mariadb-photon:10.2.10
Loaded image: vmware/clair:v2.0.1-photon
Loaded image: vmware/harbor-db:v1.3.0
Loaded image: vmware/harbor-jobservice:v1.3.0
Loaded image: vmware/registry:2.6.2-photon
Loaded image: vmware/notary-photon:server-0.5.1
[Step 2]: preparing environment ...
Clearing the configuration file: ./common/config/adminserver/env
Clearing the configuration file: ./common/config/ui/env
Clearing the configuration file: ./common/config/ui/app.conf
Clearing the configuration file: ./common/config/ui/private_key.pem
Clearing the configuration file: ./common/config/db/env
Clearing the configuration file: ./common/config/jobservice/env
Clearing the configuration file: ./common/config/jobservice/app.conf
Clearing the configuration file: ./common/config/registry/config.yml
Clearing the configuration file: ./common/config/registry/root.crt
Clearing the configuration file: ./common/config/nginx/cert/harbor.pem
Clearing the configuration file: ./common/config/nginx/cert/harbor-key.pem
Clearing the configuration file: ./common/config/nginx/nginx.conf
Clearing the configuration file: ./common/config/log/logrotate.conf
loaded secret from file: /data/secretkey
Generated configuration file: ./common/config/nginx/nginx.conf
Generated configuration file: ./common/config/adminserver/env
Generated configuration file: ./common/config/ui/env
Generated configuration file: ./common/config/registry/config.yml
Generated configuration file: ./common/config/db/env
Generated configuration file: ./common/config/jobservice/env
Generated configuration file: ./common/config/log/logrotate.conf
Generated configuration file: ./common/config/jobservice/app.conf
Generated configuration file: ./common/config/ui/app.conf
Generated certificate, key file: ./common/config/ui/private_key.pem, cert file: ./common/config/registry/root.crt
The configuration files are ready, please use docker-compose to start the service.
Creating harbor-log ... done
[Step 3]: checking existing instance of Harbor ...
Creating registry ... done
Creating harbor-ui ... done
Creating network "harbor_harbor" with the default driver
Creating nginx ... done
Creating harbor-adminserver ...?
Creating harbor-db ...?
Creating registry ...?
Creating harbor-ui ...?
Creating harbor-jobservice ...?
Creating nginx ...?
? ----Harbor has been installed and started successfully.----
Now you should be able to visit the admin portal at https://192.168.22.83.?
For more details, please visit https://github.com/vmware/harbor .
??在瀏覽器中輸入ip地址:http://192.168.22.83(注意這里使用http協議,而非https),用戶名:admin 密碼:Harbor12345(可以harbor.cfg文件中設置) ,登錄看到barbor的圖像界面:?
小結
??harbor 安裝成功后,可以分別通過以下命令來停止啟動(注意:需要在上面提到的harbor目錄中執行)
docker-compose down -v
//停止
docker-compose up -d
//啟動
?