Jenkins:在 docker slave 上运行 docker 命令

标签 jenkins docker kubernetes

我正在使用 Kubernetes Jenkins编排 Jenkins 奴隶的插件

我想在 Docker 中运行所有作业(构建 docker 镜像并在 docker 中执行测试/构建)。

Jenkins 工作示例:

docker run -e NEXUS_USERNAME=${NEXUS_USERNAME} -e NEXUS_PASSWORD=${NEXUS_PASSWORD} common-dropwizard:latest mvn deploy

我正在使用这里的 jenkinsci/jnlp-slave:https://hub.docker.com/r/jenkinsci/jnlp-slave/

不幸的是,从属镜像似乎不支持运行 docker。我的问题是实现这一目标的最佳方法是什么?

谢谢

最佳答案

您需要安装 docker 客户端并挂载 docker 套接字,以便您可以访问 Docker 主机。然后你就可以与那个 Docker 主机交互了

https://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/ https://github.com/jenkinsci/docker-workflow-plugin/tree/master/demo

关于Jenkins:在 docker slave 上运行 docker 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38510952/

相关文章:

java - 使用 Jenkins 构建的常用方法

continuous-integration - 如何更好地组织 Hudson 或 Jenkins 的工作?

jenkins - 如何正确使用Jenkins管道 `options`

docker - 什么是Docker镜像的共享标签/简单标签

kubernetes - 入口 Controller 和 Google kubernetes

kubernetes - Traefik2.4 : uses a non-existent resolver: inwx

powershell - 从Jenkins PowerShell构建步骤中调用的PowerShell脚本无限期挂起

docker - 如何记录在 Docker 容器中运行的所有进程?

windows - docker 代理拉窗口 10

bash - 如何使用CTRL + C退出并杀死正在运行的Docker容器?