為什麼要搭建私有倉庫?
docker官方提供有公共倉庫,位址hub.docker.com,但是在企業開發中有時需要自己的映象倉庫,方便協同開發以及生產自己的映象,此時就需要乙個私有倉庫。
一般來說都是用linux系統的伺服器,下面就一起來搭建自己的私有docker映象倉庫吧!
可參考我的部落格:linux cenots7 安裝 docker 和 docker-compose 很詳細,這裡不再贅述!
前往hub.docker.com搜尋registry
檔案內容如下:(名稱 registry.yml)
version: '3.1'
services:
registry:
image: registry
restart: always
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry/data:/var/lib/registry
在檔案所在目錄執行命令:
docker-compose -f registry.yml up -d
等待啟動成功後在瀏覽器輸入伺服器ip:5000/v2可看到如下頁面
下面介紹一款客戶端,hub.docker.com 搜尋 docker-registry-frontend
停止剛剛啟動的服務
docker-compose -f registry.yml down
重新編寫剛剛建立的dockerfile檔案(例如我的 registry.yml)
version: '3.1'
services:
registry:
image: registry
restart: always
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry/data:/var/lib/registry
# 加上下方配置
frontend:
image: konradkleine/docker-registry-frontend:v2
ports:
- 8080:80
volumes:
- ./certs/frontend.crt:/etc/apache2/server.crt:ro
- ./certs/frontend.key:/etc/apache2/server.key:ro
environment:
- env_docker_registry_host=192.168.217.133
- env_docker_registry_port=5000
重新執行啟動命令
docker-compose -f registry.yml up -d
瀏覽器檢視 伺服器ip:8080 可看到如下圖?
至此,私有倉庫搭建完畢,接下來 是騾子是馬拉出來溜溜唄!新啟動乙個伺服器,配置私有倉庫位址
vi /etc/docker/daemon.json
配置如下:
**
說明registry-mirrors
映象拉取位址
insecure-registries
你的私有倉庫位址
修改完畢執行systemctl restart docker重啟docker服務使檔案生效
檢視是否生效:執行命令?
拉取tomcat映象
# 從docker官方**拉取乙個tomcat映象做測試
docker pull tomcat
# 將拉取的tomcat映象打上自己的tag標籤
docker tag tomcat 192.168.217.133:5000/tomcat
# 檢視映象
docker images
可以看到打tag的映象?
將映象上傳剛剛咱們搭建的倉庫
等待上傳完成 到倉庫檢視
搭建docker映象私有倉庫
docker官方提供了docker hub來儲存我們的映象檔案。但由於docker hub管理的都是公開的映象,並且訪問的時候有時會特別的慢。所以我們打算來搭建乙個私有的倉庫,需要使用官方庫中的registry映象。執行registry映象 docker run d p 5000 5000 v ro...
docker私有映象服務搭建
docker私服的搭建很簡單,我們只需要執行乙個名叫registry的docker映象並啟動,就構建了乙個docker私服。這裡如果私服的伺服器位址為192.168.56.141對應主機名為docker01,我們的docker伺服器在另外一台伺服器上,伺服器位址為192.168.56.142,對應主...
Docker搭建私有映象倉庫
使用docker官方的registry映象搭建私有倉庫 一 安裝 1.拉取私有倉庫映象 docker pull registry22.建立啟動私有倉庫容器 mkdir pv usr local docker registry docker run itd v usr local docker reg...