返回到文章

采纳

编辑于 3年前

Kaniko中文教程

kaniko

Kaniko - 更安全可靠的方式在Kubernetes内构建容器镜像

Kaniko

kaniko是一个在容器或Kubernetes内从Dockerfile构建容器镜像的工具。

kaniko不依赖Docker守护进程,完全在用户空间执行Docker文件中的每个命令。这使得在不能轻易或安全地运行Docker守护进程的环境中构建容器镜像,例如标准的Kubernetes集群。

kaniko是要作为一个镜像来运行:gcr.io/kaniko-project/executor。我们不建议在其他镜像中运行kaniko二进制文件,因为可能无法工作。

Kaniko是如何工作的?

kaniko executor(执行器)镜像负责从 Dockerfile 构建镜像并将其推送到registry。在执行器镜像中,我们提取了基础镜像的文件系统(Dockerfile 中的 FROM 镜像)。 然后我们执行 Dockerfile 中的命令,在每个命令之后在用户空间中对文件系统进行快照。 在每个命令之后,我们将一层更改的文件附加到基础图像(如果有的话)并更新镜像元数据。

已知问题(Known Issues)

  • kaniko不支持构建Windows容器
  • 不支持在官方kaniko镜像以外的任何Docker镜像中运行kaniko(即YMMV)。
    • 这包括将官方镜像中的kaniko可执行文件复制到另一个镜像中。
  • kaniko不支持v1版registry API(Registry v1 API 已弃用)。

教程

要使用 kaniko 构建和推送镜像,需要:

  1. 使用本地存储的kaniko的快速入门例子,参考入门教程