jenkinsci / docker-plugin

Jenkins cloud plugin that uses Docker
https://plugins.jenkins.io/docker-plugin/
MIT License
490 stars 320 forks source link

Upgraded Boot2Docker to 1.3.0 with Docker 1.3.0 now I can't connect my Docker Cloud. #108

Closed mtscout6 closed 7 years ago

mtscout6 commented 9 years ago

I updated Boot2Docker to 1.3.0 today which uses Docker 1.3.0 and I believe that the connection is now secured. When I upgraded I had to update my ENV from

DOCKER_HOST=tcp://192.168.59.103:2375

to

DOCKER_HOST=tcp://192.168.59.103:2376
DOCKER_CERT_PATH=/Users/smithm/.boot2docker/certs/boot2docker-vm
DOCKER_TLX_VERIFY=1

I thus changed the Docker URL in the Jenkins system configuration from http://192.168.59.103:2375 to http://192.168.59.103:2376 Which yields the error:

javax.servlet.ServletException: javax.ws.rs.ProcessingException: java.net.SocketException: Unexpected end of file from server
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:783)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
    at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
    at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:636)
    at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
    at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
...

When I tried https://192.168.59.103:2376 I got:

javax.servlet.ServletException: javax.ws.rs.ProcessingException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:783)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
    at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
    at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:636)
    at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
    at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
    at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
    at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
    at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
    at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
    at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
    at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
...

Has anyone else ran into this? Do I need to add some environment variables to my Jenkins server to identify the location of these certs? (This is my best guess on what's missing)

djdefi commented 9 years ago

Looks like java does not like the self signed certs that boot2docker generates for the TLS communication in 1.3

It may be possible to import these into the Java keystore to get it to trust them.

mtscout6 commented 9 years ago

Do you by chance have any good resources that would point me in the right direction to do that? I'm not a Java guy so this is uncharted territory for me.

djdefi commented 9 years ago

I'm not much of a Java guy either, but I saw this come across my news feed recently, may be a good starting point: https://www.digitalocean.com/community/tutorials/java-keytool-essentials-working-with-java-keystores

mtscout6 commented 9 years ago

I've gotten a little further I'm not getting this error:

javax.servlet.ServletException: javax.ws.rs.ProcessingException: javax.net.ssl.SSLHandshakeException: Received fatal alert: bad_certificate
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:783)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
    at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
...

I'm creating a docker volume with the docker certs via this and attaching that to my jenkins server. When I start up my jenkins server I add the certs with the keytool through a custom jenkins.sh script which will run as root. Which yields the output:

➜  jenkins-docker git:(master) ✗ docker logs -f jenkins-server
Including docker certs
Certificate was added to keystore
Certificate was added to keystore
keytool error: java.lang.Exception: Input not an X.509 certificate
Running from: /usr/share/jenkins/jenkins.war
webroot: EnvVars.masterEnvVars.get("JENKINS_HOME")
Oct 28, 2014 9:42:38 PM winstone.Logger logInternal
INFO: Beginning extraction from war file
...

I haven't been able to figure out that x.509 certificate error from my ~/.docker/key.pem Which I will continue to try and tackle tomorrow. From what you know does that at least look like i'm moving in the right direction?

djdefi commented 9 years ago

Looks like you on the right track. Maybe you need to convert the PEM to DER format?

openssl x509 -outform der -in certificate.pem -out certificate.der

magnayn commented 9 years ago

In order to get this to not-suck, I suspect jDocker needs to be able to to talk TLS, and the plugin needs to be able to specify credentials (from the credentials plugin) to pass through.

The latter is probably easy. The former ought to be simple, but anything related to Jersey seems to massively overcomplicated :-/

mtscout6 commented 9 years ago

What's the difference between jDocker and Docker-Java? Docker-Java at least appears to have this already, their README gives the following example:

DockerClientConfig config = DockerClientConfig.createDefaultConfigBuilder()
    .withVersion("1.15")
    .withUri("https://my-docker-host.tld:2376")
    .withUsername("dockeruser")
    .withPassword("ilovedocker")
    .withEmail("dockeruser@github.com")
    .withDockerCertPath("/home/user/.docker")
    .build();
