Tag: dockerregistry

Docker push-net / http:TLS握手超时

我已经在AWS EC2 Ubuntu 14.04实例上部署了私有Docker镜像registry。 registry使用Let's Encrypt证书进行保护。 不幸的是,我得到了超过300s的docker push操作的net/http: TLS handshake timeout : 这是time'd命令的输出: [luqo33@home-pc containers]$ time docker push <my-registry-domain:5000>/nginx The push refers to a repository [<my-registry-domain:5000>/nginx] dda5a806f0b0: Layer already exists ec35cfccb7f7: Layer already exists 94c1a232bb3f: Layer already exists 6d6b9812c8ae: Layer already exists 695da0025de6: Retrying in 1 second fe4c16cbf7a4: Pushing [================================================> ] 119 MB/123 MB net/http: […]

docker推送到私人registry挂起

我已经安装,repl提供的dockerregistry和docker中心的官方dockerregistry图像都有我看到的相同的问题。 我有一个图像,我已经用dockerregistry主机名和端口等来标记,并尝试将其推送到registry。 在input时,它似乎运行正常,检查registry已经有的图像层。 一旦开始推动它没有的图像层,它会挂起; 并一直呆在那里,直到我ctrl + C出来 例: [root@docker1 ~]# docker push docker1:5000/centos:7 The push refers to a repository [docker1:5000/centos] (len: 1) Sending image list Pushing repository docker1:5000/centos (1 tags) Image 511136ea3c5a already pushed, skipping Image 5b12ef8fd570 already pushed, skipping 5c5681003a50: Pushing [> ] 1.584 MB/220.5 MB 2m9s 在运行docker-registry容器的docker日志中,它有: 10.10.10.2 – – [06/Apr/2015:17:11:01 +0000] "PUT […]

Docker中默认的私有registry

我需要在Docker中设置自己的私有registry,通常保留所有内部的Docker镜像。 为了使这更简单,我想在内部设置一个名为Docker-Image的project/component ,就像你从https://index.docker.io/获取的正常的Docker-images一样。 我确信,我将永远不会从index.docker.io中以这种格式抓取图像,所有这些图像都将来自我们的内部索引器。 即使是imagename格式的图像,像centos也会从我们的内部存储库中取出。 那么,有没有办法让我改变默认的索引器? 或者至less将我的私人索引器从端口5000更改为默认尝试的东西; 即从private_indexer.internal/repo_name而不是private_indexer.internal:5000/repo_name抓取图像。 是把index.docker.io在我们自己的DNS指向我们的内部IP最好的解决scheme?

如何在Dockerregistryv2中标记图像

