一:摘要概述
Docker製作的應用鏡像需要進行保存,Docker自身提供的倉庫僅僅滿足基本的存儲等行爲。對於鑑權、UI等方面支持薄弱,市面上比較流行的私有鏡像倉庫就是使用Harbor。本文將詳細介紹Harbor的安裝、HTTP的支持、基本的鏡像上傳下載操作,其餘更多高級功能留待自行了解
二:軟件安裝
Harbor對於目標機器配置、相關軟件版本都有着不同的要求,具體將會在下面一一描述
2.1 硬件要求
資源名稱 | 最低要求 | 推薦配置 |
---|---|---|
CPU | 2CPU | 4CPU |
Mem | 4GB | 8GB |
Disk | 40GB | 160GB |
2.2 軟件要求
軟件名稱 | 版本要求 |
---|---|
Docker Engine | 17.06.0-ce+ |
Docker Compose | 1.18.0 |
OpenSSL | 最新版本 |
2.3 相關軟件安裝
- Docker的安裝請轉至另外的相關文章:Docker離線安裝
- DockerCompose的安裝如下:當然也可以離線下載好docker-compose文件後移動到
/usr/local/bin/
目錄下
// 在線安裝下載
curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
// 授予文件權限
chmod +x /usr/local/bin/docker-compose
2.4 Harbor安裝
github上官方已經說得很清楚相關的安裝流程,這裏贅述一下,無非就是在線下載亦或是離線下載後解壓縮,修改對應的配置文件後啓動提供腳本即可。個人建議第一次安裝修改一下hostname和http的port參數即可,當然UI登錄的密碼也可以修改
三:HTTP支持
這點很重要,Docker默認支持HTTPS。要想Docker登錄使用HTTP協議必須修改daemon.json文件,內容如下:第一個是以前配置的阿里雲鏡像倉庫
{
"registry-mirrors": [
"https://w9o4etz3.mirror.aliyuncs.com"
],
"insecure-registries": [
"Harbor服務IP:發佈的端口"
]
}
修改完以後重啓Docker服務,輸入如下命令進行登錄
// Dokcer登錄Harbor命令
docker login Harbor服務IP地址:HTTP暴露端口
四:上傳下載鏡像
通過瀏覽器UI界面登錄Harbor以後可以創建項目,如果想將鏡像發佈到Harbor中必須首先創建對應的項目,比如當前創建了一個harbor_test的項目
// 假設Docker中有一個redis鏡像,將其傳到Harbor中
// 第一個給鏡像打標籤
docker tag redis:latest Harbor服務IP地址:端口號/Harbor創建的項目名稱/任意鏡像名字:版本
// 上傳鏡像
docker push 上面打好標籤的鏡像
// 下載
docker pull Harbor服務地址:端口/項目名稱/鏡像名稱:版本