将 Docker Scout 与环境集成
您可以将 Docker Scout 与您的运行时环境集成,从而获取正在运行的工作负载的洞察信息。 这为您提供了已部署制品的安全状态的实时视图。
Docker Scout 允许您定义多个环境,并将镜像分配到不同的环境中。这使您能够全面了解软件供应链,并查看和比较各环境之间的差异,例如预发环境与生产环境之间的差异。
您可以自行定义和命名您的环境。您可以使用对您有意义的模式,并与您交付应用程序的方式相匹配。
分配到环境
每个环境包含对多个镜像的引用。这些引用代表在该特定环境中当前正在运行的容器。
例如,假设您在生产环境中运行 myorg/webapp:3.1,您可以将该标签分配给您的 production 环境。您可能在预发布环境中运行同一镜像的不同版本,此时可将该版本的镜像分配给 staging 环境。
要向 Docker Scout 添加环境,您可以:
- 使用
docker scout env <environment> <image>CLI 命令手动将镜像记录到环境中 - 启用运行时集成,以自动检测您环境中的镜像。
Docker Scout 支持以下运行时集成:
注意
仅组织所有者可以创建新环境并设置集成。 此外,Docker Scout 仅在镜像 已分析(无论是手动分析还是通过 镜像仓库集成)的情况下,才将其分配给某个环境。
列出环境
要查看某个组织的所有可用环境,您可以使用
docker scout env 命令。
$ docker scout env
默认情况下,此命令会打印您个人 Docker 组织下的所有环境。
若要列出您所属的其他组织的环境,请使用
-o 或 --org 标志(注:原内容中的 --org 应为笔误,通常为 -o 或 --org)。
$ docker scout env --org <org>
您可以使用 docker scout config 命令来更改默认组织。这将更改所有 docker scout 命令的默认组织,而不仅限于 env。
$ docker scout config organization <org>
在不同环境之间进行比较
将镜像分配给环境,可让您对不同环境之间及环境内部进行对比。这对于 GitHub 拉取请求(pull requests)等场景非常有用,例如将 PR 中代码构建出的镜像与暂存环境或生产环境中的对应镜像进行比较。
您还可以使用 --to-env 标志与流进行比较,该标志用于
docker scout compare
CLI 命令:
$ docker scout compare --to-env production myorg/webapp:latest
查看环境的镜像
要查看某个环境的镜像:
- 前往 Docker Scout 仪表板中的 镜像页面。
- 打开 环境 下拉菜单。
- 请选择您想要查看的环境。
该列表显示所有已分配至所选环境的镜像。如果您在某个环境中部署了同一镜像的多个版本,那么该镜像的所有版本都将显示在列表中。
或者,您可以使用 docker scout env 命令在终端中查看镜像。
$ docker scout env production
docker/scout-demo-service:main@sha256:ef08dca54c4f371e7ea090914f503982e890ec81d22fd29aa3b012351a44e1bc
镜像标签不匹配
当您在镜像选项卡中选择了环境后,列表中的标签表示用于部署该镜像的标签。标签是可变的,即您可以更改标签所指向的镜像摘要。如果Docker Scout检测到某个标签指向过期的摘要,则会在镜像名称旁显示警告图标。