찾다

 >  Q&A  >  본문

docker删除仓库中的镜像问题

配置文件挂载到本地的宿主机了

docker run -d -p 6000:5000 --restart=always --name registry -v `pwd`/config.yml:/etc/docker/registry/config.yml registry:2

修改过配置文件

查看仓库中的镜像信息

 curl -X GET http://127.0.0.1:6000/v2/_catalog
{"repositories":["myfirstimage","myfirstimage_2","myfirstimage_3"]}

获取digest值

curl  -I -X GET http://127.0.0.1:6000/v2/myfirstimage/manifests/latest                                                                 
HTTP/1.1 200 OK
Content-Length: 5559
Content-Type: application/vnd.docker.distribution.manifest.v1+prettyjws
Docker-Content-Digest: sha256:3a07b4e06c73b2e3924008270c7f3c3c6e3f70d4dbb814ad8bff2697123ca33c
Docker-Distribution-Api-Version: registry/2.0
Etag: "sha256:3a07b4e06c73b2e3924008270c7f3c3c6e3f70d4dbb814ad8bff2697123ca33c"
X-Content-Type-Options: nosniff
Date: Sun, 31 Jul 2016 11:09:22 GMT

删除测试

curl  -X DELETE http://127.0.0.1:6000/v2/myfirstimage/manifests/sha256:3a07b4e06c73b2e3924008270c7f3c3c6e3f70d4dbb814ad8bff2697123ca33c
{"errors":[{"code":"MANIFEST_UNKNOWN","message":"manifest unknown"}]}

删除失败,这是为咋的

巴扎黑巴扎黑2774일 전942

모든 응답(2)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-04-24 16:02:51

    문제는 digest을 얻는 단계에 있습니다. 레지스트리 2.3 이상 버전에서는 실수로 삭제되는 것을 방지하기 위해 digest:

    을 가져올 때 특수 헤더를 제공해야 합니다. 으아아아

    그렇지 않으면 잘못된 digest이 반환됩니다. 따라서 digest을 취하는 서술문은 다음과 같은 형식이어야 합니다.

    으아아아

    이렇게 얻은 digest이 맞습니다.

    공식 문서를 참고하세요: https://docs.docker.com/regis...

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-24 16:02:51

    docker run -d -p 6000:5000 --restart=always --name Registry6 -v pwd/config.yml:/etc/docker/registry/config.yml docker.io/registry:2.5.0

    오류: 37ba01d64aec14577e9e55ea2b2bfc4487eb070fad1b1c40e76e7cbddc916e6a
    /usr/bin/docker-current: 데몬의 오류 응답: 잘못된 헤더 필드 값 "oci 런타임 오류: Container_linux.go:247: 컨테이너 프로세스 시작으로 인해 "process_linux.go:359 : 컨테이너 초기화로 인해 "rootfs_linux.go:54: \"/root/config.yml\"을 rootfs \"/var/lib/docker/devicemapper/mnt/2e35c587d0e8ff8ac8811a58b23cd3a489ff04b4eaa47b3d25fda2bd46b7646b/rootfs\"(\"/var/lib/에 마운트)로 인해 발생했습니다. / devicemapper/mnt/2e35c587d0e8ff8ac8811a58b23cd3a489ff04b4eaa47b3d25fda2bd46b7646b/rootfs/etc/docker/registry/config.yml\"으로 인해 \"디렉토리가 아님\"""n"이 발생했습니다.
    무슨 일이야? ? config.yml도 수정하고 싶습니다. 조언 부탁드립니다

    회신하다
    0
  • 취소회신하다