Project

Profile

Help

Issue #5385

no content after docker remote sync

Added by jaymzh about 2 years ago. Updated almost 2 years ago.

Status:
CLOSED - WORKSFORME
Priority:
Normal
Assignee:
-
Sprint/Milestone:
-
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Platform Release:
OS:
Triaged:
No
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

I've sync'd a docker remote repo and added it to distro:

/pulp/api/v3/distributions/docker/docker/d424b0a5-5580-4443-a15e-f711e753ceb6/

the name of the distro is test-docker and the base_path is docker/test. The syncing task completed. Yet I cannot on the content server get any content. I've tried the following urls on port 24816

/pulp/content/test-docker/
/pulp/content/docker/test/
/pulp/content/test-docker/$repo
/pulp/content/docker/test/$repo

and they all give me 404s.

History

#1 Updated by jaymzh about 2 years ago

It was pointed out to me that these are at a different path (/v2/base_path/blobs/) but that's ALSO not working.

I ALSO tried using docker pull:

$ docker pull 10.224.41.73:24816/docker/test Using default tag: latest Error response from daemon: error parsing HTTP 404 response body: invalid character ':' after top-level value: "404: Not Found"

#2 Updated by ipanova@redhat.com about 2 years ago

Hi, thank you for the bug report. Make sure that your distribution was created with correct details. Here's a distribution created with same name and base_pat you mentioned

$ http GET http://localhost:24817/pulp/api/v3/distributions/docker/docker/e5a0d329-c165-47c8-b860-35588688b4be/
HTTP/1.1 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Connection: close
Content-Length: 350
Content-Type: application/json
Date: Thu, 05 Sep 2019 09:27:01 GMT
Server: gunicorn/19.9.0
Vary: Accept, Cookie
X-Frame-Options: SAMEORIGIN

{
    "_created": "2019-09-05T09:26:43.080243Z",
    "_href": "/pulp/api/v3/distributions/docker/docker/e5a0d329-c165-47c8-b860-35588688b4be/",
    "base_path": "docker/test",
    "content_guard": null,
    "name": "test-docker",
    "registry_path": "localhost:24816/docker/test",
    "repository": "/pulp/api/v3/repositories/f0af12f3-ee51-41a2-9071-b96bd5a1a840/",
    "repository_version": null
}

If you don't specify any tag when performing docker pull it would try to pull latest tag, but not all of the repositories have it:

$ sudo docker  pull localhost:24816/docker/test
Using default tag: latest
Trying to pull repository localhost:24816/docker/test ... 
Pulling repository localhost:24816/docker/test
Error: image docker/test:latest not found
(pulp) [vagrant@pulp3-source-fedora29 ~]$ sudo docker  pull localhost:24816/docker/test:manifest_a
Trying to pull repository localhost:24816/docker/test ... 
sha256:21e3caae28758329318c8a868a80daa37ad8851705155fc28767852c73d36af5: Pulling from localhost:24816/docker/test
Digest: sha256:21e3caae28758329318c8a868a80daa37ad8851705155fc28767852c73d36af5
Status: Downloaded newer image for localhost:24816/docker/test:manifest_a
(pulp) [vagrant@pulp3-source-fedora29 ~]$ sudo docker pull localhost:24816/docker/test:manifest_a
Trying to pull repository localhost:24816/docker/test ... 
sha256:21e3caae28758329318c8a868a80daa37ad8851705155fc28767852c73d36af5: Pulling from localhost:24816/docker/test
Digest: sha256:21e3caae28758329318c8a868a80daa37ad8851705155fc28767852c73d36af5
Status: Image is up to date for localhost:24816/docker/test:manifest_a

If you want to talk through API you should follow standard api endpoints specified in docker api spec https://docs.docker.com/registry/spec/api/

$ http http://localhost:24816/v2/docker/test/tags/list
HTTP/1.1 200 OK
Content-Length: 139
Content-Type: application/json; charset=utf-8
Date: Thu, 05 Sep 2019 09:32:17 GMT
Server: Python/3.7 aiohttp/3.5.4

{
    "name": "docker/test",
    "tags": [
        "ml_iii",
        "manifest_a",
        "manifest_c",
        "ml_iv",
        "ml_ii",
        "ml_i",
        "manifest_d",
        "manifest_b",
        "manifest_e"
    ]
}

Please re-try and let me know if the issue persists. Thank you.

#3 Updated by ipanova@redhat.com about 2 years ago

  • Status changed from NEW to CLOSED - WORKSFORME

please re-open it you hit it again.

#4 Updated by ipanova@redhat.com almost 2 years ago

  • Project changed from Docker Support to Container Support

Please register to edit this issue

Also available in: Atom PDF