如何创建docker注册表镜像

时间:2015-07-16 12:12:07

标签: docker docker-registry

我使用的是MAC OS X.我想在这个tutorial中使用镜像,其第1步需要这样做:

docker --registry-mirror=http://<my-docker-mirror-host> -d

但是,当我在终端中使用此命令时,它确实无法工作:

  

已提供但未定义的标志: - registry-mirror请参阅&#39; docker --help&#39;。

然后,我在教程中使用另一种方式:

  

您可以将--registry-mirror选项添加到   / etc / default / docker中的DOCKER_OPTS变量

我不知道在哪里添加这个DOCKER_OPTS。我想在客户端1.7.0中使用镜像。谁能告诉我如何设置镜子?
我使用此命令创建镜像:

docker run -d -p 5000:5000 -e REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/Users/v11/Documents/docker-registry --restart=always --name mirror -e STANDALONE=false -e MIRROR_SOURCE=https://registry-1.docker.io -e MIRROR_SOURCE_INDEX=https://index.docker.io registry

我测试它并发现它没有像它描述的那样可以从本地注册表下载。即使我没有使用此命令:

docker push localhost:5000/batman/ubuntu

此命令可以使用,我真的不知道发生了什么。也许国旗&#34; STANDALONE = false&#34;影响?我想设置镜子,任何人都可以告诉我该怎么做。谢谢。

1 个答案:

答案 0 :(得分:4)

问题是命令:

$ docker --registry-mirror=http://<my-docker-mirror-host> -d

用于配置Docker守护程序,而不是Docker客户端。在boot2docker中(这可能是您使用的),这意味着您需要登录boot2docker VM并在那里运行这些命令。

您可以使用boot2docker ssh登录boot2docker VM。虽然您可以停止守护程序并使用新命令重新启动,但最好编辑每次boot2docker重新启动时将使用的文件/var/lib/boot2docker/profile。只需添加以下内容:

EXTRA_ARGS="--registry-mirror=http://<my-docker-mirror-host>"

如果你然后重启boot2docker,你应该好好去。