Tag: docker registry

Docker推送问题本地registryhttps访问权限被拒绝

我的registrydocker有问题。 我的“服务器”VM在kali-linux上。 我在HTTP中创build了registrydocker工具,并使用一个centOS VM作为客户端。 我宣布registry不安全的客户端虚拟机,它的工作完美。 现在我试着把它放在HTTPS中。 为了做到这一点,我使用nginx作为代理。 我遵循这个教程: 第5步 – 设置SSL除了第8部分 ,使之成为服务(我不知道为什么,但我不能做到这一点)。 因为我没有域名,所以我用了一个。 为了得到认可,我在两个虚拟机上的/ etc / hosts文件中添加了我的IP(192.168.XX)和我使用的域名(myregistryexemple)。 正如教程所问,我在我的“服务器”虚拟机(kali)上生成了证书,并通过scp将其发送给我的客户机虚拟机。 由于这个命令,我让centOS vm信任证书: yum install ca-certificates update-ca-trust force-enable cp cert.crt /etc/pki/ca-trust/source/anchors/ update-ca-trust extract 我重新启动客户端VM上的服务docker。 然后在我的kali虚拟机上启动docker registry和nginx代理“docker-compose up”。 我标记并尝试在registry中推送一个Ubuntu的: docker tag ubuntu myregistryexemple/ubuntu docker push myregistryexemple/ubuntu 但是我得到这个错误: The push refers to a repository [docker.io/myregistryexemple/ubuntu] 56827159aa8b: Preparing 440e02c3dcde: Preparing 29660d0e5bb2: […]

docker rmi是否从存储后端移除图像?

我正在使用Azure存储后端为我的私人docker存储库。 我想释放本地磁盘空间,这是我希望执行的命令。 docker rmi -f $(docker images -q) 我想知道,这个命令是否会删除本地系统上的图像,或者是否会删除存储在后端的图像?

绑定在Dockerregistry上的位置会导致超时

我在Mac上使用Docker,并且在registry服务器上绑定一个位置时遇到了一些麻烦 – 我希望这里有人能够提供帮助。 谢天谢地,这个问题很简单。 比方说,我想运行一个简单,不安全的dockerregistry。 首先,我确保将相应的ip:portnoinput到“不安全registry”列表中。 根据文档,然后运行docker run -d –restart=always –name registry -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2 当我这样做时,registry“正常工作”。 我可以将图像标记为10.0.3.59:5000/imgname ,并正常推拉。 但是,我希望registry的数据位于主机系统的特定位置,比如/mnt/registry 。 我去泊坞窗首选项,确保在mnt文件夹上启用共享,并删除旧的图像和容器 再次docker run -d –restart=always –name registry -v storage:/var/lib/registry/ -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2 。 但是,如果我现在尝试执行docker push 10.0.3.59:5000/imgname ,则会收到以下消息 The push refers to a repository [10.0.3.52:5000/cropspokyimage] 74146a4cf164: Retrying in 9 seconds 6c45ce1e774e: Retrying […]

如何在“docker run”命令中replacevariables值

我正在使用一个bash脚本,并试图分配一个指纹值如下 export FINGERPRINT=D0:19:C5:80:42:66:56:AC:6F docker run –rm -i -v /var/run/docker.sock:/var/run/docker.sock –name ucp docker/ucp join –replica –fingerprint $FINGERPRINT 然而,bash根本不能代替$ FINGERPRINT的价值

无法将自己的映像推送到IBM Bluemix Registry

我使用docker build创build了一个自定义图像,并且希望将其推送到Bluemix上的IBM Containers。 我用cflogin和cfloginlogin,然后我标记图像,设置正确的registry和命名空间,和推命令只工作了几层,然后它卡在某一点(它冻结在不同的MB值在我做的许多尝试)。 docker push registry.eu-gb.bluemix.net/mygcontainers/war3 推送是指一个存储库[registry.eu-gb.bluemix.net/mygcontainers/war3] 2d08e42cc27d: Mounted from mygcontainers/war3 da4394905de1: Pushing [=======================>] 74.48 MB/159.3 MB 77f08abee8bf: Mounted from mygcontainers/war3 它已经与推送信息冻结数小时。 PS:我在Windows和Mac上试过。 PS:我尝试了美国和英国的terminal。 相同的结果。 PS:我做docker机重启也检查是否会改变任何东西和工作。

如何在Dockerconfiguration文件中指定Docker私有registry凭据?

