免費做電腦網(wǎng)站網(wǎng)站視頻
前言
剛進入大暑,
“清涼不肯來,烈日不肯暮”
,空調(diào)開到晚,還是滿身汗?!樗槟?/p>
我們知道,倉庫可見于不同領域,比如糧食倉庫、數(shù)據(jù)倉庫。在容器領域,自然也有鏡像倉庫(registry)。那為什么不是容器倉庫呢? 你想想,再想想,仔細想想…
docker
默認支持公有
倉庫和私有
倉庫兩種。而公有倉庫比如Docker Hub
,因為在國外(所以你懂得),一般訪問比較慢,甚至無法訪問。此刻你需要一個加速器(比如常見的阿里云、網(wǎng)易云、騰訊云等)。
另外一類就是私有倉庫,簡單講:“只為你服務”
,一般用于企業(yè)內(nèi)部的業(yè)務。那么,本博將通過最簡單的辦法,教會你搭建一個專屬的私有倉庫。
Q:如何搭建一個最簡單的Private倉庫
我們可以基于docker官方提供的registry鏡像,創(chuàng)建最簡單的私有倉庫。如何做,請緊跟博主,防止迷路。
為便于操作,本博的所有操作均基于docker desktop4.0.1完成,“所見即所得”
,一目了然。當然,如果需要熟練各種command,博主建議各位盆友在linux下完成相關操作(命令語句是完全一樣的)。
一、搭建Private倉庫
1. docker run
通過docker run
,我們先從公有倉庫下載一個docker倉庫鏡像:registry
。命令如下:
docker run -dp 5000:5000 --restart=always --name myregistry registry
2. docker ps
通過docker ps
,可查看已運行的容器列表:
此時,如有一個desktop則更簡單了,省去了很多麻煩,直接打開Container/Apps。
3. docker exec
我們通過docker exec
命令訪問容器內(nèi)部,或者直接在desktop上輕輕點一下即可:
4. 驗證倉庫運行是否成功
打開瀏覽器,輸入http://localhost:5000/v2/_catalog
,如返回如下圖:
那么,我們可以收到 Congratulation
啦!
博主操作均通過desktop完成,因可正常訪問,所以并未對倉庫的https驗證進行特殊處理。如Linux
環(huán)境需要,請對daemon.json
文件進行如下設置并完成docker重啟:
"insecure-registries": ["主機IP:5000"]
二、上傳一個鏡像
1. get image
倉庫已備,抓緊找個現(xiàn)有的鏡像哈。當然你可以通過docker build
,創(chuàng)建一個新鏡像。為省事,博主還是去公共倉庫“抓”
一個吧。
docker run -d -v d:/docker/data/redis:/usr/local/test/redis -p 6379:6379 redis:latest
通過-v
我們新建了一個卷(Volume),指定“主機-容器”
之間的目錄映射。
成功之后,可以在Images中,看到一個新鏡像:redis
。
2. tag image
接下來,博主通過docker tag
為redis鏡像做個副本(據(jù)為己有
),命令如下:
docker tag 7614ae9453d1 localhost:5000/myredis:1.0
成功后,則看到下圖,一個新鏡像誕生了:myredis
,版本1.0
。
3. push image
通過docker push
,將myredis
上傳私倉:
docker push localhost:5000/myredis:1.0
4. 驗證上傳是否成功
結(jié)語
docker registry
,一個簡單的docker鏡像管理倉庫,為私有倉庫的建設提供了一些幫助。當然如對私倉有更高的要求,我們需選擇新的工具去完成,這里不再多言。博主希望后續(xù)有機會再來大論一番。
系列回顧
- 微服務實戰(zhàn)系列之玩轉(zhuǎn)Docker(五)
- 微服務實戰(zhàn)系列之玩轉(zhuǎn)Docker(四)
- 微服務實戰(zhàn)系列之玩轉(zhuǎn)Docker(三)
- 微服務實戰(zhàn)系列之玩轉(zhuǎn)Docker(二)
- 微服務實戰(zhàn)系列之玩轉(zhuǎn)Docker(一)
- 微服務實戰(zhàn)系列之云原生