如何在 docker 注册表中设置图像存储路径?

How to set image stored path in docker registry?

我是 docker 的新手,我想配置我的本地 docker 注册表。所以我使用命令:

docker run -d -p 5000:5000 -e REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/opt/scs/v11/docker_registry --restart=always --name registry registry

然后,我使用命令将图像推送到注册表:

docker pull ubuntu&docker tag ubuntu localhost:5000/batman/ubuntu
docker push localhost:5000/batman/ubuntu

我认为它会将图像存储在/opt/scs/v11/docker_registry中,但我在该文件路径中找不到任何内容。我想知道我的推图在哪里? 想把图片存放在特殊的文件路径下怎么办?

来自 here.

从 docker.io

中拉取注册表容器

docker pull registry

然后启动注册服务器

docker run -d -p 5000:5000 -v /docker_repo:/opt/scs/v11/docker_registry registry

停止 docker 服务器

service docker stop

从我们的本地注册表开始 Docker(即我们的 Docker 服务器 IP 是 192.168.109.9)

docker -d –insecure-registry 192.168.109.9:5000 &

从 Docker 集线器

中拉取图像

docker pull ubuntu

为本地使用标记图片

docker tag ubuntu 192.168.109.2:5000/ubuntu

查看你的图片

docker images

将图像推送到我们的本地注册表

docker push 192.168.109.9:5000/ubuntu

现在,我们可以从本地注册表中拉取镜像

docker pull 192.168.109.9:5000/ubuntu

您能否尝试环境变量 STORAGE_PATH 并将容器注册表路径映射到主机上的 /tmp/registry(或任何其他可用目录)。

docker run -d -p 5000:5000   -e STORAGE_PATH=/registry  -v /tmp/registry:/registry  registry

在我的 centos 服务器上有效:

[dude@localhost etc]$ ls -la /tmp/registry/
total 8
drwxrwxr-x.  4 dude dude   38 Jul 16 12:24 .
drwxrwxrwt. 13 root root 4096 Jul 16 12:28 ..
drwxr-xr-x. 16 root root 4096 Jul 16 12:25 images
drwxr-xr-x.  3 root root   20 Jul 16 12:24 repositories
[dude@localhost etc]$ 

取自here