在使用containerd运行的Kubernetes(AKS 1.19.0)上不使用docker构建Dockerfile

在使用containerd运行的Kubernetes(AKS 1.19.0)上不使用docker构建Dockerfile,docker,kubernetes,azure-aks,containerd,Docker,Kubernetes,Azure Aks,Containerd,我有Azure devops管道,在AKS上构建dockerfile,因为AKS不推荐docker的最新版本,请建议在AKS集群上构建dockerfile而不使用docker的最佳实践。 探索Kaniko,buildah在没有docker的情况下建造..一切都没有改变。您仍然可以在开发人员或CI系统上使用docker build和docker push来构建docker映像并将其推送到存储库。唯一的区别是,在Kubernetes集群中使用Docker作为容器后端不再是一个受支持的选项,但这是一个

我有Azure devops管道,在AKS上构建dockerfile,因为AKS不推荐docker的最新版本,请建议在AKS集群上构建dockerfile而不使用docker的最佳实践。
探索Kaniko,buildah在没有docker的情况下建造..

一切都没有改变。您仍然可以在开发人员或CI系统上使用
docker build
docker push
来构建docker映像并将其推送到存储库。唯一的区别是,在Kubernetes集群中使用Docker作为容器后端不再是一个受支持的选项,但这是一个低级管理员级别的决定,应用程序不知道也不关心。

没有任何变化。您仍然可以在开发人员或CI系统上使用
docker build
docker push
来构建docker映像并将其推送到存储库。唯一的区别是,在Kubernetes集群中使用Docker作为容器后端不再是一个受支持的选项,但这是一个低级管理员级别的决定,应用程序不知道也不关心。

除非您在Kubernetes集群中以某种方式使用主机Docker套接字进行构建,此更改不会影响您。如果您在KubNeNETs集群中从主机上安装DockSocket,我会考虑您想修复的安全问题。

Docker Desktop将Docker引擎作为containerd上的容器运行,允许开发人员在该环境中构建和运行容器。在容器中运行docker引擎的DinD构建模式也可以实现类似的功能,区别在于底层的容器管理工具是containerd,而不是完整的docker引擎,但是容器化的docker引擎对此并不关心


作为在完整docker引擎中构建的替代方案,我建议查看从20.10开始docker中当前的默认构建工具。它使用containerd,并且它们将一个直接在kubernetes中作为独立构建器运行构建。

除非您在kubernetes集群中以某种方式使用主机docker套接字进行构建,否则此更改不会影响您。如果您在KubNeNETs集群中从主机上安装DockSocket,我会考虑您想修复的安全问题。

Docker Desktop将Docker引擎作为containerd上的容器运行,允许开发人员在该环境中构建和运行容器。在容器中运行docker引擎的DinD构建模式也可以实现类似的功能,区别在于底层的容器管理工具是containerd,而不是完整的docker引擎,但是容器化的docker引擎对此并不关心


作为在完整docker引擎中构建的替代方案,我建议查看从20.10开始docker中当前的默认构建工具。它使用containerd,他们直接在kubernetes中作为独立的构建者来运行构建。

kaniko可以工作,我认为tekton也可以这样做kaniko也可以工作,我认为tekton也可以这样做