使用 Trivy 扫描本地 docker 映像中的漏洞会导致未经授权

Man*_*mar 7 docker docker-registry trivy

我已将 docker 映像从私有存储库拉到本地,并尝试使用 trivy image 命令扫描本地映像。它正在拉取数据库,但显示访问本地映像时出现未经授权的错误

scan error: unable to initialize a scanner: unable to initialize a docker scanner: 3 errors occurred:
        * unable to inspect the image (index.docker.io/library/58625f3e2b28:latest): Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
        * unable to initialize Podman client: no podman socket found: stat podman/podman.sock: no such file or directory
        * GET https://index.docker.io/v2/library/58625f3e2b28/manifests/latest: UNAUTHORIZED: authentication required; [map[Action:pull Class: Name:library/58625f3e2b28 Type:repository]]
Run Code Online (Sandbox Code Playgroud)

Docker deamon 正在运行,镜像也在本地。Trivy 版本:0.22.0
我正在将 Trivy 作为 docker 容器运行,并使用以下命令扫描本地图像

docker run aquasec/trivy image <<imagename>>
Run Code Online (Sandbox Code Playgroud)

小智 9

官方文档指出,如果您想在主机上扫描图像,则必须安装 Docker 套接字。

该命令将如下所示:

docker run -v /var/run/docker.sock:/var/run/docker.sock aquasec/trivy image <<imagename>>
Run Code Online (Sandbox Code Playgroud)