用jenkins构builddockerfile的docker镜像

我昨天被阻止,需要一些帮助。 我试图使用jenkins docker-pluginjenkins docker-plugin docker-plugin-step从dockerfilebuild立docker镜像。

但是,当我尝试运行jenkins的工作,它给了我以下例外:

 Docker Build Docker Build : build with tag jdubois/jhipster-docker:Gateway_Jenkins_V1 at path /home/javateam/DockerfileGateway ERROR: Build step failed with exception java.lang.NullPointerException: config was not specified at shaded.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:226) at com.github.dockerjava.core.DockerClientImpl.<init>(DockerClientImpl.java:36) at com.github.dockerjava.core.DockerClientImpl.getInstance(DockerClientImpl.java:52) at com.github.dockerjava.core.DockerClientBuilder.getInstance(DockerClientBuilder.java:29) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run$1.invoke(DockerBuilderPublisher.java:144) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run$1.invoke(DockerBuilderPublisher.java:139) at hudson.FilePath.act(FilePath.java:991) at hudson.FilePath.act(FilePath.java:969) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run.buildImage(DockerBuilderPublisher.java:139) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run.run(DockerBuilderPublisher.java:89) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher.perform(DockerBuilderPublisher.java:180) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.build(MavenModuleSetBuild.java:915) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:866) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:537) at hudson.model.Run.execute(Run.java:1744) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374) Build step 'Build / Publish Docker Containers' marked build as failure Finished: FAILURE 

以下是dockerfile的内容:

 #Basic images for Gateway MS FROM jdubois/jhipster-docker:Gateway_Jenkins_V1 #Fetch last Gateway MS version from gitlab and run it RUN cd /home/jhipster/DockerJenkinsGateway && \ git pull origin master # expose the working directory, the Tomcat port, the BrowserSync ports, the SSHD port, and run SSHD VOLUME ["/jhipster"] EXPOSE 8080 3000 3001 22 CMD /usr/sbin/sshd -D 

什么做错了?

另一个select是使用Jenkins提供的shell作为构build步骤,并使用通常在该shell脚本中使用的命令行参数来构buildDocker镜像。

这就是我们在构build服务器上所做的事情,它使我们能够对版本控制以及将哪个图像/标记推送到Dockerhub等方面进行细致的控制。

如果您使用的是Jenkins 2.0或更高版本,那么Jenkins会为您提供一个select,以构buildpipe道代码,您可以轻松集成docker及其存储库。

转到 – >新项目 – >select多分支pipe道选项,你会看到通过jenkins连接到docker的选项。

让我知道更多的细节的情况下。