我正在使用Jenkins来构建项目,但现在我的客户端想要在Docker镜像中进行构建。我在服务器上安装了docker,并在172.0.0.1:PORT
上运行。我已经安装了Docker插件并将此TCP URL分配给Docker URL。我还创建了一个名为jenkins-1的图像
在configure项目中,我使用Build环境Build with Docker Container
并提供图像名称。然后在Build in put Execute Shell
然后构建它
但是它给出了错误:
Pull Docker image jenkins-1 from repository ...`
$ docker pull jenkins-1`
Failed to pull Docker image jenkins-1`
FATAL: Failed to pull Docker image jenkins-1`
java.io.IOException: Failed to pull Docker image jenkins-1``
at com.cloudbees.jenkins.plugins.docker_build_env.PullDockerImageSelector.prepare DockerImage(PullDockerImageSelector.java:34)`
at com.cloudbees.jenkins.plugins.docker_build_env.DockerBuildWrapper.setUp(DockerB`uildWrapper.java:169)`
at hudson.model.Build$BuildExecution.doRun(Build.java:156)`
at `hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)`
at hudson.model.Run.execute(Run.java:1720)`
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)`
at hudson.model.ResourceController.execute(ResourceController.java:98)`
at hudson.model.Executor.run(Executor.java:404)`
Finished: FAILURE`
答案 0 :(得分:2)
我刚遇到同样的问题。有一个'详细'选择'高级...后,在构建环境配置中选中复选框。链接以扩展错误详细信息:
CloudBees plug-in Verbose option
在我的情况下,我没有空间下载构建Docker镜像。扩展ec2卷已经解决了这个问题。
但由于docker不会自动清理图像,因此空间存在持续的问题,我最终在构建中添加了手动清理步骤:
docker volume ls -qf dangling=true | xargs -r docker volume rm
完整的构建脚本:
https://bitbucket.org/vk-smith/dotnetcore-api/src/master/ci-build.sh?fileviewer=file-view-default