Tag: dockerregistry

Artifactory可以有一个远程dockerregistry来代理一个旧的v1dockerregistry吗?

我们正在从旧dockerregistry(v1)迁移到Artifactory。 我们想创build一个虚拟registry,其中包括一个远程registry(当前V1registry),本地registry(新图像)和docker官方registry。 似乎Artifactory不支持v1registry的远程registry。 是否有可能让Artifactory支持v1远程registry? 最好的祝福, Eric Zhang

我怎么能说HTTPS到我的本地dockerregistry(sonatype nexus)

从这里find的文档: https : //books.sonatype.com/nexus-book/3.0/reference/docker.html 我可以得出结论,我不能创build一个私人dockerregistry,除非我通过https公开它。 Docker依靠使用SSL的安全连接来连接到存储库。 因此,您需要通过HTTPS将资源库pipe理器公开到您的客户端工具 。 这可以通过外部代理服务器或直接与存储库pipe理器configuration。 有关详细信息,请参见第5.9.4节“入站SSL – configuration通过HTTPS提供内容”。 我已经完成了所有这些步骤(在http:// localhost:5001上使用反向代理,并使用http连接器转发到nexus代理registry)。 但是现在我想从我的本地registry开始,我找不到通过https访问它的方法。 下面的命令是这里描述的: https : //docs.docker.com/engine/reference/commandline/pull/#pull-from-a-different-registry docker pull localhost:5001/hello-world 收益: 来自守护程序的错误响应:错误parsingHTTP 400响应正文:无效的字符'<'寻找值的开始:“\ n \ n400错误的请求\ n \ n 错误的请求 \ n 您的浏览器发送了此服务器无法理解的请求。 \ n原因:您正在向使用SSL的服务器端口说纯HTTP。 \ n请改用HTTPSscheme来存取这个url。 \ n \ n \ n” 当我尝试这个: docker pull https://localhost:5001/hello-world 我得到: 无效的参考格式

如何login到具有HTTP前缀设置的Dockerregistry?

我已经设置了自己的Docker Registry,但是我不希望它在根URL上,所以当我创build服务时,我使用了REGISTRY_HTTP_PREFIX环境variables并将其设置为/registry/ ,因此/registry/的URL是https://tools.example.com/registry 。 这是由Nginx代理,它有基本的身份validation设置。 我使用浏览器testing了对registry的访问,我可以通过http://tools.example.com/registry/v2/_catalog显示没有存储库。 这导致我认为这是工作。 但是,当我尝试使用Docker命令行login到registry时,我得到了基本身份validation挑战,但是由于URL不正确而无法login,例如 docker login -u russells -p xxxxxxxx https://tools.example.com/registry/ Error response from daemon: login attempt to https://tools.example.com/v2/ failed with status: 404 Not Found 从错误可以看出,前缀没有被正确添加。 所以我怎样才能login到registry,所以我可以推送图像。 有没有一个环境variables或我缺less的东西,使docker login工作正常? Update – 2017-08-12 2253 BST 我一直玩的configuration了一下,但我还没有走得很远。 按照要求这里是我的configuration文件。 nginx.conf user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } […]

Kubernet不能从不安全的registry中取出,并且不能从脱机群集上的本地映像运行容器

我正在使用离线群集(机器没有互联网访问),使用ansible和docker组合脚本部署docker镜像。 我的服务器是Centos7。 我在机器上build立了一个不安全的dockerregistry。 我们要改变环境,我正在安装kubernetes为了pipe理我的容器拉。 我按照本指南安装kubernetes: https ://severalnines.com/blog/installing-kubernetes-cluster-minions-centos7-manage-pods-services 安装后,我试图启动一个testing吊舱。 这里是荚的yml,启动 kubectl -f create nginx.yml 这里的yml: apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: – name: nginx image: [my_registry_addr]:[my_registry_port]/nginx:v1 ports: – containerPort: 80 我用kubectl描述得到更多的错误信息: Name: nginx Namespace: default Node: [my node] Start Time: Fri, 15 Sep 2017 11:29:05 +0200 Labels: <none> Status: Pending IP: Controllers: <none> […]

自动validation私人dockerregistry

我有一个GitLab托pipe的私人dockerregistry。 我需要支持自动访问这个registry(通过Gitlab CI),但我不想使用开发人员凭据(不安全,并且需要每次开发人员离开公司时更改它们)。 别人怎么authentication? 你是否创build了一个“API帐户”进行身份validation? Docker似乎不支持服务帐号密钥或其他validation方法。 谢谢 编辑: GitLab CI SSHregistrylogin 这里接受的答案回答了GitLab的问题。 不过,我想知道是否有其他select,因为这仍然只允许通过GitLab CI进行部署时的临时密钥

dockerregistry – 如何正确请求标签大小,推动和build立时间?

