-
Notifications
You must be signed in to change notification settings - Fork 712
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
Embed Docker 1.13.1 (but force protocol 1.22) #2277
Conversation
595d2cb
to
4dca8b6
Compare
It works on the host, (the docker client returns a 125 status for some commands, maybe due to the mismatching protocol?):
But ... it fails when run inside the Scope container, and there is no output:
Digging deeper, it seems like
I need to look deeper into this |
Actually, it also fails sometimes on the host (but there is output)
|
Apparently 125 means that https://stackoverflow.com/questions/31297616/what-is-the-authoritative-list-of-docker-run-exit-codes |
running with debug shows that the hijacker may not be expecting stdout to end?
|
4dca8b6
to
1e6ced9
Compare
After rebasing on top of #2278 , this PR seems to work without problems with docker engine 1.10
The Scope logs also show there are no problems talking to Docker Engine
Kudos to @bboreham |
Makefile
Outdated
@@ -49,6 +49,7 @@ docker/weaveutil: | |||
$(SCOPE_EXPORT): $(SCOPE_EXE) $(DOCKER_DISTRIB) docker/weave docker/weaveutil $(RUNSVINIT) docker/Dockerfile docker/demo.json docker/run-app docker/run-probe docker/entrypoint.sh | |||
cp $(SCOPE_EXE) $(RUNSVINIT) docker/ | |||
cp $(DOCKER_DISTRIB) docker/docker.tgz | |||
cd docker && tar -xvzf docker.tgz |
This comment was marked as abuse.
This comment was marked as abuse.
Sorry, something went wrong.
This comment was marked as abuse.
This comment was marked as abuse.
Sorry, something went wrong.
7ae993d
to
41c7451
Compare
docker/Dockerfile
Outdated
@@ -4,7 +4,7 @@ LABEL works.weave.role=system | |||
WORKDIR /home/weave | |||
RUN apk add --update bash runit conntrack-tools iproute2 util-linux curl && \ | |||
rm -rf /var/cache/apk/* | |||
ADD ./docker.tgz / | |||
ADD ./docker /usr/local/bin/docker |
This comment was marked as abuse.
This comment was marked as abuse.
Sorry, something went wrong.
@@ -81,7 +81,7 @@ check_docker_access() { | |||
fi | |||
} | |||
|
|||
# - The image embeds the weave script & Docker 1.10.3 client | |||
# - The image embeds the weave script & Docker 1.13.1 client (mimicking a 1.10 client) |
This comment was marked as abuse.
This comment was marked as abuse.
Sorry, something went wrong.
Fixes #2276 (this embeds a version of the 1.13 client executable, which was split from the docker daemon and thus, it doesn't include sqlite anymore).
For the record, here is proof that
docker
version 1.10.3 uses protocol 1.22: