2016-07-29 16 views
1

Ich versuche, einen Job zu erzeugen ein DockerFile zu schaffen und ein Docker Bild zu schaffen Sie es, habe ich das Docker Plugin solche SchritteJenkins, Dockarbeiter Schritt erstellen Erstellen Bild liefert Nullpointer

ich einen Build-Schritt haben zu haben, das sollte ein Bild wie dieses docker image creation and pull

jedoch erschaffen, wenn ich diesen Job ausführen, ist alles, bis eine Reichweite dieser Schritt in Ordnung, die mir die folowing Fehler zurückgibt

ERROR: Build step failed with exception 
java.lang.NullPointerException 
    at com.github.dockerjava.jaxrs.DockerCmdExecFactoryImpl.init(DockerCmdExecFactoryImpl.java:105) 
    at com.github.dockerjava.core.DockerClientImpl.withDockerCmdExecFactory(DockerClientImpl.java:64) 
    at com.github.dockerjava.core.DockerClientBuilder.build(DockerClientBuilder.java:63) 
    at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl.createDockerClient(DockerBuilder.java:132) 
    at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl.getDockerClient(DockerBuilder.java:204) 
    at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder.perform(DockerBuilder.java:68) 
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) 
    at hudson.model.Build$BuildExecution.build(Build.java:205) 
    at hudson.model.Build$BuildExecution.doRun(Build.java:162) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534) 
    at hudson.model.Run.execute(Run.java:1741) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
    at hudson.model.ResourceController.execute(ResourceController.java:98) 
    at hudson.model.Executor.run(Executor.java:410) 
Build step 'Execute Docker command' marked build as failure 
Finished: FAILURE 

ich habe auch versucht Shell-Skript und läuft diese Linie

docker build --pull=true -t registry.mywebsite.com:5000/sequoia-$VERSIONBUILD:$BUILD_NUMBER . 

aber es sagt mir

docker not found 

was bedeutet es nicht Docker hatte, so ich brauche das Docker Plugin

verwenden Gibt es ein Problem mit meinem Schritt oder ist es etwas mit meiner Konfiguration?

Antwort

1

Der Dienst docker muss ausgeführt werden, und die Docker-Binärdatei muss in $ PATH angegeben sein, unabhängig davon, welcher Slave (oder Master) diesen Job ausführt.

Das Plugin bietet einfach einen Jenkins-Build-Schritt, um Docker als Build-Schritt und nicht den Docker-Service und Binär selbst aufzurufen. Sie müssen es separat installieren und einrichten.

Weitere Informationen entnehmen Sie bitte den Abschnitt „Konfiguration“ auf https://wiki.jenkins-ci.org/display/JENKINS/Docker+build+step+plugin

+0

der Tat, Sie haben Recht, ich hatte Docker manuell in meinem Docker zu installieren. Vielen Dank –