具体过程可以参考
docker Registry快速搭建私有镜像仓库
但是笔者按照上面链接测试发现,私有镜像存储位置并非链接上所说的/docker/registry/ 目录,而是/var/lib/registry, 因为registry镜像定义了一个路径为/var/lib/registry的volumn
如果不对该column做显示映射,docker会自动在宿主机的工作目录中创建一个目录,然后将该目录与/var/lib/registry挂接起来。
当然,大部分情况需要将镜像放到自己所创建的目录中,那需要进行显示的映射,如:
笔者需要将以后的镜像内容都放到/bigdata/docker/registry目录中,因此启动镜像的时候如下:
docker run -itd -v /bigdata/docker/registry/:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
启动后inspect 该容器volumn信息如下
"Mounts": [{"Type": "bind","Source": "/bigdata/docker/registry","Destination": "/var/lib/registry","Mode": "","RW": true,"Propagation": "rprivate"}
]
其中source是宿主机的目录,Destination为docker 容器的目录
此时通过push可以将镜像放到私有服务器中,具体过程可以查看
文章开头的链接。
push后的结果如下:
当然了自己也可以修改容器中存放镜像的目录,然后形成新的镜像
可以对
rootdirectory进行修改也可以达到目的。