天天看點

制作本地docker-ce鏡像倉庫(使用reposync、createrepo、httpd)

記錄:330

場景:在CentOS 7.9作業系統上,使用reposync從開源鏡像站下載下傳docker-ce鏡像倉庫的rpm包;使用createrepo制作本地docker-ce鏡像倉庫;使用httpd釋出服務。解決内網中使用yum指令安裝docker-ce的需求。

版本:

作業系統:CentOS 7.9

名詞:

Docker CE,是免費的Docker産品的新名稱,Docker CE包含了完整的Docker平台,非常适合開發人員和運維團隊建構容器APP。

Docker Hub概述:Docker Hub is the world's easiest way to create, manage, and deliver your team's container applications.

docker官網:https://www.docker.com/

Docker Hub官網:https://hub.docker.com/

1.基礎環境

1.1基礎工具準備

(1)安裝reposync工具

指令:yum install -y yum-utils

解析:yum-utils包括了很多yum功能,比如reposync下載下傳工具。預設安裝在/usr/bin/reposync。

(2)安裝createrepo工具

指令:yum install -y createrepo

解析:使用createrepo生成yum源鏡像倉庫中繼資料。

(3)安裝httpd工具

指令:yum install -y httpd

解析:安裝httpd後可以使用httpd釋出服務,把yum源鏡像倉庫提供給内網其它機器使用。

(4)配置httpd服務

安裝httpd完成後,會生成httpd釋出服務的目錄,把需要httpd釋出的内容移動此目錄,就可以實作http通路。

httpd預設端口:80

httpd預設生成的目錄: /var/www/html/

httpd啟動指令:systemctl start httpd

httpd開機自啟動指令:systemctl enable httpd

檢視httpd啟動狀态指令:systemctl status httpd.service

檢視httpd釋出端口指令:netstat -atunlp | grep httpd

1.2鏡像網站

(1)官網鏡像站

官網下載下傳位址:https://download.docker.com/linux/centos/

(2)國内鏡像站

阿裡雲開源鏡像站:https://mirrors.aliyun.com/docker-ce

1.3機器規劃

(1)外網主機hadoop200

主機hadoop200,可連接配接公網,下載下傳公網rpm包。

(2)内網主機hadoop201

主機hadoop201,内網主機,無法下載下傳公網rpm包。

2.使用reposync下載下傳docker-ce鏡像倉庫的rpm包

2.1下載下傳位址

位址:https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/

2.2配置鏡像站yum源檔案

在主機hadoop200操作。

編輯檔案:vi /etc/yum.repos.d/docker-ce.repo

編輯内容:

[dockerCe]
name=dockerCe
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable
gpgcheck=0
enabled=1
           

解析:在baseurl中配置的路徑就是阿裡雲開源鏡像站docker-ce鏡像倉庫位址。

2.3清空和重新整理yum源中繼資料緩存

指令:yum clean all && yum makecache

解析:yum clean all,清空曆史yum源中繼資料;yum makecache,建立yum源中繼資料緩存。

2.4使用reposync下載下傳鏡像倉庫的rpm包

(1)下載下傳

下載下傳docker-ce的x86_64包指令:reposync -r dockerCe -p /home/mirror

注釋:-r讀取,-p指定目錄。

(2)下載下傳完成

下載下傳完成後,資料目錄。

docker-ce的x86_64包目錄:/home/mirror/dockerCe

3.使用createrepo制作鏡像倉庫和httpd釋出鏡像倉庫服務

3.1在httpd預設目錄建立目錄

在主機hadoop201,在httpd預設目錄下建立目錄。。

目錄:mkdir -p /var/www/html/docker-ce/

3.2已下載下傳包移到httpd釋出的目錄

(1)已下載下傳包

在主機hadoop200,包對應目錄。

docker-ce的x86_64包目錄:/home/mirror/dockerCe

(2)把rpm包把移到httpd目錄

在主機hadoop201,包對應目錄。

docker-ce的x86_64的rpm包移到目錄:/var/www/html/docker-ce

(3)拷貝指令

如果具備機器之間拷貝可參考如下指令,不具備則使用其它方式拷貝。

拷貝指令:scp -r /home/mirror/dockerCe/* [email protected]:/var/www/html/docker-ce

3.3使用createrepo生成鏡像倉庫中繼資料

在主機hadoop201,生成鏡像倉庫中繼資料。

生成docker-ce倉庫指令:createrepo -v /var/www/html/docker-ce

解析:createrepo,生成鏡像倉庫中繼資料;在目錄下會生成repodata目錄,鏡像倉庫中繼資料在此目錄。

3.4使用httpd釋出鏡像倉庫的位址

使用httpd釋出鏡像倉庫目的,就是為了是内網機器或者叢集機器都能使用。

位址:http://192.168.19.201/docker-ce

可以在浏覽器檢視,驗證位址可用。

3.5新增鏡像倉庫yum源配置檔案

編輯檔案:vi /etc/yum.repos.d/docker-ce.repo

編輯内容:

[docker-ce]
name=docker-ce
baseurl=http://192.168.19.201/docker-ce
enabled=1
gpgcheck=0
           

解析:[docker-ce],本地鏡像倉庫的唯一辨別;name,本地鏡像倉庫名稱;baseurl,本地鏡像倉庫使用httpd釋出的位址;enabled=1,啟動鏡像倉庫,為0則不啟用;gpgcheck=0,不校驗。

3.6清空和重新整理yum源中繼資料緩存

指令:yum clean all && yum makecache

解析:yum clean all,清空曆史yum源中繼資料;yum makecache,建立yum源中繼資料緩存。

3.7應用本地鏡像倉庫

(1)檢視倉庫資訊

檢視docker-ce倉庫:yum repolist docker-ce

解析:能看到倉庫資訊和安裝包數量。

(2)搜尋倉庫中的包

指令:yum search --showduplicates docker-ce

(3)安裝倉庫中的包

指令:yum install -y docker-ce

解析:預設安裝倉庫中最新的包;如需安裝特定版本,需在包名後面指定版本号。

3.8其它機器使用本地鏡像倉庫

部署本地鏡像倉庫主要目的:内網叢集使用本地鏡像倉庫。

(1)把yum源配置檔案拷貝的目标機器

拷貝指令:scp -r /etc/yum.repos.d/docker-ce.repo [email protected]:/etc/yum.repos.d/

(2)目标機器清空和重新整理yum源中繼資料緩存

指令:yum clean all && yum makecache

解析:yum clean all,清空曆史yum源中繼資料;yum makecache,建立yum源中繼資料緩存。

(3)目标機器使用yum指令

搜尋倉庫中的包:yum search --showduplicates docker-ce

以上,感謝。

2022年11月24日