如何修复因通用错误而导致的Docker服务失败?

时间:2019-08-02 09:36:31

标签: docker gitlab-ci-runner

我遇到一个问题,其中Gitlab CI作业失败,并显示以下错误: 泊坞窗:无法通过tcp:// docker:2375连接到Docker守护程序。 docker守护程序正在运行吗?

这并没有说太多,也没有任何意义,因为可以在本地建立连接并且命令可以按预期工作。

命令:构建/登录/推送(在gitlab-ci.yml中设置),但是在使用我们服务器上配置的自定义gitlab-runners时它们不起作用。

您对此有何建议?

谢谢!

1 个答案:

答案 0 :(得分:1)

你好

几天前,我遇到了同样的问题,找到解决方案的机会很小/有限。

这实际上是一个已知问题,您可以在这里找到所有详细信息:https://gitlab.com/gitlab-org/gitlab-runner/issues/4501

在容器中使用 docker:latest 肯定会在某个时候导致您遇到此问题。


简短答案(如果您是这种情况):

Docker 19.03 默认情况下启用TLS,因此需要配置证书:

  1. 添加您的 config.toml (/ etc / gitlab-runner /)

[[runners]] environment = ["DOCKER_TLS_CERTDIR="]

  1. 添加 gitlab-ci.yml (来自项目)

variables: DOCKER_TLS_CERTDIR: ""


这将提供用于查找证书并强制运行的强制配置,即使它们尚未设置(尚未设置)也是如此。

它将暂时解决您的问题,希望将在以后的Docker映像中修复。

希望这会有所帮助:)