Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Access to Docker Unix socket is broken #32

Closed
ruskii22 opened this issue Dec 3, 2023 · 5 comments
Closed

Access to Docker Unix socket is broken #32

ruskii22 opened this issue Dec 3, 2023 · 5 comments
Labels
bug Something isn't working

Comments

@ruskii22
Copy link

ruskii22 commented Dec 3, 2023

Jenkins and plugins versions report

There are only two Jenkins: 2.430
OS: Linux - 5.15.0-89-generic
Java: 17.0.8.1 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)

ant:497.v94e7d9fffa_b_9
antisamy-markup-formatter:162.v0e6ec0fcfcf6
apache-httpcomponents-client-4-api:4.5.14-208.v438351942757
apache-httpcomponents-client-5-api:5.2.3-1.0
authentication-tokens:1.53.v1c90fd9191a_b_
bootstrap5-api:5.3.2-2
bouncycastle-api:2.29
branch-api:2.1135.v8de8e7899051
build-timeout:1.31
caffeine-api:3.1.8-133.v17b_1ff2e0599
checks-api:2.0.2
cloud-stats:320.v96b_65297a_4b_b_
cloudbees-folder:6.858.v898218f3609d
commons-lang3-api:3.13.0-62.v7d18e55f51e2
commons-text-api:1.11.0-94.v3e1f4a_926e49
configuration-as-code:1746.vf1673cfe690a
credentials:1309.v8835d63eb_d8a_
credentials-binding:642.v737c34dea_6c2
display-url-api:2.200.vb_9327d658781
docker-build-step:2.10
docker-commons:439.va_3cb_0a_6a_fb_29
docker-java-api:3.3.4-86.v39b_a_5ede342c
docker-plugin:1.5
docker-workflow:572.v950f58993843
durable-task:523.va_a_22cf15d5e0
echarts-api:5.4.3-1
email-ext:2.102
font-awesome-api:6.4.2-1
git:5.2.0
git-client:4.5.0
github:1.37.3.1
github-api:1.318-461.v7a_c09c9fa_d63
github-branch-source:1741.va_3028eb_9fd21
gradle:2.9
hashicorp-vault-plugin:361.v44fea_4fc08d9
instance-identity:185.v303dc7c645f9
ionicons-api:56.v1b_1c8c49374e
jackson2-api:2.15.3-372.v309620682326
jakarta-activation-api:2.0.1-3
jakarta-mail-api:2.0.1-3
javadoc:243.vb_b_503b_b_45537
javax-activation-api:1.2.0-6
javax-mail-api:1.6.2-9
jaxb:2.3.9-1
jjwt-api:0.11.5-77.v646c772fddb_0
jquery3-api:3.7.1-1
jsch:0.2.8-65.v052c39de79b_2
junit:1240.vf9529b_881428
ldap:711.vb_d1a_491714dc
mailer:463.vedf8358e006b_
matrix-auth:3.2.1
matrix-project:818.v7eb_e657db_924
maven-plugin:3.23
mina-sshd-api-common:2.11.0-86.v836f585d47fa_
mina-sshd-api-core:2.11.0-86.v836f585d47fa_
okhttp-api:4.11.0-157.v6852a_a_fa_ec11
pam-auth:1.10
pipeline-build-step:516.v8ee60a_81c5b_9
pipeline-github-lib:42.v0739460cda_c4
pipeline-graph-analysis:202.va_d268e64deb_3
pipeline-groovy-lib:689.veec561a_dee13
pipeline-input-step:477.v339683a_8d55e
pipeline-milestone-step:111.v449306f708b_7
pipeline-model-api:2.2151.ve32c9d209a_3f
pipeline-model-definition:2.2151.ve32c9d209a_3f
pipeline-model-extensions:2.2151.ve32c9d209a_3f
pipeline-rest-api:2.34
pipeline-stage-step:305.ve96d0205c1c6
pipeline-stage-tags-metadata:2.2151.ve32c9d209a_3f
pipeline-stage-view:2.34
plain-credentials:143.v1b_df8b_d3b_e48
plugin-util-api:3.6.0
prism-api:1.29.0-9
resource-disposer:0.23
scm-api:683.vb_16722fb_b_80b_
script-security:1294.v99333c047434
snakeyaml-api:2.2-111.vc6598e30cc65
ssh-credentials:308.ve4497b_ccd8f4
ssh-slaves:2.916.vd17b_43357ce4
structs:325.vcb_307d2a_2782
timestamper:1.26
token-macro:384.vf35b_f26814ec
trilead-api:2.84.v72119de229b_7
variant:60.v7290fc0eb_b_cd
workflow-aggregator:596.v8c21c963d92d
workflow-api:1283.v99c10937efcb_
workflow-basic-steps:1042.ve7b_140c4a_e0c
workflow-cps:3812.vc3031a_b_a_c955
workflow-durable-task-step:1289.v4d3e7b_01546b_
workflow-job:1360.vc6700e3136f5
workflow-multibranch:756.v891d88f2cd46
workflow-scm-step:415.v434365564324
workflow-step-api:639.v6eca_cd8c04a_a_
workflow-support:865.v43e78cc44e0d
ws-cleanup:0.45

