gpt4 book ai didi

maven - Jenkins 管道 - 无法连接到 Docker 守护进程

转载 作者:行者123 更新时间:2023-12-03 08:37:27 25 4
gpt4 key购买 nike

我正在按照本教程在 docker 中使用 jenkins 构建一个 hello-world maven java 应用程序: https://jenkins.io/doc/tutorials/building-a-java-app-with-maven/#fork-and-clone-the-sample-repository-on-github

这是我的应用程序(只是教程的分支):simple-java-maven-app

我在 Pipeline 的选项(存储库 URL)中使用远程存储库(Github)而不是本地存储库(或主机存储库)有一个小区别。我将 Jenkinsfile 推送到 repo,然后使用 Pipeline 构建 hello-world 应用程序。

// Jenkinsfile for Pipeline
pipeline {
agent {
docker {
image 'maven:3-alpine'
args '-v /root/.m2:/root/.m2'
}
}
stages {
stage('Build') {
steps {
sh 'mvn -B -DskipTests clean package'
}
}
}
}

我知道了 error下面,找不到任何解决方案。我使用的是 Windows 10。

docker pull maven:3-alpine
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon. Is the docker daemon running on this host?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

谢谢大家。

最佳答案

您在 Docker 中使用 Docker (DinD),这不是推荐的 CI 方法。您应该将您的Host's Docker Daemon Socket 作为卷安装到 Jenkins 容器,如:

docker container run -v/var/run/docker.sock:/var/run/docker.sock ...

因此,您可以在主机上而不是在 Jenkins 容器中使用图像和容器。 Click Here了解更多。

关于maven - Jenkins 管道 - 无法连接到 Docker 守护进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47476032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com