我希望通过REST API在我的docker-registry中find最老,最大的应用程序标签。 根据清单2.2版本,它不包含任何date或时间字段。 但现在的size 。 在体现2.1缺less大小,也不描述date/时间,但现在"created" -> "2017-09-20T06:18:54.857243532Z"其中( JSON反序列化后)包含"created" -> "2017-09-20T06:18:54.857243532Z" 。 我没有find关于这些元素的描述,但认为它是图层创builddate。 不是? 我的问题是 : 是否有任何架构格式标签推date时间? 这是故意的, 只有旧格式包含层build立date,但在新的一个缺席? 除了size也在2-1版本的例子中提到,它在官方dockerregistry版本(registrygithub.com/docker/distribution v2.6.2,docker图像)的实际响应中缺less。 是否有一些现场外观的依赖? 清单2-1包含date时间,但要处理该清单(比如说删除标记),我还强制重新请求清单2-2, 以获得正确的标题Docker-Content-Digest,因为2-1不兼容? 所以,如果我想按date时间删除标签(清单)(即使不考虑大小),我强制要在清单格式中做一个额外的往返,这对我来说看起来有点花销。

docker机+ Gitlabregistry – 如何使authentication工作?

我试图在docker机器主机上构build一个Docker镜像,并将镜像推送到Gitlabregistry中。 我启用了registry,然后按照这里所描述的使用docker-machine(除了我使用172.17.0.1作为主机IP,但是它在Gitlab Runnerconfiguration中的一个小的改变之后)。 问题是,build立图像后,当我试图推它,我得到以下错误: $ docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab.organization.com:39140 Login Succeeded $ docker build -t gitlab.organization.com:39140/organization/project-name . (build went fine) $ docker push gitlab.organization.com:39140/organization/project-name The push refers to a repository [gitlab.organization.com:39140/organization/project-name] 9da290505e25: Preparing 4edf62705ffc: Preparing 9845b0e669c4: Preparing 0dd280e9ab09: Preparing 1efea06cfe5b: Preparing cf516324493c: Preparing cf516324493c: Waiting denied: access forbidden ERROR: Job failed: exit […]

dockerd错误上传失败:\“var / log / alternatives.log \”的文件完整性校验和失败

我们有我们自己的dockerregistry来存储我们的图像。 在这个registry中,我们可以推送图像没有问题,除了一个项目使用nginx。 这是我们在推送图像时遇到的错误,构build过程很好: Upload failed, retrying: file integrity checksum failed for \"var/log/alternatives.log\" 我们甚至在构build和推送图像时都尝试删除Docker文件中的文件。 有人知道这里发生了什么,以及如何解决这个问题? 有什么办法可以避免这种完整性校验和validation可能吗? 甚至更好,有没有人知道如何不对日志文件执行完整性校验和validation? 谢谢! 在这里你可以find在debugging模式下运行的docker守护进程的完整输出: dockerd[37603]: level=debug msg="Calling GET /_ping" dockerd[37603]: level=debug msg="Calling POST /v1.29/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&shmsize=0&t=docker-registry.cobrowser.io%2Fnginx-edge%3Adevelop_8d07da6&target=&ulimits=null" dockerd[37603]: level=debug msg="[BUILDER] Use cached version: [/bin/sh -c apt-get clean all && apt-get update && apt-get upgrade -y –no-install-recommends && apt-get install -y –no-install-recommends dnsutils]" dockerd[37603]: level=debug […]

Dockerregistryconfiguration

输出 docker info 显示其他行: Registry: https://registry.fedoraproject.org/v1/ Registries: registry.fedoraproject.org (secure), registry.access.redhat.com (secure), docker.io (secure) Registrylogging的目的是什么? 我猜这些Registries值是用来拉图像的。 如何configuration这些值? 或者在哪些文件中存储这些值? 我的研究:在Fedora 26 docker push以及docker login默认使用https://registry.fedoraproject.org/v1/而不是Docker Hub,因为它是在man页面中build议的: login , push 。 包含registry.fedoraproject.org子树/etc中的唯一文件是来自包atomic-registries /etc/containers/registries.conf 。 这个文件似乎没有configurationRegistries (完全),因为它没有提到docker.io 。 编辑:docker包软件版本: docker-common-1.13.1-22.gitb5e3294.fc26.x86_64 , docker-1.13.1-22.gitb5e3294.fc26.x86_64 。

无法访问dockerregistry

我停止了我的Linux Lubuntu 16.04上的docker服务,并以debugging模式重新启动它: sudo service docker stop Edited the /etc/init.d/docker file to have DOCKER_OPTS="–debug" sudo service docker start 我使用以下命令启动了我的registry: stephane@ubuntu-512mb-fra1-01:~/dev/certificates$ ll total 20K -rw-rw-r– 1 stephane 962 Oct 22 20:34 certificates.txt drwxr-xr-x 3 root 4.0K Oct 22 20:46 home/ -rw-rw-r– 1 stephane 316 Oct 22 20:57 registry-start.sh -rw-r–r– 1 root 1.8K Oct 22 20:44 thalasoft.com.crt […]