curl로 docker pull하기

1 개요[ | ]

curl로 docker pull하기
curl로 docker image 다운로드하기

2 사전작업[ | ]

로컬 레지스트리 구동
testuser@localhost:~$ sudo mkdir -p /data
testuser@localhost:~$ docker run -d --name=registry -p 5000:5000 -v /data:/var/lib/registry registry:latest
...
Status: Downloaded newer image for registry:latest
테스트용 이미지 푸시
testuser@localhost:~$ docker pull docker.io/bash:latest
...
testuser@localhost:~$ docker tag docker.io/bash:latest localhost:5000/bash:latest
testuser@localhost:~$ docker push localhost:5000/bash:latest
The push refers to repository [localhost:5000/bash]
650864124fb4: Pushed
0f9d26f2773f: Pushed
34d5ebaa5410: Pushed
latest: digest: sha256:455b3939918fed2ed3359570ed8d049dfbfd2174dd6a9be29103dcb705bc1f94 size: 946

3 manifest 다운로드[ | ]

testuser@localhost:~$ curl -s localhost:5000/v2/bash/manifests/latest -H "Accept: application/vnd.docker.distribution.manifest.v2+json" > manifest.json
testuser@localhost:~$ cat manifest.json
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
   "config": {
      "mediaType": "application/vnd.docker.container.image.v1+json",
      "size": 5706,
      "digest": "sha256:58c36729bafd73cc87ba991868f12d21b42a8dce20e6037e2ec642d66f1fe4f1"
   },
   "layers": [
      {
         "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
         "size": 2823512,
         "digest": "sha256:9621f1afde84053b2f9b6ff34fc7f7460712247c01cbab483c5fa7132cf782ca"
      },
      {
         "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
         "size": 2625009,
         "digest": "sha256:036cbbed31189b3686b98872d55d31c74ce571df257b35a751f7ed460235c609"
      },
      {
         "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
         "size": 337,
         "digest": "sha256:26d0ad845f0ca19daaf4c78a17c58b45be9ed42209ca9cecd6d9b4a5dee06eaa"
      }
   ]
}

4 config & blobs 다운로드[ | ]

5 같이 보기[ | ]

6 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}