将 Docker Scout 与环境集成
您可以将 Docker Scout 与运行时环境集成,获取运行中工作负载的洞察。这为您提供了已部署 Artifacts 的实时安全状态视图。
Docker Scout 允许您定义多个环境,并将镜像分配给不同的环境。这为您提供了软件供应链的完整概览,并允许您查看和比较环境之间的差异(例如,预发布环境和生产环境)。
如何定义和命名您的环境取决于您自己。您可以使用对您有意义且与您交付应用程序方式相匹配的模式。
分配给环境
每个环境都包含对多个镜像的引用。这些引用代表在该特定环境中当前运行的容器。
例如,假设您在生产环境中运行 myorg/webapp:3.1
,您可以将该标签分配给您的 生产环境
。您可能在预发布环境(staging)中运行同一镜像的不同版本,在这种情况下,您可以将该版本的镜像分配给 预发布环境
。
要将环境添加到 Docker Scout,您可以:
- 使用
docker scout env <environment> <image>
CLI 命令手动将镜像记录到环境中 - 启用运行时集成以自动检测环境中的镜像。
Docker Scout 支持以下运行时集成:
注意
只有组织所有者才能创建新环境和设置集成。此外,只有当镜像已被分析(无论是手动分析还是通过registry 集成分析)后,Docker Scout 才会将镜像分配给环境。
列出环境
要查看组织的所有可用环境,您可以使用 docker scout env
命令。
$ docker scout env
默认情况下,这将打印您的个人 Docker 组织的所有环境。要列出您所属的其他组织的环境,请使用 --org
标志。
$ docker scout env --org <org>
您可以使用 docker scout config
命令更改默认组织。这将更改所有 docker scout
命令的默认组织,而不仅仅是 env
。
$ docker scout config organization <org>
环境间比较
将镜像分配给环境使您能够与环境进行比较,并在环境之间进行比较。这对于 GitHub pull request 等场景非常有用,例如比较 PR 中的代码构建的镜像与预发布环境或生产环境中的对应镜像。
您还可以使用 docker scout compare
CLI 命令上的 --to-env
标志与流进行比较。
$ 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 检测到标签引用的是过时的摘要,则会在镜像名称旁边显示一个警告图标。