docker - 大厅无法连接到 Docker 存储库

标签 docker continuous-integration concourse

我是 concourse 的新手,正在尝试在我的环境中设置它。我在 Windows 机器上的 Virtualbox 6.1.4 r136177 上运行 Ubuntu 18.04。我设法让节点运行并设置了大厅工作人员,并且能够成功访问我的大厅仪表板。问题发生在我试图运行一个简单的 hello world 管道时,如本页所述:https://concourse-ci.org/hello-world-example.html

错误说:

[31mERRO [0m[0004] check failed: get remote image: Get https://index.docker.io/v2/: dial tcp: lookup index.docker.io on [::1]:53: read udp [::1]:55989->[::1]:53: read: connection refused

谷歌搜索类似错误表明 virtualbox 可能无法连接到 docker 存储库。所以我继续将 docker 安装到我的系统并运行以下命令:

sudo docker run hello-world

但是这次docker成功拉取了镜像。所以我认为这不是我的 virtualbox 的问题。有没有人遇到过同样的问题并找到了解决方案?

更新

以下问题启发我建立自己的注册表: How to use a local docker image as resource in concourse-docker

我已经配置了我的本地 docker registry,并通过从我自己的 registry 中拉取我的图像来验证它确实有效。因此,我通过修改 hello world 示例配置了一个简单的 concourse 管道来使用我的注册表:

---
jobs:
  - name: job
    public: true
    plan:
      - task: simple-task
        config:
          platform: linux
          image_resource:
            type: docker-image
            source:
              repository: 127.0.0.1:5000/busybox
              tag: latest
              insecure_registries: [ "127.0.0.1:5000" ]
          run:
            path: echo
            args: ["Hello, world!"]

但是我遇到了以下错误:

resource script '/opt/resource/check []' failed: exit status 1

stderr:
failed to ping registry: 2 error(s) occurred:

* ping https: Get https://127.0.0.1:5000/v2: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers
* ping http: Get http://127.0.0.1:5000/v2: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers

最佳答案

127.0.0.1 可能指的是检查容器的 IP,而不是 Concourse 作为 worker 运行的机器(除非你有 houdini 作为容器战略)。尝试获取运行 docker 的机器的实际 IP 并尝试。

关于docker - 大厅无法连接到 Docker 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60860860/

相关文章:

amazon-web-services - 大厅 CI 管道给出错误 :- Get https://registry-1. docker.io/v2:net/http:请求在等待连接时取消

continuous-integration - Concourse - 构建 docker 镜像时上一步缺少版本

linux - ASP.NET 5 和 Docker 错误 :/bin/sh: [dnx,:找不到命令

Azure应用程序服务docker容器 'Service Unavailable'

mysql - 如何创建到 dockerfile/mysql 容器的 ssh 隧道

java - 系统间缓存解决方案的持续集成

docker - 502 Nginx无法连接到Gunicorn服务器

java - 无法运行程序 "mvn"错误=2,没有这样的文件或目录

azure-devops - 如何在 Azure 门户中查找 SonarQube 服务器 URL

docker - Fly:ping docker 注册表失败