确定Docker映像是有符号还是无符号
我通读了Docker Content Trust的文档,并且遇到了一些问题。 我启动docker没有启用DCT和部署一些图像。 然后我决定启用DCT,以便我只能继续部署签名的图像。 未签名的已经部署的将会发生什么? 他们会继续运行吗?
我可以以某种方式确定(在容器和主机中的应用程序内),如果运行的图像是有符号或无符号的?
这是DCT的文档
未签名的已经部署的将会发生什么? 他们会继续运行吗?
如果您拖放的Docker内容信任closures的图像,然后打开泊坞窗内容信任,现有的图像/容器将不会发生任何事情。
内容信任操作是100%的docker客户端实现。 守护进程并不真正知道也不关心图像是否被签名。
如果启用了Docker内容信任,并执行拉取,创build或运行,则客户端将查找信任数据并find已签名图像的sha256摘要。 守护进程接着被告知它正在执行该摘要的拉/创build/运行。
我可以以某种方式确定(在容器和主机中的应用程序内),如果运行的图像是有符号或无符号的?
一般来说,从容器内部,很less暴露。 您不能返回图像名称,容器名称,甚至是发布的端口。 即使可以,守护进程对映像签名也是盲目的,只知道已经被告知运行特定的摘要。
在主机上,您可以确定正在运行的容器是否正在使用已签名的映像,但不会简单地列在“docker images”或“docker ps”中。 您将不得不将图像与信任数据进行比较。 没有一个预先制作的UI组件可以帮助我知道。
有一点要记住,签名可以更新。 说我正在运行Ubuntu的14.04,这是一个签名的图像。 我的容器已经启动,一切正常。 ubuntu:14.04影像迟早会被更新,新的信任数据将随着影像的更新而发布。 现在,我的容器有一个过时的图像。 下次我去做docker pull / create / run时,会得到更新后的信任数据,我会得到更新的图像。 DCT保证的一部分是新鲜度。
- Docker,Jenkins和Rails – 在典型的Rails堆栈上运行规范的设置
- 为什么这个刷新标记请求auth.docker.io返回一个404?
- 当我打算扩展mysql docker镜像时,我无法添加我自己的入口点shell
- 我怎么才能创build一个数据容器只有使用docker-compose.yml?
- 如何在Docker上运行Spark?
- Docker Windows Containers创build未知的l2bridgenetworking
- 如何使用Jenkins Pipeline插件启用SCM轮询
- 从ECR托pipe的Docker镜像创buildEC2最简单的方法是什么?
- 如何使用docker-compose容器化这个应用程序