Harbor私有鏡像倉庫(上)

上圖配置爲工做環境node

 

特別注意:win10如今不容許使用私有ca證書,到時登陸瀏覽器會失敗,能夠選用火狐瀏覽器。linux

建立本身的CA證書docker

openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crtcentos

上面從上到下分別表示:中國、北京、北京、公司名雲計算、證書綁定的域名瀏覽器

 

生成證書籤名請求緩存

openssl req -newkey rsa:4096 -nodes -sha256 -keyout www.yunjisuan.com.key -out www.yunjisuan.com.csr安全

上面能夠設置密碼,這裏演示就不設置了curl

 

生成註冊表主機的證書測試

openssl x509 -req -days 365 -in www.yunjisuan.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out www.yunjisuan.com.crt網站

 

3、信任自簽發的域名證書

將自籤ca證書添加到系統信任

讓系統信任設置當即生效

4、Harbor 1.4 版本配置與安裝

注意:要關閉防火牆和selinux   

4.1 安裝docker-ce社區版

先關閉selinux     安裝依賴包

 

而後運行curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo獲取docker-ce.repo包

啓動docker,並加入開機自啓動

4.2 下載並安裝harbor私有倉庫

建立harbor的證書目錄,並複製

先mkdir -p /etc/ssl/harbor                    

建立harbor下載目錄並下載harbor-offline-installer-v1.5.0.tgz

下載包:wget http://harbor.orientsoft.cn/harbor-v1.5.0/harbor-offline-installer-v1.5.0.tgz

把原配置文件修改以下圖:第7行必須寫域名,跟以前建立的證書一致、第11行改爲https、第23行和24行指向證書位置

到第68行查看默認密碼,

安裝命令docker-compose(須要1.21版本)

安裝harbor私有鏡像倉庫(參數--with-clair是啓用漏洞掃描)

登陸瀏覽器(火狐瀏覽器),輸入本機ip地址訪問

點擊高級

再點擊添加例外

點擊確認安全例外

用戶名爲admin 密碼爲以前在配置文件裏看到的Harbor12345

接下來進行安全設置

在配置管理裏-項目建立  改成僅管理員,認證模式不用改(企業中改成LDAP認證)

在項目->library->配置管理裏把自動掃描鏡像勾選,企業中把阻止潛在漏洞鏡像也勾選

 

在linux上登陸

能夠看到上面輸入IP地址,結果報錯,這裏必須用域名

用域名時先須要映射一下

非交互式登陸:

上傳鏡像(以centos爲例):

格式必須爲docker push 域名/庫名/鏡像名

上傳成功:

其餘電腦要登陸harbor時,須要認證證書,同時須要讓那臺電腦信任認證證書,前面已經講過了,記住,信任完後須要重啓docker

映射也別忘了作

從harbor上下載時也是和上傳時格式同樣

 

harbor鏡像的複製與同步

harbor私有倉庫的主從複製,相似於MySQL,屬於一對多的複製

部署harbor-slave:再安裝一個harbor私有倉庫做爲harbor的從庫,域名爲www2.yunjisuan.com

建立證書,並讓linux信任證書,而後重啓docker服務

這時,要把www2.yunjisuan.com.crt 發送給主harbor,並讓主harbor信任該證書

而後在主barbor上執行操做

注意:這時登陸網站還能夠進入主harbor,若是不能進入,就執行上面的install那,從那開始從新執行一遍

 而後再在從harbor上也進行install那部分的操做

cat harbor.cfg文件,把www.yunjisuan.com都改成www2.yunjisuan.com

把www2.yunjisuan.com.key和www2.yunjisuan.com.crt複製到/etc/ssl/harbor/下

接下來和上面講的同樣

帳號密碼仍是和以前同樣

能夠看到從harbor裏面是空的,接下來在主harbor上操做

倉庫管理-->新建目標

 

注意,上面的驗證遠程證書不要勾,而後測試鏈接

能夠發現,鏈接是失敗的,

日誌文件在/var/log/harbor/下,有不少日誌,咱們能夠看ui.log分析錯誤

由於URL那輸入的必須是域名,即:www2.yunjisuan.com,但是harbor的主從複製是直接查詢DNS的,而不是映射,因此咱們還須要配置一下DNS服務才能解析出域名

進入linux虛擬機進行登陸看看

linux上是成功的,linux上是先查詢映射

再開一臺虛擬機,配置一下DNS解析服務:

建立正向解析

上圖中的yunjisuan.com.zone是複製named.empty得來的,cp -p named.empty yunjisuan.com.zone  

注意:必定要帶-p ,這是複製時把屬主和屬組都複製,不帶-p到時會出現權限錯誤

編輯配置文件:

 

驗證並開啓DNS服務:

驗證DNS的功能:

在主harbor上把網關改成以前配置DNS服務的虛擬機的ip:

 

這時,仍是鏈接失敗,這是由於緩存的關係,須要重啓docker服務

能夠看到,終於鏈接成功了,而後點擊肯定

點擊複製管理-->新建規則  定義把哪些鏡像同步過去

再點擊保存

再去從harbor看看

從庫已經傳輸完畢,主從複製搭建成功

相關文章
相關標籤/搜索