Hello Docker(五)——Docker Registry
1、私有Registry部署
一、Registry簡介
Registry用於保存docker鏡像,包括鏡像的層次結構和元數據。用戶可使用官方的Docker Hub,也能夠自建私有Registry。mysql
二、私有Registry部署
Registry鏡像下載:docker pull registry
Registry容器運行:docker run -d -p 5000:5000 --restart always --name registry registry
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
Registry服務默認會將上傳的鏡像保存在容器的/var/lib/registry,將主機的/opt/registry目錄掛載到/var/lib/registry目錄,便可實現將鏡像保存到主機的/opt/registry目錄。
sql
三、Registry查看
Registry容器啓動後,使用瀏覽器訪問http://ip_add:5000/v2/。docker
四、Docker配置
客戶端Docker配置文件/etc/docker/daemon.json須要增長Registry服務地址:apache
{ "registry-mirrors": ["https://pee6w651.mirror.aliyuncs.com", "https://docker.mirrors.ustc.edu.cn"], "insecure-registries": ["192.168.0.104:5000"] }
"registry-mirrors": ["https://pee6w651.mirror.aliyuncs.com"]
是阿里雲代理的Registry Hub倉庫的地址,能夠加快國內訪問Registry Hub倉庫的速度。
重啓Docker:systemctl restart docker
json
五、tag Docker鏡像
將當前鏡像命名爲符合倉庫要求registry_url:port/ImageName:tag的格式,若是不指定tag版本,則默認爲latest。docker tag docker.io/wurstmeister/kafka 192.168.0.104:5000/kafka:1.0
瀏覽器
六、push Docker鏡像至私有Registry
docker push 192.168.0.104:5000/kafka:1.0
push成功後,能夠查看本地/opt/registry目錄下是否已經有剛推送的Docker鏡像,也能夠在瀏覽器中輸入http://ip_add:5000/v2/_catalog
查看當前私有Registry的Docker鏡像。
ide
七、私有Registry刪除
docker container stop registry
中止私有registrydocker container rm -v registry
刪除registry數據
ui
2、Docker鏡像製做
一、Docker鏡像製做
使用docker build經過Dockerfile建立鏡像阿里雲
二、Docker容器
docker commit -a "scorpio.com" -m "my apache" a404c6c174a2 mymysql:v1
將容器a404c6c174a2保存爲新的鏡像,並添加提交人信息和說明信息。
url
三、tag鏡像
docker tag docker.io/wurstmeister/kafka 192.168.0.104:5000/kafka:1.0
3、Docker鏡像操做
一、Docker鏡像下載
docker pull 192.168.0.104:5000/kafka:1.0
二、Docker鏡像上傳
docker push 192.168.0.104:5000/kafka:1.0