加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Docker允许构建、运行、拉

发布时间:2021-05-26 13:42:43 所属栏目:教程 来源:互联网
导读:对于已经用了很久docker的人,可能需要花费些功夫去说服自己去考虑转换使用不同的工具。 Docker是一个庞大单一的工具,它尝试做任何事,但通常没有用最好的方法

不过,根据笔者的个人经验,同时使用Kaniko和Buildah在Kubernetes/OpenShift集群中构建镜像,笔者认为两者都可以很好地完成工作,但是使用Kaniko时,笔者看到了一些随机的构建崩溃,并且在将镜像推送到注册表时失败了。

Docker的第三个竞争者是buildkit,也可以称为下一代docker build。它是Moby项目的一部分(与Docker一样),可以使用DOCKER_BUILDKIT = 1 dockerbuild作为实验特性启用Docker。

它引入了许多改进和功能,包括并行构建步骤、跳过未使用的阶段、更好的增量构建和无根构建。但另一方面,它仍然需要运行守护程序(buildkitd)。因此,如果不想摆脱Docker,但是想要一些新功能和不错的改进,那么使用buildkit可能是理想选择。

除此之外,还有一些值得一提的内容,但不是笔者的最佳选择:

Source-To-Image(S2I)是一个工具包,可直接从源代码构建镜像,而无需Dockerfile。该工具非常适合简单的预期场景和工作流程,但如果不需要太多自定义或项目的布局不理想,那么它很快就会变得笨拙。如果对Docker不太有把握,或者在OpenShift集群上构建镜像,则可以考虑使用S2I,因为使用S2I进行构建是内置功能。

Jib是Google的另一种工具,专门用于构建Java镜像。它包括Maven和Gradle插件,可以轻松构建镜像而不会扰乱Dockerfile。

最后是Bazel,它是Google的另一种工具,不仅用于构建容器镜像,而且是一个完整的构建系统。如果只想构建镜像,那么钻研Bazel可能会有些过头,但绝对会是一种不错的学习体验。

(编辑:厦门网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读