-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Old vendored fsouza/go-dockerclient doesn't have fix for failing docker check connection #3254
Comments
On it. |
@davidkemper Thx for reporting this. I've updated the Can you check whether this works for you? You can check out the branch and run |
Thanks for the quick turn-around. I'll try to verify today; our CI builds on released archives, so I'll need to take a little time building from source and integrating into our systems. |
Here's my git pull:
I've tried building this on OSX using go 1.8.3 installed with brew, and in an Ubuntu docker container with go, git, etc added. I consistently get build errors of this flavor: On OSX
On Ubuntu:
This is also what your CI server is reporting: https://travis-ci.org/hashicorp/consul/builds/252375875?utm_source=github_status&utm_medium=notification |
my bad. will fix |
Update go-dockerclient and dependant dependencies to add fix for go-dockerclient#622. Fixes #3254
Fixing this required a somewhat insane amount of dependency update including with a naming clash for the github.com/sirupsen/logrus lib. I will have a look to implement this feature in a different way so that we can drop these dependencies altogether. Could you have another look, please? |
Sure thing; it will have to be tomorrow, though. I'll let you know how it goes. |
I was able to build this change set and patch it into our systems. I did not get that error. I wasn't able to get a docker check running end-to-end because we have dockerized consul and have a custom consul user/group as well, and I'm searching for the happy path through the various layers of isolation and TLS. Thus I think it's unrelated to the specific problem that I reported. Thank you again for the rapid response. |
@davidkemper I've merged the library update to fix the immediate problem but also started rewriting that piece of code since it used a significant amount of dependencies for a tiny feature. The change is in #3270. This is functional but I still need to finish the tests. Would appreciate if you can test this at some point. |
BTW, thanks again for the fix. I look forward to trying it again at our next upstream integration point. |
Operating system and Environment details
A vagrant single machine setup based on Ubuntu.
Description of the Issue (and unexpected/desired result)
I'm using Consul 0.8.4 on a single vm for dev testing. I'm trying to set up a docker check by creating a .json configuration for it.
I've volume-mounted the docker socket into the docker container in which I'm running consul, and am expecting the consul agent to resolve to the desired container. In the consul GUI I see the error
Unable to create Exec, error: Post http://172.17.0.1:2376/containers/djk/exec: EOF
Here's what I think is going on:
As per fsouza/go-dockerclient#622 there is a fix to an underlying issue in go-cleanhttp. go-dockerclient has a fix for it as of fsouza/go-dockerclient#621 on Feb 11, 2017.
You have not yet vendored that fix: as per https://github.com/hashicorp/consul/blob/master/vendor/vendor.json you are vendoring go-dockerclient revision
a53ba79627e888ef775bdcf15813f07d7a232867
with a revisionTime of2016-08-09T01:24:47Z
.This does not appear to be updated in Consul 0.8.5 either; it's possible that other libraries or functionality is affected.
(This is my first created issue; apologies in advance if I'm short-cutting, but I'm hoping this gives you enough bread crumbs.)
The text was updated successfully, but these errors were encountered: