docker - 将文件推送到 Docker 中的私有(private)注册表中

标签 docker boot2docker docker-registry

我已经使用docker run -t -i -p 5000:5000registry设置了私有(private)注册表,并且可以从192.168.59.103:5000访问它(我正在使用boot2docker)。现在我已经拉取了一个镜像 tutum/tomcat ,当我尝试将镜像 (docker push 192.168.59.103:5000/tomcat) 标记为后推送到注册表中时192.168.59.103:5000/tomcat 我遇到如下错误 --

FATA[0004] Error: v1 ping attempt failed with error: Get https://192.168.59.103:5000/v1/_ping: EOF. If this private regi
stry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 192.168.59.103:5000` to
 the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag
; simply place the CA certificate at /etc/docker/certs.d/192.168.59.103:5000/ca.crt

来自其他帖子 --

我读过一些关于此问题的帖子,其中指出添加 DOCKER_OPTS 可以解决问题,并且应该将其添加到 /etc/default/docker 中,但是在我的系统 /etc/default 不包含 docker 文件夹,如提供结果的命令 sudo ls/etc/default/ 所示作为单个文件夹aufs

另一篇文章指出,只需将证书添加到 /etc/docker/certs.d/192.168.59.103:5000/ca.crt 即可解决此问题,但我无法即使我使用 sudo 也可以进入 docker 目录,如下所示 - 对于 cd/etc/docker

-sh: cd: 无法 cd 到/etc/docker

我在 docker 内使用注册表 ip 作为 0.0.0.0:5000 重复了相同的过程(假设 $boot2docker ip 应该在主机中使用,而不是在 docker 中使用) - - 但这仍然没有解决我面临的问题。

请帮我解决这个问题。我在下面添加了系统规范--

系统规范:

Microsoft Windows 7 via. boot2docker (CLI version 1.5)
Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
Server version: 1.5.0
Server API version: 1.17
Go version (server): go1.4.1
Git commit (server): a8a31ef

最佳答案

要使用 --insecure-registry 选项,请将其添加到 boot2docker VM 内的 /var/lib/boot2docker/profile 文件中。您可以使用 boot2docker ssh 进入虚拟机。文件内容应如下所示:

EXTRA_ARGS="--insecure-registry REGISTRY_IP:PORT"

然后您需要重新启动 boot2docker(例如 boot2docker restart)。

我不知道为什么你不能编辑/etc/docker。以下对我有用:

docker@boot2docker:~$ sudo ls /etc/docker
key.json

关于docker - 将文件推送到 Docker 中的私有(private)注册表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28712455/

相关文章:

docker - 如何防止 docker 容器访问我的本地网络

python - mysql 源命令在 docker 容器内什么都不做

virtualbox - Windows上的docker无法正常工作

docker - boot2docker导致 “Cannot connect to the Docker daemon. Is ' docker -d'在此主机上运行?”

docker - 无法将图像推送到配置为代理缓存的 docker 注册表

docker - 我无法运行我的 reactjs 应用程序的 docker 容器

dockerd vs docker-containerd vs docker-runc vs docker-containerd-ctr vs docker-containerd-shim

github - 如何在 Kubernetes dockerconfigjson 中使用 Github 包 Docker 注册表?

Docker:google/docker-registry 容器使用情况

mongodb - 如何使用 docker-compose 在 mongodb 中创建用户