我们在CI-CD中有逻辑(通过REST)将映像映射到最新(如果testing成功)。 这工作在registryv1。 现在转移到V2 API,我无法find在文档中如何“添加”标记到现有的图像在registry..我在一个步骤,可以带来一些分级图像的“清单”,但不知道如何添加标签和http-post。 试图发送下面的input “标签”:“分期”,“最新”, “标签”:[“舞台”,“最新”],等等 {“schemaVersion”:1,“name”:“configservice”,“tag”:“staging”,“architecture”:“amd64”,“fsLayers”:[….

设置远程私有Dockerregistry

我需要一些build立“远程私有Dockerregistry”的技巧。 Docker-Registry上的README.md主要关注在同一主机上运行的私有registry,而不指定其他机器如何远程访问它(或者可能太复杂以至于无法理解)。 到目前为止,我发现这些线程: Docker:从另一台服务器上从一个私有registry中拉出来的问题 (仍然是一个开放的线程,没有提供任何解决scheme。关于Github的进一步讨论给出了关于代理的提示,但是它是如何工作的?) 创build一个远程的私人registry (也许最接近我在找什么,但我需要什么命令从其他机器访问registry?) 如何使用自己的registry (同样,重点是在同一台主机上运行registry,它提到了运行在端口443或80上的其他机器可以访问,但需要更多的细节! 用尽线索,任何input非常赞赏!

如何删除dockerregistry中未使用的斑点?

我有一个dockerregistry,我用于开发。 我推的每张图片都有标签:latest 。 所以有很多未被引用的图像/斑点。 我尝试通过运行GC来清理映像,但这似乎没有帮助: docker exec -it id bin/registry garbage-collect /etc/docker/registry/config.yml env var REGISTRY_STORAGE_DELETE_ENABLED是True这可能是因为在我的修订版中仍然有sha256 。 我能够使用curl和API删除图像。 比我使用标签,并删除修订中的正确sha256 。 然后我使用GC脚本删除未使用的blob。 但是,当我重新编写相同的标签时,无法删除未使用的修订版和未使用的斑点。

无法使用docker plugin push命令推送插件

我正在试图开发一个V2插件。 我可以在我的插件configuration中使用“docker plugin create”和“docker plugin enable”命令。 然而,“docker插件推”命令失败,并出现以下错误 [root@localhost plugin]# docker plugin push adityadani/pxd-plugin Error response from daemon: errors: denied: requested access to the resource is denied unauthorized: authentication required 这是我的docker版本 Client: Version: 1.13.0-rc4 API version: 1.25 Go version: go1.7.3 Git commit: 88862e7 Built: Sat Dec 17 01:34:17 2016 OS/Arch: linux/amd64 Server: Version: 1.13.0-rc4 API version: […]

什么是X-Registry-Auth的内容推送到私人registry

当使用REST API将Docker镜像推送到私有registry时,X-Registry-Auth头文件的内容应该是什么? 根据使用Docker API推送到私有registry ,需要X-Registry-Auth头。 https://groups.google.com/forum/#!topic/docker-user/vXcA8fsCNZMbuild议该值应该是以下forms的base64编码的JSONstring: {'username': string, 'password': string, 'email': string, 'serveraddress' : string} 在设置了合适的环境variables之后,我做了: XRA=`echo "{\"username\": \"${USERNAME}\", \"password\": \"${PASSWORD}\", \"email\": \"${EMAIL_ADDRESS}\", \"serveraddress\" : \"${SERVER_ADDRESS}\"}" | base64 –wrap=0` curl -v –request POST –header "X-Registry-Auth: $XRA" http://$DOCKER_HOST/v1/images/$REGISTRY/$NAMESPACE/$REPOSITORY?tag=$TAG 并得到一个403 Forbidden回应。 也许问题只是我不知道价值应该是什么。 我怎样才能确定他们? Docker似乎有办法; sudo docker push $REGISTRY/$NAMESPACE/$REPOSITORY:$TAG工作得很好。

Dockerregistry2.0 API v2

我拉和设置本地dockerregistry:2.0 我试图成功地推送图像,但是当我尝试search图像时,我得到404: root@ip-10-232-0-153:~# curl -v -X GET http://localhost:5000/v2/search * Hostname was NOT found in DNS cache * Trying 127.0.0.1… * Connected to localhost (127.0.0.1) port 5000 (#0) > GET /v2/search HTTP/1.1 > User-Agent: curl/7.35.0 > Host: localhost:5000 > Accept: */* > < HTTP/1.1 404 Not Found < Content-Type: text/plain; charset=utf-8 < Docker-Distribution-Api-Version: registry/2.0 < Date: […]

从我的私人dockerregistry中拉出Docker而不指定主机

我使用dockerregistry来拉我自己的docker图像,但我想这样做,而不需要指定主机。 意思是:而不是写作: docker pull <host>:<port>/<dockerImage> 我想写: docker pull <dockerImage> 首先它会尝试从我的私人registry中拉出泊坞窗,然后试图从公共dockerregistry中提取它。 可能吗? 我尝试将DOCKER_INDEX_URL更改为[my_docker_registry_host]:[port] ,但不起作用。