You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At Gitlab CI, when docker-dind service used, docker pull ... command works, while await docker.images.pull(...) does not.
Expected behaviour: await docker.images.pull("playpauseandstop/docker-python:3.2.0-py38") works as well as docker pull -q playpauseandstop/docker-python:3.2.0-py38
Actual behaviour: DockerError(404, "page not found")
How to reproduce
I have a project, which uses aiodocker and want to test it at Gitlab CI.
$ docker pull -q playpauseandstop/docker-python:3.2.0-py38
docker.io/playpauseandstop/docker-python:3.2.0-py38
$ ${MAKE} test-only
DOCKER_IMAGE=playpauseandstop/docker-python:3.2.0-py38 poetry run python ./scripts/prepare-image.py
2020-05-17 13:33:13,133 [ERROR:scripts.prepare-image] Unable to pull docker image 'playpauseandstop/docker-python:3.2.0-py38'
Traceback (most recent call last):
File "./scripts/prepare-image.py", line 19, in main
await docker.images.pull(image)
File "/builds/group/project/.venv/lib/python3.8/site-packages/aiodocker/images.py", line 133, in _handle_list
async with cm as response:
File "/builds/group/project/.venv/lib/python3.8/site-packages/aiodocker/utils.py", line 309, in __aenter__
resp = await self._coro
File "/builds/group/project/.venv/lib/python3.8/site-packages/aiodocker/docker.py", line 264, in _do_query
raise DockerError(response.status, json.loads(what.decode("utf8")))
aiodocker.exceptions.DockerError: DockerError(404, 'page not found')
make: *** [Makefile:40: prepare-image-only] Error 1
I'm reusing same env vars between test.script[0] & test.script[1],
DOCKER_HOST
DOCKER_TLS_VERIFY
DOCKER_CERT_PATH
And not sure why it results in "page not found" error. Any ideas on what I'm missing?
Thanks in advance.
ps. At localhost, everything works fine.
Your environment
Gitlab Runner: 12.10.2
Docker Service: docker:19.03.8-dind
Python Version: 3.8.2
The text was updated successfully, but these errors were encountered:
playpauseandstop
changed the title
Connection issues, when using docker-dind service in Gitlab CI
Connection issues, when using docker-dind service at Gitlab CI
May 17, 2020
Long story short
At Gitlab CI, when
docker-dind
service used,docker pull ...
command works, whileawait docker.images.pull(...)
does not.await docker.images.pull("playpauseandstop/docker-python:3.2.0-py38")
works as well asdocker pull -q playpauseandstop/docker-python:3.2.0-py38
DockerError(404, "page not found")
How to reproduce
I have a project, which uses
aiodocker
and want to test it at Gitlab CI.For achieving that, I'm trying to use docker-dind service with TLS enabled, as described in docs. However I'm unable to do requests to the docker from
aiodocker
, cause all them ends withDockerError(404, "page not found")
error.In same time
docker ...
commands executes well within same Gitlab CI job.Test Job definition
It makes me wonder, why script below works (
test.script[0]
),When next code does not (inside of
test.script[1]
),Full output of
test.script
,I'm reusing same env vars between
test.script[0]
&test.script[1]
,DOCKER_HOST
DOCKER_TLS_VERIFY
DOCKER_CERT_PATH
And not sure why it results in
"page not found"
error. Any ideas on what I'm missing?Thanks in advance.
ps. At localhost, everything works fine.
Your environment
docker:19.03.8-dind
The text was updated successfully, but these errors were encountered: