1.搭建私有库
docker pull registry
kpsmile@kpsmile-PC:~$ docker run -d -p 5000:5000 --name="privateRegistry" -v /home/kpsmile/privateRegistry:/tmp/registry b8604a3fe854
ee69b611ee57464283af619d23d7ae4d8c13693b0806ea89479a6decb3ce8b2c
kpsmile@kpsmile-PC:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ee69b611ee57 b8604a3fe854 "/entrypoint.sh /etc…" 7 seconds ago Up 5 seconds 0.0.0.0:5000->5000/tcp, :::5000->5000/tcp privateRegistry
需要在 /etc/docker/daemon.json添加 要暴露的端口
{
"registry-mirrors": ["https://XXXX.aliyun.com"], //设置镜像加速
"insecure-registries": ["192.168.114.128:5000"] //设置私有仓库地址可以设为http
}
2.构建镜像
(1)docker commit
使用docker commit 构建镜像
docker commit -a=”authorName” -m=”Image commit description” containerId imageName[:tag]
kpsmile@kpsmile-PC:~$ docker commit -a="wm" -m="with ifconfig" 2dc0cfc8ac74 ubuntu-wm:1.0
sha256:28fed4ac75fe35fbbb469ad5f6f8dfcc0fb6c6642f99f2f9b1d741b38192bcd5
(2)dockerfile
TODO
3.将镜像打签
docker tag old_version_image:tag new_version_image:tag
kpsmile@kpsmile-PC:~$ docker tag ubuntu-wm:1.0 192.168.114.128:5000/ubuntu-wm:1.0
kpsmile@kpsmile-PC:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu-wm 1.0 28fed4ac75fe 2 minutes ago 111MB
192.168.114.128:5000/ubuntu-wm 1.0 28fed4ac75fe 2 minutes ago 111MB
wm/ubuntu 1.0 40e576052d3f 7 hours ago 111MB
redis latest 7614ae9453d1 7 months ago 113MB
registry latest b8604a3fe854 8 months ago 26.2MB
ubuntu latest ba6acccedd29 9 months ago 72.8MB
4.将镜像推送
kpsmile@kpsmile-PC:~$ docker push 192.168.114.128:5000/ubuntu-wm:1.0
The push refers to repository [192.168.114.128:5000/ubuntu-wm]
64a5b3bb377f: Pushed
9f54eef41275: Mounted from wm/ubuntu
1.0: digest: sha256:5f2b7a66109495838cec59283a6935d340c383df0947e703dde24005856d0f1c size: 741