DockerClient docker = DockerClientBuilder.getInstance(config).build();

Note the withDockerCertPath method call.

mtscout6 commented 9 years ago

@rtrauntvein I tried that command you gave me at got:

unable to load certificate
140735155589984:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: TRUSTED CERTIFICATE

I'm still trying to understand that bit, but do you have any thoughts?

magnayn commented 9 years ago

I branched back in the early days, when I wanted various things like Jersey2, and the ability to control release cycles (as stuff was changing rapidly / breaking a lot).

Now it's settled down, and whilst docker-java isn't exactly how I'd do it, it no longer makes sense to be using a different library. I have a branch that's going to move it onto docker-java, probably for the next release.

mtscout6 commented 9 years ago

Awesome, I look forward to your future release. Thanks for your hard work on this.

magnayn commented 9 years ago

(very) early cut here, if you want to try: https://dl.dropboxusercontent.com/u/534928/docker-plugin.hpi

Seems to work connecting to my boot2docker, but I haven't tested beyond that

mtscout6 commented 9 years ago

Do you mind pushing that as a github release. I have a wonderful corporate firewall that prevents me from downloading from dropbox.

magnayn commented 9 years ago

Try https://github.com/jenkinsci/docker-plugin/releases/tag/untagged-c1ecb1ce9ee819de772a

mtscout6 commented 9 years ago

It's a move in the right direction, but I get this error:

I ran the following commands to get that cert into the Jenkins container:

docker run --name docker-certs -v /home/docker/.docker:/var/jenkins_home/.docker busybox
docker run -d -p 50000:50000 -p 3010:8080 --name jenkins-server --volumes-from docker-certs mtscout6/jenkins-server

The docker file used to make mtscout6/jenkins-server is found here

The link to https://github.com/jenkinsci/docker-plugin/releases/tag/untagged-c1ecb1ce9ee819de772a did not work, I am having to do this from home instead. The https://dl.dropboxusercontent.com/u/534928/docker-plugin.hpi link is working.

mtscout6 commented 9 years ago

I finally figure it out, the mere act of binding the data volumes with the docker certs was all I needed to do. No need to explicitly set authentication in the Jenkins configuration page

mtscout6 commented 9 years ago

Sorry for the delay on testing this for you. I'm getting the following error when slaves are being provisioned:

Creating slave SSH launcher for 192.168.59.103:49175
Nov 13, 2014 9:27:36 PM SEVERE com.nirima.jenkins.plugins.docker.DockerCloud$1 call
Error in provisioning; slave=null, template=DockerTemplate{image=mtscout6/jenkins-slave-nodejs, parent=DockerCloud{name=docker-ci, serverUrl=https://192.168.59.103:2376}}
Nov 13, 2014 9:27:45 PM WARNING hudson.slaves.NodeProvisioner update
Provisioned slave Image of mtscout6/jenkins-slave-nodejs failed to launch
java.lang.NullPointerException
    at com.nirima.jenkins.plugins.docker.DockerTemplate.provision(DockerTemplate.java:241)
    at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:238)
    at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:233)
    at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
mtscout6 commented 9 years ago

