我正在使用Anchore Engine(不是商业版本(,并试图在我的私有Docker Hub中扫描我的本地Docker镜像/docker镜像。
它遵循来自
INPUT_IMAGE: Input image can be in the following formats:
registry/repo:tag
运行此命令时的错误消息响应 anchore-cli add private-repo/image-name:tag
"Error: cannot fetch image digest/manifest from registry
HTTP Code: 400“
在这种情况下,你们能帮忙吗?多谢。
您需要首先将注册表添加到锚点引擎。使用以下命令添加专用注册表。
anchore-cli registry add <myrepo.example.com:5000> <username> <password>
然后使用您的命令将存储库添加到锚点。
Anchore具有扫描本地图像的功能Anchore Inline Scanning。虽然我没有亲自使用它,但查看文档表明本地扫描应该可以工作。
docker 文档中,您无法找到此 URL registry-1.docker.io
它是所有 docker 映像的 URL,包括 docker Hub 中私有存储库中的映像。您需要执行以下操作:
- 添加新注册表:
docker-compose exec anchore-engine anchore-cli registry add registry-1.docker.io <your_username> <your_password>
- 添加新映像
docker-compose exec anchore-engine anchore-cli image add registry-1.docker.io/<repo_name>:<tag>
。