摘要:包括兩個關(guān)鍵組成部分和。簡單理解,第一個是負(fù)責(zé)存儲的,第二個是負(fù)責(zé)管理鏡像的。使用阿里云的保存鏡像文件默認(rèn)鏡像文件存到本地磁盤,這個可擴(kuò)展性不是很好,我們可以把鏡像文件存到中。注查詢網(wǎng)址阿里云的其他參數(shù)查詢網(wǎng)址
Docker Registry簡介
Docker Registry是開源的軟件,可以進(jìn)行存儲和分發(fā)Docker鏡像。Docker Registry包括兩個關(guān)鍵組成部分:Docker Trusted Registry和Docker Hub。簡單理解,第一個是負(fù)責(zé)存儲的,第二個是負(fù)責(zé)管理鏡像的。
Docker Hub以前叫作Docker Index,Docker每次pull鏡像時,都是先去Docker Index獲取鏡像信息,然后去保存鏡像的Registry里面下載。
用過Docker的都知道,每次pull鏡像時都很慢。后來國內(nèi)出現(xiàn)了一些加速下載的,可是只是加速了鏡像文件的下載。還是需要去連接官方的index服務(wù),這一步很慢,而且還可能失敗。
再往后,國內(nèi)也提供index服務(wù)的加速了,但這樣我們就需要完全信任他們了,因為我們完全不用連接官方的服務(wù)器了。如果我們不信任他們,或者我們有自己的私有鏡像,不想發(fā)到公網(wǎng)去,我們就可以用Docker官方推薦的Docker Registry了。
官方提供了Docker Registry的鏡像文件,我們只需執(zhí)行docker pull registry就可以了。今天(206.02.24)lastest標(biāo)簽的registry是版本0.9.1,所以如果我們要用最新版本2.3,可以拉取tag為2,2.3,2.3.0的都可以。執(zhí)行如下命令即可:
docker pull registry:2啟動Docker Registry
啟動:
docker run -d -p 443:5000 --restart=always --name registry registry:2
下載鏡像,并把它上傳到自己的registry:
docker pull busybox && docker tag busybox localhost/busybox docker push localhost/busybox
這樣localhost/busybox就在自己的registry中了,下次可以直接pull下來
docker pull localhost/busybox鏡像文件存儲本地
docker run -d -p 443:5000 --restart=always --name registry -v `pwd`/data:/var/lib/registry registry:2使用https
上一篇文章介紹了如何獲取證書,新建一個目錄config,將證書chained.pem和密鑰domain.key拷貝到目錄config里面,然后執(zhí)行:
docker run -d -p 443:5000 --restart=always --name registry -v `pwd`/config:/config -e REGISTRY_HTTP_TLS_CERTIFICATE=/config/chained.pem -e REGISTRY_HTTP_TLS_KEY=/config/domain.key registry:2
下次對鏡像進(jìn)行操作時,可以把localhost改為這個證書對應(yīng)的域名了。證書有的是crt結(jié)尾了,沒關(guān)系,把chained.pem改為你想要的名字就可以了。
添加權(quán)限認(rèn)證按照之前的步驟,任何人都可以push和pull這個倉庫中的鏡像。如果443端口暴露在外網(wǎng)中,最好加個權(quán)限認(rèn)證。testuser和testpassword分別為用戶名和密碼,可以修改為你想要的,然后執(zhí)行:
htpasswd -Bbn testuser testpassword > config/htpasswd
如果本地沒有安裝htpasswd,也可以在啟動了registry后執(zhí)行如下命令:
docker exec registry htpasswd -Bbn testuser testpassword > config/htpasswd
然后再執(zhí)行啟動命令:
docker run -d -p 443:5000 --restart=always --name registry -v `pwd`/config:/config -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/config/htpasswd -e REGISTRY_HTTP_TLS_CERTIFICATE=/config/chained.pem -e REGISTRY_HTTP_TLS_KEY=/config/domain.key registry:2
這樣,訪問registry就需要先login,docker login myregistrydomain.com,按提示輸入用戶名和密碼即可。
默認(rèn)鏡像文件存到本地磁盤,這個可擴(kuò)展性不是很好,我們可以把鏡像文件存到OSS中。這個使用起來也很簡單,因為官方registry中已經(jīng)包含了OSS的驅(qū)動了。只需修改啟動命令即可:
docker run -d -p 443:5000 --restart=always --name registry -v `pwd`/config:/config -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/config/htpasswd -e REGISTRY_HTTP_TLS_CERTIFICATE=/config/chained.pem -e REGISTRY_HTTP_TLS_KEY=/config/domain.key -e REGISTRY_STORAGE=oss -e REGISTRY_STORAGE_OSS_ACCESSKEYID=********** -e REGISTRY_STORAGE_OSS_ACCESSKEYSECRET=***************** -e REGISTRY_STORAGE_OSS_REGION=oss-cn-qingdao -e REGISTRY_STORAGE_OSS_BUCKET=******* registry:2
將上面命令中的***替換成自己的,REGISTRY_STORAGE_OSS_REGION的值也要替換成自己oss所在的地區(qū),如果是青島就是oss-cn-qingdao。
注:
region查詢網(wǎng)址
阿里云OSS的其他參數(shù)查詢網(wǎng)址
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26525.html
摘要:前言最近開始研究的應(yīng)用,于是打算搭建一個私有的倉庫,并使用阿里云的作為存儲引擎。登陸成功后,執(zhí)行以下命令即可上傳配置阿里云首先在剛才執(zhí)行的命令行窗口中按退出服務(wù)。待上傳完畢,可以打開阿里云的控制臺界面檢查文件是否被正確上傳上去了。 前言 最近開始研究 Docker 的應(yīng)用,于是打算 搭建一個私有的 Docker 倉庫,并使用阿里云的 OSS 作為存儲引擎 。從網(wǎng)上搜索到的資料大都是比較...
摘要:安裝號稱是世界上最流行的私服管理軟件可以搭建幾乎目前所有常見的倉庫如等更是增加了對倉庫的支持應(yīng)該是搭建私服的唯一選擇有兩個版本和其中版本是免費(fèi)專業(yè)版需要收費(fèi)對于日常的倉庫管理已經(jīng)足夠用支持二進(jìn)制文件安裝和安裝這里選擇安裝簡單方便運(yùn)行以下命令 安裝 Nexus號稱是世界上最流行的私服管理軟件(The worlds most popular repository),可以搭建幾乎目前所有常見...
對于網(wǎng)站存儲的需求,大多數(shù)人還是以私有網(wǎng)盤為主,目的是為了可以存儲屬于私人的視頻、文檔、音頻等資料。但是,也有不少的人想要搭建一個公共的網(wǎng)盤,主要目的是可以方便所有人查看、瀏覽和下載、使用,同時也提供視頻在線播放,變成影視站點。這樣的公共網(wǎng)盤服務(wù)搭建起來并不是很復(fù)雜,但是苦于高昂的存儲費(fèi)用,有的人盯上了超大容量且免費(fèi)的網(wǎng)盤服務(wù),例如OneDrive,團(tuán)隊版甚至可以達(dá)到TB以上,將OneDrive變...
摘要:筆主很早就開始用阿里云存儲服務(wù)當(dāng)做自己的圖床了。阿里云對象存儲文檔,本篇文章會介紹到整合阿里云存儲服務(wù)實現(xiàn)文件上傳下載以及簡單的查看。 Github 地址:https://github.com/Snailclimb/springboot-integration-examples(SpringBoot和其他常用技術(shù)的整合,可能是你遇到的講解最詳細(xì)的學(xué)習(xí)案例,力爭新手也能看懂并且能夠在看完...
閱讀 3688·2021-11-24 09:38
閱讀 3160·2021-11-15 11:37
閱讀 803·2021-11-12 10:36
閱讀 3562·2021-10-21 09:38
閱讀 3234·2021-09-28 09:36
閱讀 2438·2021-09-22 16:01
閱讀 5015·2021-09-22 15:09
閱讀 1236·2019-08-30 15:55