Although running docker ps shows this (at least it's respecting the max instance value :) ):

➜  ssc git:(dockerize) docker ps
CONTAINER ID        IMAGE                                  COMMAND                CREATED              STATUS              PORTS                                              NAMES
9a8c12c060ef        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 seconds ago        Up 2 seconds        0.0.0.0:49291->22/tcp, 0.0.0.0:49292->8080/tcp     silly_nobel
c98a17c42c38        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 seconds ago        Up 2 seconds        0.0.0.0:49293->22/tcp, 0.0.0.0:49294->8080/tcp     loving_leakey
0bb2cb030640        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    13 seconds ago       Up 12 seconds       0.0.0.0:49289->22/tcp, 0.0.0.0:49290->8080/tcp     insane_almeida
05c272ac52d1        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    13 seconds ago       Up 12 seconds       0.0.0.0:49287->22/tcp, 0.0.0.0:49288->8080/tcp     distracted_albattani
f9c215f1c35b        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    23 seconds ago       Up 22 seconds       0.0.0.0:49285->22/tcp, 0.0.0.0:49286->8080/tcp     jovial_brattain
9f808b17383e        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    23 seconds ago       Up 22 seconds       0.0.0.0:49283->22/tcp, 0.0.0.0:49284->8080/tcp     compassionate_mcclintock
db902d6398c9        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    33 seconds ago       Up 32 seconds       0.0.0.0:49281->22/tcp, 0.0.0.0:49282->8080/tcp     focused_meitner
d59859089de7        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    33 seconds ago       Up 32 seconds       0.0.0.0:49279->22/tcp, 0.0.0.0:49280->8080/tcp     nostalgic_meitner
06332fb6b8e2        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    43 seconds ago       Up 41 seconds       0.0.0.0:49275->22/tcp, 0.0.0.0:49278->8080/tcp     high_nobel
009b9085856b        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    43 seconds ago       Up 41 seconds       0.0.0.0:49273->22/tcp, 0.0.0.0:49276->8080/tcp     backstabbing_turing
172bea91bec2        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    43 seconds ago       Up 41 seconds       0.0.0.0:49274->22/tcp, 0.0.0.0:49277->8080/tcp     tender_rosalind
90722739ea65        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    43 seconds ago       Up 42 seconds       0.0.0.0:49271->22/tcp, 0.0.0.0:49272->8080/tcp     naughty_pasteur
a5d568ade6e5        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    53 seconds ago       Up 51 seconds       0.0.0.0:49266->22/tcp, 0.0.0.0:49269->8080/tcp     jovial_wozniak
457d4d92668e        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    53 seconds ago       Up 51 seconds       0.0.0.0:49267->22/tcp, 0.0.0.0:49270->8080/tcp     evil_mcclintock
50577e11c58e        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    53 seconds ago       Up 51 seconds       0.0.0.0:49265->22/tcp, 0.0.0.0:49268->8080/tcp     mad_almeida
fe9a2aa857a6        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    53 seconds ago       Up 52 seconds       0.0.0.0:49263->22/tcp, 0.0.0.0:49264->8080/tcp     cranky_blackwell
25511ff61825        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49257->22/tcp, 0.0.0.0:49260->8080/tcp     silly_elion
eb07e15ef221        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49259->22/tcp, 0.0.0.0:49262->8080/tcp     angry_galileo
632d11d0a1fc        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49258->22/tcp, 0.0.0.0:49261->8080/tcp     backstabbing_sinoussi
2e3f5a0213e7        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49255->22/tcp, 0.0.0.0:49256->8080/tcp     insane_wilson
798d1d878e22        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49250->22/tcp, 0.0.0.0:49253->8080/tcp     jolly_kowalevski
36239793b298        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49251->22/tcp, 0.0.0.0:49254->8080/tcp     condescending_fermi
82c65d2adeb0        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49249->22/tcp, 0.0.0.0:49252->8080/tcp     elegant_bell
2dfccd3cd49b        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49247->8080/tcp, 0.0.0.0:49248->22/tcp     elegant_darwin
0a5e30f3b639        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49244->22/tcp, 0.0.0.0:49246->8080/tcp     agitated_rosalind
20a37421fc9a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49243->22/tcp, 0.0.0.0:49245->8080/tcp     angry_heisenberg
ef30a19cca9d        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49241->22/tcp, 0.0.0.0:49242->8080/tcp     insane_einstein
1d1158d69170        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49237->22/tcp, 0.0.0.0:49239->8080/tcp     goofy_curie
88c040ac5200        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49238->22/tcp, 0.0.0.0:49240->8080/tcp     boring_thompson
6e71e5e0a872        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49235->22/tcp, 0.0.0.0:49236->8080/tcp     hopeful_thompson
9c41bcdae9aa        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49232->8080/tcp, 0.0.0.0:49234->22/tcp     high_ptolemy
fa25abd7ca2b        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49231->22/tcp, 0.0.0.0:49233->8080/tcp     nostalgic_lalande
a6e8b73d3970        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49229->22/tcp, 0.0.0.0:49230->8080/tcp     sad_tesla
4d6ffd5b3bdc        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49226->22/tcp, 0.0.0.0:49228->8080/tcp     drunk_wozniak
041894d7042c        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49225->22/tcp, 0.0.0.0:49227->8080/tcp     loving_wozniak
f8f59c791e29        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    About a minute ago   Up About a minute   0.0.0.0:49223->8080/tcp, 0.0.0.0:49224->22/tcp     happy_hypatia
8bf3cec9577f        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49220->22/tcp, 0.0.0.0:49222->8080/tcp     tender_darwin
60f000d45a9e        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49219->22/tcp, 0.0.0.0:49221->8080/tcp     condescending_torvalds
900ca6cf6d09        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49217->8080/tcp, 0.0.0.0:49218->22/tcp     pensive_leakey
8814771fb542        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49214->8080/tcp, 0.0.0.0:49216->22/tcp     goofy_hawking
f831864f0a99        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49213->22/tcp, 0.0.0.0:49215->8080/tcp     suspicious_bartik
6c5ec246f905        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49211->22/tcp, 0.0.0.0:49212->8080/tcp     ecstatic_nobel
73de8a0f80ed        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49208->22/tcp, 0.0.0.0:49210->8080/tcp     thirsty_leakey
35f12a947f06        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49207->22/tcp, 0.0.0.0:49209->8080/tcp     focused_bell
39149eb2867b        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49205->22/tcp, 0.0.0.0:49206->8080/tcp     stupefied_elion
85b655928926        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49201->22/tcp, 0.0.0.0:49203->8080/tcp     sick_curie
a4b4ae44c260        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49202->22/tcp, 0.0.0.0:49204->8080/tcp     ecstatic_curie
ea5892497209        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49199->22/tcp, 0.0.0.0:49200->8080/tcp     cranky_ptolemy
60e22a3ec2e4        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49196->22/tcp, 0.0.0.0:49198->8080/tcp     silly_fermat
52495b5f8798        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49195->22/tcp, 0.0.0.0:49197->8080/tcp     sleepy_stallman
b9dcc4fb125c        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49193->22/tcp, 0.0.0.0:49194->8080/tcp     sharp_morse
9e1070c01985        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49190->8080/tcp, 0.0.0.0:49192->22/tcp     compassionate_babbage
65a869ca34e9        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49189->22/tcp, 0.0.0.0:49191->8080/tcp     backstabbing_engelbart
a08b957fe108        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    2 minutes ago        Up 2 minutes        0.0.0.0:49187->22/tcp, 0.0.0.0:49188->8080/tcp     insane_morse
0cecd206ae6e        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49183->22/tcp, 0.0.0.0:49185->8080/tcp     stoic_perlman
5881d3298ca9        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49184->22/tcp, 0.0.0.0:49186->8080/tcp     compassionate_hoover
1c228c2a3201        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49181->22/tcp, 0.0.0.0:49182->8080/tcp     sick_stallman
b7babcb3e61a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49177->22/tcp, 0.0.0.0:49178->8080/tcp     happy_brown
c9d55905d55a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49179->22/tcp, 0.0.0.0:49180->8080/tcp     thirsty_turing
0be54e3a2cf2        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49175->22/tcp, 0.0.0.0:49176->8080/tcp     cranky_ritchie
5af8a527f96d        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49173->22/tcp, 0.0.0.0:49174->8080/tcp     hungry_bohr
d0272e13b10a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49169->22/tcp, 0.0.0.0:49170->8080/tcp     tender_perlman
3ef5a7235e02        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49171->22/tcp, 0.0.0.0:49172->8080/tcp     boring_goldstine
2480255ceaa6        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49165->22/tcp, 0.0.0.0:49166->8080/tcp     condescending_pasteur
1684a932b0f5        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49167->22/tcp, 0.0.0.0:49168->8080/tcp     happy_wozniak
651aa1977e6d        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49163->22/tcp, 0.0.0.0:49164->8080/tcp     lonely_einstein
44c807142fb7        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    3 minutes ago        Up 3 minutes        0.0.0.0:49161->22/tcp, 0.0.0.0:49162->8080/tcp     clever_hopper
44d8771b1aed        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    4 minutes ago        Up 4 minutes        0.0.0.0:49159->22/tcp, 0.0.0.0:49160->8080/tcp     evil_jones
9636c200f32a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    4 minutes ago        Up 4 minutes        0.0.0.0:49157->22/tcp, 0.0.0.0:49158->8080/tcp     compassionate_rosalind
f515e7b92808        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    4 minutes ago        Up 4 minutes        0.0.0.0:49154->22/tcp, 0.0.0.0:49156->8080/tcp     thirsty_wright
e6094bbe671a        mtscout6/jenkins-slave-nodejs:latest   "/usr/sbin/sshd -D"    4 minutes ago        Up 4 minutes        0.0.0.0:49153->22/tcp, 0.0.0.0:49155->8080/tcp     hungry_newton
08c70b725a87        mtscout6/jenkins-server:latest         "/usr/local/bin/jenk   7 minutes ago        Up 7 minutes        0.0.0.0:3010->8080/tcp, 0.0.0.0:50000->50000/tcp   jenkins-server
mtscout6 commented 9 years ago

More! hopefully this helps:

mtscout6 commented 9 years ago

Whoa, never mind the instance limit is not getting respected. I've got a lot of running containers now....

ninja- commented 9 years ago

https://dl.dropboxusercontent.com/u/534928/docker-plugin.hpi

EEEH same problem as with jDocker...

FATAL: com.github.dockerjava.api.NotModifiedException
java.lang.RuntimeException: com.github.dockerjava.api.NotModifiedException
    at com.nirima.jenkins.plugins.docker.builder.DockerBuilderControl.perform(DockerBuilderControl.java:61)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770)
    at hudson.model.Build$BuildExecution.build(Build.java:199)
    at hudson.model.Build$BuildExecution.doRun(Build.java:160)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:533)
    at hudson.model.Run.execute(Run.java:1759)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:89)
    at hudson.model.Executor.run(Executor.java:240)
Caused by: com.github.dockerjava.api.NotModifiedException
    at com.github.dockerjava.jaxrs.util.ResponseStatusExceptionFilter.filter(ResponseStatusExceptionFilter.java:41)
    at org.glassfish.jersey.client.ClientFilteringStages$ResponseFilterStage.apply(ClientFilteringStages.java:134)
    at org.glassfish.jersey.client.ClientFilteringStages$ResponseFilterStage.apply(ClientFilteringStages.java:123)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:171)
    at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:251)
    at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:667)
    at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:664)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:424)
    at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:664)
    at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:424)
    at org.glassfish.jersey.client.JerseyInvocation$Builder.post(JerseyInvocation.java:333)
    at com.github.dockerjava.jaxrs.StartContainerCmdExec.execute(StartContainerCmdExec.java:27)
    at com.github.dockerjava.jaxrs.StartContainerCmdExec.execute(StartContainerCmdExec.java:13)
    at com.github.dockerjava.jaxrs.AbstrDockerCmdExec.exec(AbstrDockerCmdExec.java:47)
    at com.github.dockerjava.core.command.AbstrDockerCmd.exec(AbstrDockerCmd.java:26)
    at com.github.dockerjava.core.command.StartContainerCmdImpl.exec(StartContainerCmdImpl.java:281)
    at com.nirima.jenkins.plugins.docker.builder.DockerBuilderControlOptionProvisionAndStart.execute(DockerBuilderControlOptionProvisionAndStart.java:36)
    at com.nirima.jenkins.plugins.docker.builder.DockerBuilderControl.perform(DockerBuilderControl.java:59)
    ... 9 more

this should be catch-ignored at start() and stop()....

magnayn commented 9 years ago

If you're feeling brave, you can try a -SNAPSHOT version here: http://repo.jenkins-ci.org/snapshots/com/nirima/docker-plugin/0.9-SNAPSHOT/

JeremyMarshall commented 9 years ago

Forgive my late entry but I was trying to use the docker plugin on my mac but couldn't get Jenkins to connect to my Docker

I did the brew install of docker and boot2docker and got a tcp: port but Jenkins will not connect when I try the test in the global config

Should I pull the latest master and build or am I missing a vital step?

thomassuckow commented 9 years ago

You probably need to use the 0.9-SNAPSHOT and configure Jenkins with the keys for authenticating to docker.

JeremyMarshall commented 9 years ago

I used this one http://repo.jenkins-ci.org/snapshots/com/nirima/docker-plugin/0.9-SNAPSHOT/ and it worked without swapping keys

Thanks

Downchuck commented 9 years ago

What is the approximate command to make the PEM; also, is there a method for removing uploaded certs?

This did not work out for me:

openssl pkcs12 -export -out cert.pfx -inkey /var/lib/boot2docker/tls/key.pem -in /var/lib/boot2docker/tls/cert.pem -certfile /var/lib
/boot2docker/tls/ca.pem