What Operating System are you using (both controller, and any agents involved in the problem)?

Ubuntu 22.04.
Running jenkins as a docker image based from jenkins/jenkins:2.430-jdk17

Reproduction steps

  • Run default setup of jenkins docker with
  • JAVA_OPTS: -Djenkins.install.runSetupWizard=false
  • Mount /var/run/docker.sock from host to jenkins docker image
  • Install default plugins.
  • Install latest https://plugins.jenkins.io/docker-build-step/ plugin.
  • Restart.
  • Go to manage jenkins -> System -> Docker URL
  • Set it to unix:///var/run/docker.sock so the nodes can communicate with docker.
  • Click on test. and you get an error
    Something went wrong, cannot connect to unix:///var/run/docker.sock, cause: org.apache.hc.client5.http.HttpHostConnectException: Connect to unix://localhost:2375 [localhost/127.0.0.1] failed: Connection refused

Expected Results

After troubleshooting, I have discovered that your plugin is the root cause.
The version 5.2.1-1.1 works as expected. Anything afterwards breaks.

Actual Results

Something went wrong, cannot connect to unix:///var/run/docker.sock, cause: org.apache.hc.client5.http.HttpHostConnectException: Connect to unix://localhost:2375 [localhost/127.0.0.1] failed: Connection refused

Anything else?

The setup is plain and default. Nothing was changed to docker on the host

Are you interested in contributing a fix?

Sure. I need this fixed. Right now, I have to manually downgrade your package as I have not found a fix for the error.

@ruskii22 ruskii22 added the bug Something isn't working label Dec 3, 2023
@strangelookingnerd
Copy link
Contributor

As this plugin here only provides the dependencies for http components "as-is" the only way to fix it would be in the http client library or the docker plugin. See jenkinsci/docker-plugin#1032

@ruskii22
Copy link
Author

ruskii22 commented Dec 3, 2023

sounds like we have to wait for either of them to fix the issue. Until then, I will be forcing downgrade of this plugin. Thanks for quick response.

@MarkEWaite
Copy link
Contributor

Apache http client 5.3 has now released. Is the behavior any better with the new release?

@strangelookingnerd
Copy link
Contributor

@MarkEWaite I don't think so. From what I can tell it is somewhat caused / blocked by docker-java/docker-java#2183 and may be fixed by docker-java/docker-java#2262. Further there could still be something hidden in the httpclient itself but I did not yet come around to investigate any further.

@strangelookingnerd
Copy link
Contributor

According to jenkinsci/docker-plugin#1032 (comment) this issue has been resolved with 5.3.1-1.0. Closing this issue 😀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants