Tecnativa / docker-socket-proxy

Proxy over your Docker socket to restrict which requests it accepts
Apache License 2.0
1.41k stars 161 forks source link

Trying to build docker (23.0.3) image inside gitlab-runner #83

Closed tboyer-idnum closed 1 year ago

tboyer-idnum commented 1 year ago

Hi :)

I'm facing a problem i didn't have before with socket-proxy, here my docker compose stack :

on 20.10.20 dind version it's alright but on 23.0.3 i have a tricky error message :

$ docker build \ # collapsed multi-line command
WARNING: buildx: git was not found in the system. Current commit information was not captured by the build
ERROR: listing workers for Build: failed to list workers: Unavailable: write tcp 172.31.0.12:35916->172.31.0.11:2375: use of closed network connection
ERROR: Job failed: exit code 1

here are logs of docker-socket-proxy service (i'm surprised that calls have been executed on v1.42 api, and grpc calls are forbidden 403) :

dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 1/1/0/0/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/5/5 200 2557 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/info HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 1886 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/registry.gitlab.com/gitlab-org/gitlab-runner/gitlab-runner-helper:x86_64-dcfb4b66/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 1886 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/registry.gitlab.com/gitlab-org/gitlab-runner/gitlab-runner-helper:x86_64-dcfb4b66/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 6185 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/affineurs/dind:23-build/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/848/858 200 473 - - ---- 1/1/0/0/0 0/0 "POST /v1.42/images/create?fromImage=affineurs%2Fdind&tag=23-build HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/2/2 200 6185 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/affineurs/dind:23-build/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 1886 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/registry.gitlab.com/gitlab-org/gitlab-runner/gitlab-runner-helper:x86_64-dcfb4b66/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 1886 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/images/sha256:16eed3dc21a621f6a6b1dfc9e4d1f891458ada8fc569eb679057867c2131d7d9/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/2 200 16459 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 404 332 - - ---- 1/1/0/0/0 0/0 "DELETE /v1.42/containers/runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-0?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/87/87 201 313 - - ---- 1/1/0/0/0 0/0 "POST /v1.42/containers/create?name=runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-0 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 24619 - - ---- 1/1/0/0/0 0/0 "GET /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/438/438 204 176 - - ---- 2/2/1/1/0 0/0 "POST /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf/start HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/542 101 197 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf/attach?stderr=1&stdin=1&stdout=1&stream=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/239/239 200 256 - - ---- 1/1/0/0/0 0/0 "POST /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf/wait?condition=not-running HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 304 178 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf/stop HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 1886 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/images/registry.gitlab.com/gitlab-org/gitlab-runner/gitlab-runner-helper:x86_64-dcfb4b66/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 1886 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/images/sha256:16eed3dc21a621f6a6b1dfc9e4d1f891458ada8fc569eb679057867c2131d7d9/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 16459 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 404 332 - - ---- 2/2/0/0/0 0/0 "DELETE /v1.42/containers/runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-1?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/68/68 201 313 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/create?name=runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 24619 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/397/397 204 176 - - ---- 3/3/1/1/0 0/0 "POST /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6/start HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/847 101 401 - - ---- 3/3/0/0/0 0/0 "POST /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6/attach?stderr=1&stdin=1&stdout=1&stream=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/253/253 200 256 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6/wait?condition=not-running HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 304 178 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6/stop HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 6185 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/images/affineurs/dind:23-build/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 16459 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 404 326 - - ---- 2/2/0/0/0 0/0 "DELETE /v1.42/containers/runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-build-2?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/85/85 201 313 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/create?name=runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-build-2 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 28800 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/440/440 204 176 - - ---- 3/3/1/1/0 0/0 "POST /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384/start HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 4/4/1/1/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/30/30 200 268 - - ---- 4/4/1/1/0 0/0 "POST /v1.42/auth HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 4/4/1/1/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 5/5/1/1/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend/<NOSRV> 0/-1/-1/-1/0 403 189 - - PR-- 6/6/0/0/0 0/0 "POST /grpc HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 6/6/1/1/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 335 - - ---- 7/7/1/1/0 0/0 "HEAD /_ping HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/5/5 200 1039 - - ---- 7/7/1/1/0 0/0 "GET /v1.42/version HTTP/1.1" 
dockerfrontend/<NOSRV> 0/-1/-1/-1/0 403 189 - - PR-- 8/8/0/0/0 0/0 "POST /grpc HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/791 101 822 - - ---- 3/3/0/0/0 0/0 "POST /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384/attach?stderr=1&stdin=1&stdout=1&stream=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/211/211 200 256 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384/wait?condition=not-running HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 304 178 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384/stop HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 1886 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/images/registry.gitlab.com/gitlab-org/gitlab-runner/gitlab-runner-helper:x86_64-dcfb4b66/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 1886 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/images/sha256:16eed3dc21a621f6a6b1dfc9e4d1f891458ada8fc569eb679057867c2131d7d9/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/1 200 16459 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 404 332 - - ---- 2/2/0/0/0 0/0 "DELETE /v1.42/containers/runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-3?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/94/94 201 313 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/create?name=runner-vz6k6ahn-project-109-concurrent-0-530679e51b518c43-predefined-3 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/0 200 24618 - - ---- 2/2/0/0/0 0/0 "GET /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103/json HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/491/491 204 176 - - ---- 3/3/1/1/0 0/0 "POST /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103/start HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/0/587 101 117 - - ---- 3/3/0/0/0 0/0 "POST /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103/attach?stderr=1&stdin=1&stdout=1&stream=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/211/211 200 256 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103/wait?condition=not-running HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 304 178 - - ---- 2/2/0/0/0 0/0 "POST /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103/stop HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/2 200 16459 - - ---- 4/4/3/3/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/1/1 200 16459 - - ---- 4/4/2/2/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/3/3 200 16459 - - ---- 4/4/2/2/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/3/3 200 16459 - - ---- 4/4/2/2/0 0/0 "GET /v1.42/networks HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/15/15 204 176 - - ---- 4/4/3/3/0 0/0 "DELETE /v1.42/containers/9845069e00ce67b2dc2e3835e65eb8e8e317947c45c64c2850a98df63edd6103?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/15/15 204 176 - - ---- 4/4/2/2/0 0/0 "DELETE /v1.42/containers/38a69f4e4dd4ec07927b110c7b318f835bc89372edbbb791bea8b4360ad5d7a6?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/17/17 204 176 - - ---- 4/4/1/1/0 0/0 "DELETE /v1.42/containers/25f9c4354d894137670bb687cb57f2ec7f03d715b7749cc2f9e886e9d93ea7bf?force=1&v=1 HTTP/1.1" 
dockerfrontend dockerbackend/dockersocket 0/0/0/23/23 204 176 - - ---- 3/3/0/0/0 0/0 "DELETE /v1.42/containers/9f5c55d4f4a9f61c459d332129d9789c50b933a2b6f7ab43e3a14a012b789384?force=1&v=1 HTTP/1.1"

If you have any ideas.. Thanks !

Thomas

chessmango commented 1 year ago

Support for gRPC APIs was added here: https://github.com/Tecnativa/docker-socket-proxy/commit/08910fecaa85861e921ff219fb22e2efaef7001c

As a result, the :latest tag for this image doesn't contain this addition. However, there's a tag that's built against this repo's master branch: :edge - as mentioned here. Give that a go?

tboyer-idnum commented 1 year ago

@chessmango oh ! thanks a lot, you made my day :+1:

it was simple, next time I'll take a closer look at this release