EDIT: Found the management/editor under credentials (from Jenkins), with reasonable debugging. It gave me this:

Could retrieve key "1". You may need to provide a password
KostyaSha commented 9 years ago

In summary: what is this issue about?

jmiddleton commented 9 years ago

Matt, I'm trying to configure the plugin but when I set https://192.168.59.103:2376, I got shaded.org.apache.http.conn.UnsupportedSchemeException: https protocol is not supported.

I'm using Docker Plugin 0.92 with Docker 1.3.0. I have Jenkins server on Kitematic (Virtualbox) and another VM with Docker 1.3.0

Do I need to copy the ....boot2docker/certs/boot2docker-vm/*.pem to Jenkins container?

UPDATE: I just tried this from Jenkins Server to Docker Server and it worked

wget --no-check-certificate --certificate=cert.pem --private-key=key.pem https://192.168.59.103:2376/info --2015-06-11 07:00:35-- https://192.168.59.103:2376/info Connecting to 192.168.59.103:2376... connected. WARNING: The certificate of ‘192.168.59.103’ is not trusted. WARNING: The certificate of ‘192.168.59.103’ hasn't got a known issuer. HTTP request sent, awaiting response... 200 OK Length: 967 [application/json] Saving to: ‘info’

info 100%[===============================================================================================================>] 967 --.-KB/s in 0s

2015-06-11 07:00:35 (2.18 MB/s) - ‘info’ saved [967/967]

{"Containers":2,"Debug":1,"DockerRootDir":"/mnt/sda1/var/lib/docker","Driver":"aufs","DriverStatus":[["Root Dir","/mnt/sda1/var/lib/docker/aufs"],["Backing Filesystem","extfs"],["Dirs","94"],["Dirperm1 Supported","true"]],"ExecutionDriver":"native-0.2","ID":"MQFG:FWUG:7CV7:X7OC:N3LY:SEMP:OCWZ:B34V:YC72:H77U:M6MS:HB34","IPv4Forwarding":1,"Images":90,"IndexServerAddress":"https://index.docker.io/v1/","InitPath":"/usr/local/bin/docker","InitSha1":"9145575052383dbf64cede3bac278606472e027c","KernelVersion":"3.18.11-tinycore64","Labels":null,"MemTotal":4150665216,"MemoryLimit":1,"NCPU":8,"NEventsListener":0,"NFd":12,"NGoroutines":16,"Name":"boot2docker","OperatingSystem":"Boot2Docker 1.6.0 (TCL 5.4); master : a270c71 - Thu Apr 16 19:50:36 UTC 2015","RegistryConfig":{"IndexConfigs":{"docker.io":{"Mirrors":null,"Name":"docker.io","Official":true,"Secure":true}},"InsecureRegistryCIDRs":["127.0.0.0/8"]},"SwapLimit":1,"SystemTime":"2015-06-11T07:00:35.64832792Z"}

SOLUTION: The solution is to disable TLS as suggested by mboersma in https://github.com/deis/deis/issues/2230

Thanks, Jorge

ndeloof commented 7 years ago

purging this old issue