Ich versuche, das Docker-Plugin auf Jenkins zu verwenden, um eine Instanz eines vorhandenen Containers auszuführen. Docker Version 1.6.0, Build 4749651Verwendung von Docker-Plugin auf Jenkins -
I "erstellen Container" Eingetragen das Bild-ID für den Bildnamen und versucht, einen Host http://172.16.42.43:4243 und auch versucht, einen leeren Host ausgewählt haben. Ich erhalte diese Fehlermeldung:
ERROR: Build step failed with exception
java.lang.NullPointerException: uri was not specified
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:204)
at com.github.dockerjava.core.DockerClientConfig$DockerClientConfigBuilder.withUri(DockerClientConfig.java:406)
at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl.createDockerClient(DockerBuilder.java:123)
at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl.getDockerClient(DockerBuilder.java:201)
at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder.perform(DockerBuilder.java:71)
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:537)
at hudson.model.Run.execute(Run.java:1744)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:374)
Build step 'Execute Docker container' marked build as failure
Kann mir jemand sagen, wie man es beheben? Wenn jemand dieses Plugin schon einmal benutzt hat, lass es mich bitte wissen, ob das jemals funktioniert hat.
Auch versucht, den "Docker Container ausführen" -> Container mit der angegebenen Container-ID starten, was zu dem gleichen Fehler führt.
Ein anderer Ansatz: Ich habe versucht, die Shell-Plug Execute in und ich bekomme diese Fehlermeldung:
+ docker start d023eec1ff34
Post http:///var/run/docker.sock/v1.18/containers/d023eec1ff34/start: dial unix /var/run/docker.sock: permission denied. Are you trying to connect to a TLS-enabled daemon without TLS?
time="2015-05-05T10:26:34-07:00" level=fatal msg="Error: failed to start one or more containers"
Wenn ich an das Terminal gehen Sie einfach, wechseln Sie zu jenkins Benutzer und führen die Docker Befehl starten, es funktioniert gut. Wenn jemand weiß, wie man es auf diese Weise repariert, wäre das auch großartig.
Docker-Version? Überprüfen Sie die Protokolle von Docker (es kann in /var/log/docker.log oder in /var/log/upstart/docker.log, je nach Betriebssystem), auch versuchen, den Docker-Daemon im Debug-Modus zu starten. siehe --debug = true docs.docker.com/reference/commandline/cli/#daemon – user2915097
Kann dies sein, extrahieren von http://serverfault.com/questions/639459/why-might-the-jenkins-user-not -have-permission-to-access-the-docker-unix-socket0 \t Ich denke, geben Jenkins Gruppe Berechtigungen zu Docker Unix-Socket löst das Problem. Dies kann durch die Konfiguration der Startoptionen für den Docker-Dämon in der Konfigurationsdatei geändert werden, indem diese Zeile hinzugefügt wird. DOCKER_OPTS = '-G Jenkins' In ubuntu/etc/default/docker befindet sich die Andockkonfigurationsdatei. – user2915097
Ich habe versucht, das zu den Jenkins Standard hinzuzufügen. Außerdem habe ich versucht, jenkins user zur Docker-Gruppe hinzuzufügen. Ich habe das auf 2 Maschinen ohne Glück gemacht. – max