Tag: dockerregistry

通过主机ubuntu主机中的浏览器访问在vagrant vm上运行在coreos上的Docker容器

我已经设置了在stream浪VM中运行的coreos。 我想设置私人dockerregistry。 我拉了registry,我可以运行它。 以下是运行registry的输出 core@core-01 ~ $ docker run -p 5000:5000 registry 2014-12-22 01:40:32 [1] [INFO] Starting gunicorn 19.1.0 2014-12-22 01:40:32 [1] [INFO] Listening at: http://0.0.0.0:5000 (1) 2014-12-22 01:40:32 [1] [INFO] Using worker: gevent 2014-12-22 01:40:32 [20] [INFO] Booting worker with pid: 20 2014-12-22 01:40:32 [23] [INFO] Booting worker with pid: 23 2014-12-22 01:40:32 [24] […]

Docker加载命令将replace现有的具有相同名称的图像

我有一个关于docker load命令的简单问题。 如果图像存在于本地存储库中,并且正在运行docker load命令加载与存储库中的图像名称相同的图像,那么旧图像是否会被加载的图像replace?

Docker Mac Beta使用不安全的私人registry

我正在使用Docker版本1.11.1,在Mac OS X上构build5604cbe 在我的Mac机器上,我正在尝试执行docker push到远程虚拟机上运行的私有dockerregistry。 我无法获得SSL的工作,并希望使用不安全的registry按照说明https://docs.docker.com/registry/insecure/如何指定DOCKER_OPTS在我的Mac上,所以我可以把图像到私人registry?

如何从一个私有registry高效地复制大量的Docker镜像到另一个?

我们有一个私人的Dockerregistry,里面有大量的图片和标签,我们希望将所有这些复制到另一个私人registry中。 是否有捷径可寻? 将推荐的方法是什么? 应该注意哪些障碍?

Docker Registry 2.0 – 如何删除未使用的图像?

我们更新了我们的私人dockerregistry到官方的registry2.0。 这个版本现在可以删除由hashtag标识的docker镜像(请参阅https://docs.docker.com/registry/spec/api/#deleting-an-image ),但是我仍然没有看到清理旧镜像的方法。 由于我们的CI服务器不断产生新的图像,我需要一种方法来删除私有registry中的所有图像,这些图像不再由命名标签标识。 如果没有内置的方法来实现这一点,我认为一个自定义脚本可能工作,但我没有看到一个V2 API方法列出所有存储的图像的标签。 我怎样才能保持我的私人registry清洁? 任何提示?

通过SSH推送Docker镜像(分布式)

TL; DR基本上,我正在寻找这个: docker push myimage ssh://myvps01.vpsprovider.net/ 我没有把握整个Docker Hub / Registry的基本原理。 我知道我可以运行一个私人registry,但为此我必须build立实际运行服务器的基础设施。 我深入了解Docker的内部工作(至less是文件系统),看起来像Docker的图像层只是一堆压缩文件,或多或less地有一些精心devise的文件命名。 我天真地认为这不是一个简单的Python脚本来做分布式推/拉,但当然我没有尝试,所以这就是为什么我问这个问题。 有没有技术上的原因,为什么docker不能像Git或Mercurial一样分布式(无服务器)推/拉? 我认为这将是一个巨大的帮助,因为我可以将我在笔记本电脑上构build的映像直接推送到应用程序服务器上,而不是先推到某个地方的repo服务器,然后从应用程序服务器上拉出。 或者,也许我刚刚误解了这个概念,registry是我绝对需要的一个非常重要的function? 编辑一些上下文,希望解释为什么我想这个,考虑以下情况: 开发,testing在我的笔记本上完成(OSX,运行Docker机器,使用docker-compose来定义服务和依赖) 通过脚本部署到实时环境(自编写,bash,在dev机器上很less依赖,基本上只是Docker机器) 部署到除SSH访问和Docker守护程序之外的依赖性很less的新VPS。 没有“永久性”服务在任何地方运行,即我特别不想托pipe一个永久运行的registry(特别是所有的VPS实例都不可访问,尽pipe这可能会通过一些聪明的SSH隧道来解决) 目前最好的解决scheme是使用Docker机器指向VPS服务器并重build它,但是它会减慢部署,因为我必须每次都从源代码构build容器。

如何操作dockerregistry2.0和V2 API中的标签?

现在Dockerregistry的V1已经被弃用,我们启动了一个v2的私人回购没有太多todo。 问题在于,我们依靠一些v1 API来pipe理标签进行部署。 截至目前,我们可以轻松列出标签: > curl https://repo-dns:5000/username/reponame/tags/list 但是,删除标签似乎不仅包含标签,而且看起来是失败的: > curl -X DELETE https://repo-dns:5000/v2/username/reponame/manifests/tagtodelete {"errors":[{"code":"UNSUPPORTED","message":"The operation is unsupported."}]} 目前还不清楚如何添加一个新的标签 – 它曾经是这样的: > echo my_image_id |curl -X PUT https://repo-dns:5000/v1/repositories/username/reponame/tags/newtag 我已经看过API文档 ,但不清楚如何做到这一点。 是否可以继续添加和删除标签,如果是这样,怎么办?

docker私人registry – 方法不允许405

我正在尝试为Docker创build私有registry,而且我依赖于在Docker站点上给出的指示信息 。 我有一个单独的Linux中,这个registry安装的地方,然后我试图从本地(docker工具箱的OSX框)推我的图像。 我一直从registry服务器获得405。 docker工人我很新。 我希望默认的基本configuration工作没有太多的麻烦。 组态 最新的docker工具箱。 最新的registry安装 我只更改TLSconfiguration以通过http发布请求。 错误 The push refers to a repository [192.168.1.98:5000/complete] (len: 1) Sending image list Error: Status 405 trying to push repository complete: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>405 Method Not Allowed</title>\n</head><body>\n<h1>Method Not Allowed</h1>\n<p>The requested method PUT is not allowed for the URL /v1/repositories/complete/.</p>\n</body></html>\n"

通过HTTP API在Docker集线器上列出Docker镜像的标签

我想通过它的HTTP接口列出一个Docker镜像官方docker集线器的标签,但是我有点困惑。 由于它们有两个版本: https://docs.docker.com/v1.6/reference/api/registry_api/ https://docs.docker.com/v1.6/registry/spec/api/ 我设法让他们通过发送GET请求到这个端点: https://index.docker.io/v1/repositories/{my-namespace}/{my-repository}/tags ://index.docker.io/v1/repositories/{my-namespace}/{my-repository}/ https://index.docker.io/v1/repositories/{my-namespace}/{my-repository}/tags以及基本的authentication凭证。 我不确定是否有一个正确的,但我应该使用哪一个?

将Docker Hub映像推送到私有Dockerregistry

品牌崭新的Docker Mac用户在这里。 我有本地安装的Docker(我可以通过运行docker -v来validation)。 我在远程虚拟机上build立了一个私人Docker Registry,例如myregistry.example.com:5000 。 我已经使用TLS(根CA证书)以及基本身份validation正确(我认为)。 我想从官方的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? 这里发生了什么? 而一旦我通过了这一点,我首先需要login到我的私人registry,以push ubuntu的呢? 或者我将被提示input我的基本身份validation凭据?