草庐IT

Jenkins-Build

全部标签

Jenkins 没有等待 Docker 命令完成

我正在尝试让Jenkins在Jenkins从站上的docker中运行以下命令:dockerrun-i-v`pwd`:/opt/myapp-w/opt/myapp-tmydockerimage/bin/bash-c"./setup_dev_env.sh&&makeall"问题在于,当我在Jenkins中运行此时,会生成Docker进程,但Jenkins不会等待它并立即返回成功。但是,如果我将Docker命令替换为无限循环,Jenkins将按预期等待。当我直接从buildslave运行这个命令时,作为Jenkins用户,系统等待命令完成(这是我想要发生的)。我尝试过执行dockeratta

maven - 扩展 jenkins 镜像以安装 maven

我目前正在使用jenkins/jenkins:lts图像。它运行良好,并且可以完成我希望做的所有事情。我希望它在构建步骤中运行Maven目标。问题是jenkins容器环境中没有安装maven。所以我想扩展上述图像以运行apt-getinstallmaven。我的解决方案:FROM"jenkins/jenkins:ltsUSERrootRUN/bin/bash-c"apt-getinstallmaven"这就够了吗?我假设jenkins镜像的所有RUN和ENTRYPOINT步骤都将自行运行,我不需要在我的Dockerfile中重新执行它们,对吧? 最佳答案

maven - 扩展 jenkins 镜像以安装 maven

我目前正在使用jenkins/jenkins:lts图像。它运行良好,并且可以完成我希望做的所有事情。我希望它在构建步骤中运行Maven目标。问题是jenkins容器环境中没有安装maven。所以我想扩展上述图像以运行apt-getinstallmaven。我的解决方案:FROM"jenkins/jenkins:ltsUSERrootRUN/bin/bash-c"apt-getinstallmaven"这就够了吗?我假设jenkins镜像的所有RUN和ENTRYPOINT步骤都将自行运行,我不需要在我的Dockerfile中重新执行它们,对吧? 最佳答案

docker - 错误 : Build process returned exit code 137 during Docker build on Tutum

我在Tutum上设置了一个新的存储库,链接到Github存储库。该项目在我的本地机器上成功构建,但在4小时后在Tutum上失败并给我以下日志。Step27:ENTRYPOINT/www/run.sh--->Runningin666e1e87a660--->eeb9646f9317Removingintermediatecontainer666e1e87a660Successfullybuilteeb9646f9317Creatingbuilder1769_sut_1[ThuJan0717:42:45.6757892016][mpm_prefork:notice][pid8]AH0016

docker - 错误 : Build process returned exit code 137 during Docker build on Tutum

我在Tutum上设置了一个新的存储库,链接到Github存储库。该项目在我的本地机器上成功构建,但在4小时后在Tutum上失败并给我以下日志。Step27:ENTRYPOINT/www/run.sh--->Runningin666e1e87a660--->eeb9646f9317Removingintermediatecontainer666e1e87a660Successfullybuilteeb9646f9317Creatingbuilder1769_sut_1[ThuJan0717:42:45.6757892016][mpm_prefork:notice][pid8]AH0016

jenkins - 无法通过 docker 容器执行 ansible playbook

我正在docker容器内的jenkins上执行管道。此管道调用另一个执行ansibleplaybook的docker-compose文件。执行playbook的服务称为代理,定义如下:agent:image:pjestrada/ansiblelinks:-dbenvironment:PROBE_HOST:"db"PROBE_PORT:"3306"command:["probe.yml"]这是它使用的图像:FROMubuntu:trustyMAINTAINERPabloEstrada#PreventdpkgerrorsENVTERM=x-term-256colorRUNsed-i"s/h

jenkins - 无法通过 docker 容器执行 ansible playbook

我正在docker容器内的jenkins上执行管道。此管道调用另一个执行ansibleplaybook的docker-compose文件。执行playbook的服务称为代理,定义如下:agent:image:pjestrada/ansiblelinks:-dbenvironment:PROBE_HOST:"db"PROBE_PORT:"3306"command:["probe.yml"]这是它使用的图像:FROMubuntu:trustyMAINTAINERPabloEstrada#PreventdpkgerrorsENVTERM=x-term-256colorRUNsed-i"s/h

java - 更新镜像后让 Jenkins "update"运行 docker 容器的最佳方法

对于Docker和Jenkins,我们的组织相对较新。我们正在开发从(Java)源代码更新到运行应用程序的CI管道。目前Jenkins正在使用CloudbeesDockerBuildandPublish插件在构建成功后更新镜像。它只是拉取基础(JBoss)镜像并使用它刚刚构建的应用程序WAR文件(通过Maven)对其进行更新。我们正在使用“通过SSH发送命令”构建步骤通过SSH连接到(当前运行的)容器所在的服务器,停止具有指定镜像ID的容器,然后重新拉取并随后运行容器。但是,我知道必须有更好、更优雅的方式来做到这一点。令人惊讶的是,我很难找到有关如何做到这一点的文档。任何意见,将不胜感

java - 更新镜像后让 Jenkins "update"运行 docker 容器的最佳方法

对于Docker和Jenkins,我们的组织相对较新。我们正在开发从(Java)源代码更新到运行应用程序的CI管道。目前Jenkins正在使用CloudbeesDockerBuildandPublish插件在构建成功后更新镜像。它只是拉取基础(JBoss)镜像并使用它刚刚构建的应用程序WAR文件(通过Maven)对其进行更新。我们正在使用“通过SSH发送命令”构建步骤通过SSH连接到(当前运行的)容器所在的服务器,停止具有指定镜像ID的容器,然后重新拉取并随后运行容器。但是,我知道必须有更好、更优雅的方式来做到这一点。令人惊讶的是,我很难找到有关如何做到这一点的文档。任何意见,将不胜感

docker - Jenkins 管道 : docker. withServer(...) 不在远程服务器上执行 docker 命令

我正在使用DockerPipeline插件1.10版。我将Jenkins安装在容器中。我有一个运行Docker守护程序的远程服务器。可以通过TCP(已测试)从Jenkins机器访问该守护程序。我在Docker守护程序上禁用了TLS安全性。我无法使docker.withServer(...)步骤工作。作为一项基本测试,我只是将以下内容放入Jenkinsfile中(如果我是正确的,这是一个有效的管道内容):docker.withServer('tcp://my.docker.host:2345'){defmyImage=docker.build('myImage')}当管道执行时,我收到此