【Docker学习】docker run的--annotation选项

--annotation选项

作用:这是在Docker的api1.43+提供的一个功能,向容器添加一个注解(传递给OCI运行时)。

官方网站的文档对--annotation选项惜墨如金,没有用例,也没有过多解释。因此想要学到这个选项的实际作用,还要自己来。

要想了解这个选项的用法,还要先了解OCI运行时。

OCI运行时

全称是Open Container Initiative,直译为开放容器倡议,相当于是针对容器开源的一个标准。官网是开放容器倡议 - 开放容器倡议 (opencontainers.org)。以下是官网直译:


开放容器倡议(Open Container Initiative,OCI)是一个轻量级的、开放式的治理结构(项目),在Linux基金会的支持下成立,专门用于创建围绕容器格式和运行时的开放行业标准。OCI于2015年6月22日由Docker、CoreOS以及容器行业的其他领导者共同发起。

OCI目前包含三个规范:运行时规范(runtime-spec)、镜像规范(image-spec)和分发规范(distribution-spec)。运行时规范概述了如何运行一个在磁盘上解包的“文件系统包”。在较高层面上,OCI实现会下载一个OCI镜像,然后将该镜像解包成一个OCI运行时文件系统包。此时,OCI运行时包将由OCI运行时执行。

这个整个工作流程应该支持用户从容器引擎如Docker和rkt中期望的UX:主要是能够不带任何额外参数运行一个镜像:

docker run example.com/org/app:v1.0.0<br>rkt run example.com/org/app,version=v1.0.0

为了支持这种UX,OCI镜像格式包含足够的信息来在目标平台上启动应用程序(例如命令、参数、环境变量等)。此规范定义了如何创建OCI镜像,这通常由构建系统完成,并输出镜像清单、文件系统(层)序列化以及镜像配置。在较高层面上,镜像清单包含关于镜像内容和依赖关系的元数据,包括一个或多个文件系统序列化存档的内容可寻址身份,这些存档将被解包以构成最终的可运行文件系统。镜像配置包括应用程序参数、环境等信息。镜像清单、镜像配置和一个或多个文件系统序列化的组合称为OCI镜像。

Docker将其容器格式和运行时runC捐赠给OCI,作为这一新努力的基石。您现在可以在GitHub - opencontainers/runc: CLI tool for spawning and running cont

上一篇:如何在WordPress中设置网站的SEO标题和描述


下一篇:TiDB 利用binlog 恢复-反解析binlog