我正在创buildnodejs应用程序的Docker容器。 以下是我的Dockerconfiguration文件的示例 FROM node:6.11 WORKDIR /usr/src/app COPY package.json . npm install copy . /usr/src/app EXPOSE 80 CMD [ "npm", "start" ] 这将从Docker集线器下载节点映像,然后根据configuration创buildDocker映像。 出于安全原因,我不想从Docker中心下载nodejs镜像,而是想使用我的私有存储库下载nodejs镜像。 正如我设置私人存储库,我不知道如何在DockerFile指定registry凭据。 谁能帮我这个?

tar cv –files-from / dev / null | docker导入 – 从头开始​​“的工作?

在了解Docker和如何创build一个最小的图像时,我遇到了这个命令: tar cv –files-from /dev/null | docker import – scratch 这创build了一个最小的泊坞窗图像。 我无法理解当我们执行tar cv –files-from /dev/null时会发生什么情况。 如果我在terminal上运行这个命令,我没有输出。 如果我运行docker import – scratch ,它永远挂在那里。 那么这两个命令的组合是如何工作的呢? 我仍然困惑,这是如何工作,并试图找出实际工作,任何帮助/指导,这将是非常感激。

无法从Docker Registry远程API获取有效的响应

我正在使用Nodejs和请求来形成我的API调用,我可以直接与API调用一个UnixSocket,但它每次尝试从Dockerregistry容器请求时,我已经运行,所以我相信这是我的registryconfiguration的错误。 我已经像下面的文档步骤一样将其设置为开箱即用 。 docker run -d -p 5000:5000 –restart=always –name registry registry:2 docker pull alpine docker tag alpine localhost:5000/alpine docker push localhost:5000/alpine 我用来请求的代码如下,它收到404 not found 。 const request = require('request') request({ method: 'GET', uri: 'http://localhost:5000/images/json', // status 404 // uri: 'http://unix:/var/run/docker.sock:/images/json', // this works headers: { host : 'localhost' } }, (e, res, body) => […]

一个不安全的dockerpipe理员registry可以得到一个CA签名证书,以便客户自动信任它吗?

目前,我已经以如下方式build立了一个registry: docker run -d \ -p 10.0.1.4:443:5000 \ –name registry \ -v `pwd`/certs/:/certs \ -v `pwd`/registry:/var/lib/registry \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/certificate.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/private.key \ registry:latest 使用Docker版本17.06.2-ce,构buildcec0b72 我从Let's Encrypt获得了我的certificate.crt,private.key和ca_bundle.crt。 在nginx服务器上使用这些证书时,我能够build立https连接,而不必显式信任客户端机器/浏览器上的证书。 是否可以使用类似于通过https访问的CAauthentication网站的Dockerregistry来设置用户体验?浏览器/机器在哪里信任根CA以及包括我的证书在内的根CA? 注意: 我当然可以在客户docker文件中指定证书,如本教程所述: https : //docs.docker.com/registry/insecure/#use-self-signed-certificates 。 但是,这不是我的需求的适当解决scheme。 curl -v https://docks.behar.cloud/v2/输出curl -v https://docks.behar.cloud/v2/ : * Trying 10.0.1.4… * TCP_NODELAY set * Connected to docks.behar.cloud (10.0.1.4) port 443 […]

docker运行ubuntu命令失败,错误:拉图像时出错:

docker运行ubuntu命令失败,错误: 拔取图片时出错: https ://index.docker.io/v1/repositories/library/ubuntu/images:在[:: 1]上拨打tcp:lookup index.docker.io:53:读取udp [:: 1 ]:48892 – > [:: 1]:53:read:连接被拒绝。 Ubuntu版本:16.04 内核版本: – 4.4.0-59-通用 Docker信息: 容器:0 运行:0 暂停:0 停止:0 图片:0 服务器版本:1.12.1 存储驱动程序:aufs 根目录:/ var / lib / docker / aufs 备份文件系统:extfs Dirs:0 Dirperm1支持:是 logging驱动程序:json文件 Cgroup驱动程序:cgroupfs 插件: 卷:本地 networking:空主机桥覆盖 群:不活跃 运行时:runc 默认运行时:runc 安全选项:apparmor 内核版本:4.4.0-59-通用 操作系统:Ubuntu 16.04.1 LTS OSType:linux 架构:x86_64 CPU:12 总内存:15.62 GiB 名字:cran […]