将Docker Hub镜像推送到私有Docker Registry

3
全新使用 Docker 的 Mac 用户想请你帮忙翻译。我已经在本地安装好了 Docker(可通过运行docker -v来验证)。我在远程 VM 上搭建了一个私有的 Docker Registry,如 myregistry.example.com:5000。我已经使用 TLS(根 CA 证书)和基本身份验证正确地设置了它。
我想从官方 Docker Registry 拉取一个镜像,比如ubuntu,然后将它推到我的远程/私有 Registry。但是当我执行docker pull ubuntu时,我收到以下错误消息:
myuser@mymachine:/tmp/docker$docker pull ubuntu
Using default tag: latest
Post http:///var/run/docker.sock/v1.20/images/create?fromImage=ubuntu%3Alatest: dial unix /var/run/docker.sock: no such file or directory.
* Are you trying to connect to a TLS-enabled daemon without TLS?
* Is your docker daemon up and running?

这里发生了什么?一旦我理清了思路,我是不是需要先登录我的私有注册表,然后将ubuntu推送到它上面?还是在push时会提示我输入基本身份验证凭据?


1
你是使用Docker Toolbox、boot2docker或Docker Machine安装的Docker吗?这不是与注册表通信的问题,而是Docker守护程序未运行或您没有在本地终端上导出DOCKER_HOST环境变量。 - Andy Shinn
谢谢@AndyShinn (+1) - 我使用Docker Toolbox进行安装。有什么想法吗?再次感谢! - smeeb
请查看这个后续问题,我认为这是我的问题的根源!(https://dev59.com/io_ea4cB1Zd3GeqPM1VO) - smeeb
有时候只需要使用sudo调用:sudo docker pull ubuntu - valerii ryzhuk
1个回答

0
这是因为您没有使用 `docker env` 配置当前的 shell。您应该先运行此命令。
eval "$(docker-machine env default)"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接