harbor 企業級的鏡像倉庫,查了下發現確實不錯,比自帶的那個registry好用很多。無坑離線部署教程如下:
一、離線部署
官方安裝文檔
https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md
https://www.cnblogs.com/dingkailinux/p/8323866.html #配置詳解參考
- 1、安裝docker
更改系統內核參數爲最優配置,主要調大openfile和ulimit參數。
然後安裝docker,這就不累述了。
yum install docker -y;
-
2、安裝docker-compose:
操作如下:sudo curl -L “https://github.com/docker/compose/releases/download/1.24.0/docker-compose-(uname -m)” -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version #查看版本號,驗證docker-compose安裝成功
完成。
- 3、建立密鑰
這個用的複雜方式,改天研究下怎麼改簡單點:
創建證書參考:https://blog.csdn.net/cs958903980/article/details/78111771
mkdir -p /opt/harbor/certs
openssl req -newkey rsa:4096 -nodes -sha256 -keyout /opt/harbor/certs/harbor.key -x509 -days 3650 -out /opt/harbor/certs/harbor.crt
在一串信息後如下提示按需要輸入信息:
Country Name (2 letter code) [XX]:CN <--國家名稱,中國輸入CN
State or Province Name (full name) []:GUANGDONG <--省名,拼音
Locality Name (eg, city) [Default City]:GUANZHOU <--市名,拼音
Organization Name (eg, company) [Default Company Ltd]:RI <--公司英文名
Organizational Unit Name (eg, section) []:BAR <--可以不輸入,單位名稱
Common Name (eg, your name or your server's hostname) []: registry.iseeyou.cn <--服務器主機名,若填寫不正確,瀏覽器會報告證書無效,但並不影響使用
Email Address []:[email protected] <--電子郵箱,可隨便填
或者使用命令:
openssl req -x509 -days 3650 -newkey rsa:4096 -nodes -sha256 -keyout testregistry.wemeetyou.cn.key -subj '/C=xj /0=shsnconDocker/CN=XXX/ [email protected] subjectAltName= IP=XXX' -out registry.iseeyou.cn.crt #這個抄來的,沒有驗證。
密鑰文件:harbor.key
證書文件:harbor.crt
證書文件需要發送給用戶(這個需要在客戶機上配置),並且配置到用戶Docker Host上,注意路徑需要跟域名一致,例如:
/etc/docker/certs.d/registry.iseetyou.cn/harbor.crt
- 4、下載安裝:
下載地址:https://github.com/goharbor/harbor/releases
wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.5.tgz
tar -zxf harbor-offline-installer-v1.7.5.tgz
修改配置文件:
vim harbor.cfg
hostname = registry.iseeyou.cn
ui_url_protocol = https
customize_crt = off
ssl_cert = /opt/harbor/certs/harbor.crt
ssl_cert_key = /opt/harbor/certs/harbor.key
安裝:
./checkenv.sh #檢查依賴,使用離線安裝的包沒有這個東西,只有安裝,編譯安裝方式纔有。
./install.sh #安裝
#這就要注意了,上邊第一步的安裝docker-compose就是這需要的,因此先安裝了。
#安裝時正常會有如下輸出:
./install.sh
[Step 0]: checking installation environment …
…#中間是省略了的。
? ----Harbor has been installed and started successfully.----
Now you should be able to visit the admin portal at https://testregistry.wemeetyou.cn.
For more details, please visit https://github.com/goharbor/harbor .
5、Harbor 登錄
如果一切正常,執行上述步驟,即可安裝成功。現在通過瀏覽器來訪問Harbor,訪問地址https://192.168.116.6/harbor # 192.168.116.6 是我主機IP
默認的管理員用戶名/密碼是 admin / Harbor12345
客戶端使用 docker login 192.168.116.6 然後輸入賬戶、密碼完成登錄。
到這,一個單機版本的harbor倉庫就搭建完成了。
集羣部署harbor: https://blog.51cto.com/coolsky/2343408
- 6、卸載
先進入安裝目錄:
停止
docker-compose stop
卸載docker容器:
docker-compose down
刪除本地卷組:
docker volume rm `docker volume ls |awk '{print $2}' |grep -v nexus-data `
刪除數據:
rm -rf /data