Docker 和 Jenkins 集成
Docker and Jenkins integration
我已经添加了 BitBucket 服务器集成插件(https://plugins.jenkins.io/atlassian-bitbucket-server-integration/)并且可以从 Jenkins 连接到 BitBucket 云存储库:
但是我在尝试构建时收到错误消息:
/var/jenkins_home/workspace/bb_add-jenkins-file@tmp/durable-c49dbeca/script.sh: 1: /var/jenkins_home/workspace/bb_add-jenkins-file@tmp/durable-c49dbeca/script.sh: docker: not found
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
[Bitbucket] Notifying commit build result
[Bitbucket] Build result notified
ERROR: script returned exit code 127
Finished: FAILURE
看来我需要在 Jenkins 实例上安装 Docker?
https://plugins.jenkins.io/docker-build-publish/
我正在按照本教程使用 Jenkins 配置 Docker:https://medium.com/@karthi.net/docker-tutorial-build-docker-images-using-jenkins-d2880e65b74
并且已经走到了这一步:
在我自己的 Jenkins Docker 设置页面上,我有:
我不确定应该使用什么 Docker URL?我是否需要在 Kubernetes 集群中提供一个新的容器实例并在这个新实例中提供 运行 docker?这个新的 Docker 实例就是 Docker Host URI
字段?
我认为该插件需要 docker cli 才能存在。
如果您 运行 jenkins 作为 docker 图像本身,请使用提供 docker cli 的图像,例如 https://hub.docker.com/r/trion/jenkins-docker-client
如果你想使用主机 docker 守护进程进行构建,你需要绑定挂载 docker 套接字。
如果你想使用 sidecar 容器来提供 docker 守护进程,例如使用 docker-in-docker 设置,你通常可以使用容器名称作为 docker 主机或 kubernetes 服务名称。这取决于您如何提供 sidecar 容器,对此没有通用的答案。
我已经添加了 BitBucket 服务器集成插件(https://plugins.jenkins.io/atlassian-bitbucket-server-integration/)并且可以从 Jenkins 连接到 BitBucket 云存储库:
但是我在尝试构建时收到错误消息:
/var/jenkins_home/workspace/bb_add-jenkins-file@tmp/durable-c49dbeca/script.sh: 1: /var/jenkins_home/workspace/bb_add-jenkins-file@tmp/durable-c49dbeca/script.sh: docker: not found
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
[Bitbucket] Notifying commit build result
[Bitbucket] Build result notified
ERROR: script returned exit code 127
Finished: FAILURE
看来我需要在 Jenkins 实例上安装 Docker?
https://plugins.jenkins.io/docker-build-publish/
我正在按照本教程使用 Jenkins 配置 Docker:https://medium.com/@karthi.net/docker-tutorial-build-docker-images-using-jenkins-d2880e65b74
并且已经走到了这一步:
在我自己的 Jenkins Docker 设置页面上,我有:
我不确定应该使用什么 Docker URL?我是否需要在 Kubernetes 集群中提供一个新的容器实例并在这个新实例中提供 运行 docker?这个新的 Docker 实例就是 Docker Host URI
字段?
我认为该插件需要 docker cli 才能存在。 如果您 运行 jenkins 作为 docker 图像本身,请使用提供 docker cli 的图像,例如 https://hub.docker.com/r/trion/jenkins-docker-client
如果你想使用主机 docker 守护进程进行构建,你需要绑定挂载 docker 套接字。 如果你想使用 sidecar 容器来提供 docker 守护进程,例如使用 docker-in-docker 设置,你通常可以使用容器名称作为 docker 主机或 kubernetes 服务名称。这取决于您如何提供 sidecar 容器,对此没有通用的答案。