-------------------------------------安裝前介紹-----------------------------------------------------
harbor是一個docker私有鏡像倉庫,雖然docker官方提供了公共的鏡像倉庫(Docker Hub),但是從安全和效率等方面考慮,部署私有環境內的Registry也是非常必要的。Harbor是由VMware公司開源的企業級的Docker Registry管理項目。
docker官方提供了一個私有鏡像倉庫 docker Registry,安裝部署容易,安裝一個Registry容器就可以使用了。
但是Registry有以下缺點:
1、沒有圖形界面
2、 沒有項目管理
3、沒有用戶權限控制
4、 看不到鏡像操作記錄
Harbor的優勢:
1、圖形管理界面。
2、按項目管理鏡像。
3、獨立的用戶管理,不同用戶可以操作不同鏡像,細粒度的權限控制,包含create、push 、pull、delete。
4、鏡像管理。
5、標籤管理。
6、操作日誌管理。
-------------------------------------安裝前準備-----------------------------------------------------
步驟一:安裝docker
一、安裝需要的軟件包,yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的
yum install -y yum-utils device-mapper-persistent-data lvm2
二、設置yum源
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央倉庫)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里倉庫)
三、查看倉庫中所有的docker版本
yum list docker-ce --showduplicates | sort -r
四、安裝docker,yum install docker-ce-版本號
yum install docker-ce-18.06.2.ce
五、啓動docker和設置開機自動啓動
systemctl enable docker
systemctl start docker
步驟二:安裝docker-compose
<方式一>CentOS:
yum install epel-release -y
yum install python-pip -y
Ubuntu:
apt-get install python-pip -y
# 通用命令
pip --version
pip install --upgrade pip
pip install -U -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose
docker-compose version
<方式二>
1、安裝pip
yum -y install epel-release
yum -y install python-pip
2、查看和更新
pip --version
pip install --upgrade pip
3、安裝和查看版本
pip install docker-compose
docker-compose version
<方式三>
1、yum update curl
2、下載和安裝
sudo curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
3、查看版本
docker-compose version
步驟三:下載harbor在線或離線安裝包
1、harbor的倉庫頁面進行下載版本
https://github.com/goharbor/harbor/releases
harbor-online-installer-v1.8.0.tgz
2、下載後上傳到服務器
cd /home/
tar -zvxf harbor-online-installer-v1.8.0.tgz
解壓後會自動生成harbor文件
-------------------------------------安裝開始------------------------------------------------------
步驟一:創建https證書
# 創建證書目錄,並賦予權限
mkdir -p /home/cert/harbor
chmod -R 777 /home/cert/harbor
cd /home/cert/harbor
# whereis openssl 檢查是否有安裝openssl,如果沒有先安裝openssl組件,如果有就不用安裝了
whereis openssl
yum install openssl
# 創建服務器證書密鑰文件harbor.key
openssl genrsa -des3 -out harbor.key 2048
# 輸入密碼,確認密碼,自己隨便定義,但是要記住,後面會用到。
# 創建服務器證書的申請文件harbor.csr
openssl req -new -key harbor.key -out harbor.csr
# 輸入密鑰文件的密碼, 然後一路回車
# 備份一份服務器密鑰文件
cp harbor.key harbor.key.org
# 去除文件口令
openssl rsa -in harbor.key.org -out harbor.key
# 輸入密鑰文件的密碼
# 創建一個自當前日期起爲期十年的證書 harbor.crt
openssl x509 -req -days 3650 -in harbor.csr -signkey harbor.key -out harbor.crt
步驟二:編輯啓動信息
1、vim harbor.yml並編輯
# 將hostname改成本機IP或域名,不要用localhost,127.0.0.1或0.0.0.0,冒號後面都有一個空格
hostname: xxx.njxx.xxx
ui_url_protoc0l: https
# 將http端口改成8081,因爲默認用的80端口已經被佔用,http可以指定任意端口
http:
port: 8081
# 配置https的端口,只能使用443端口,更改證書路徑,證書路徑爲剛剛生成的https證書的實際路徑
https:
port: 443
certificate: /home/cert/harbor/harbor.crt
private_key: /home/cert/harbor/harbor.key
# 修改後臺管理密碼
harbor_admin_password: harbor12345
# harbor的內部數據庫密碼
database:
password: root123
# 修改harbor數據存儲路徑與日誌存儲路徑,目錄要先創建好並賦予777權限
data_volume: /data/harbor-data
# 修改日誌存放路徑,默認路徑爲/var/log/harbor
log:
local:
localtion: /data/harbor-log
最後保存退出
步驟三:啓動
# 進入harbor安裝目錄
cd /home/harbor
# 啓動
./install.sh
步驟四:瀏覽器使用
直接訪問域名加上自己配置的端口方法
用戶名爲admin,密碼爲配置文件中定義的
至此安裝成功
-------------------------------------docker信任配置---------------------------------------------------
步驟一:配置倉庫爲docker受信任的倉庫
# 編輯
vi /etc/docker/daemon.json
# 追加內容
{
"insecure-registries": ["xx.xx.x.xxx:8081"]
}
步驟二:拷貝https證書文件harbor.crt到 /etc/docker/certs.d/serverIp 文件夾。每個docker都要拷貝證書文件
mkdir –p /etc/docker/certs.d/xx.xx.xx.xx
cp /home/cert/harbor/harbor.crt /etc/docker/certs.d/xx.xx.xx.xx/ca.crt
步驟三:重啓docker(注意不重啓後面docker login會訪問不了harbor)
systemctl daemon-reload
systemctl restart docker.service
步驟四:重啓harbor
cd /home/harbor
./prepare
docker-compose down
docker-compose up -d
-------------------------------------將本地業務鏡像push到harbor-----------------------------------------
步驟一:登錄harbor
docker login xxx.xx.xx.xx
輸入賬戶密碼
登陸成功後,token會存放在 ~/.docker/config.json.文件裏
步驟二:給本地鏡像打上tag標記,打標記的時候要加上項目名稱。
# docker tag 本地鏡像名:版本號 ip:port/項目名稱/遠程鏡像名:版本號,如果不加版本號表示最新版本
docker tag demo1:v1.0.1 xx.xx.xx.xx:8081/test/demo1:v1.0.1
# 上傳鏡像到harbor
docker push xx.xx.xx.xx:8081/test/demo1:v1.0.1
-------------------------------------harbor倉庫的常用操作記錄-----------------------------------------
1、從harbor上拉取鏡像
docker pull xx.xx.xx.xx:8081/test/demo1:v1.0.1
2、重啓harbor
cd /home/harbor
docker-compose down
./prepare #配置文件有改動時需要執行
docker-compose up -d
3、關閉harbor
cd /usr/local/harbor
docker-compose down -v
# 或者
docker-compose stop
4、卸載harbor
cd /home/harbor
docker-compose stop
rm -rf /home/harbor
-------------------------------------高可用配置介紹和安裝--------------------------------------------------------
-------------------------------------遇到問題彙總記錄--------------------------------------------------------------
1、如果不在harbor中新建項目,或者創建tag的時候不加項目名稱,在上傳鏡像時會發生錯誤,所以docker tag 打標籤的時候要一定要加上項目名稱。
2、#"注意docker-compose"命令只能在當前harbor目錄下使用(因爲該目錄下有harbor配置文件)
3、配置生效的方式。編輯保存配置後。在harbor安裝目錄下執行./prepare即可
停止服務: docker-compose stop
開始服務: docker-compose start
再次啓動harbor: docker-compose up -d
停止和關閉harbor命令:docker-compose down -v
docker-compose ps
參考鏈接:https://www.cnblogs.com/yyee/p/13121272.html
https://www.cnblogs.com/wangzhangtao/p/12076816.html
harbor鏡像倉庫介紹安裝使用全過程
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.