我经常读到这两个概念是完全不同的,但我找不到一个很好的解释来解释差异所在。两者都捆绑了依赖关系,并限制了与外部世界的对话。
我应该在什么时候将我的应用程序打包到容器中进行部署?什么时候封装的包更可取?
发布于 2016-07-07 17:14:09
Flatpack提供了其FAQ includes的线索
是一种容器技术吗?
它可以是,但它不一定是。由于桌面应用程序在容器内运行时需要进行大量的更改才能使用,因此您可能会看到Flatpak在早期主要作为一种方便的库捆绑技术部署,随着时间的推移,大多数应用程序会逐步采用沙箱或容器化。
一般来说,尽管我们在谈到Flatpak时尽量避免使用容器一词,因为它往往会导致与Docker和Rocket的比较,由于这些技术试图解决的非常不同的问题空间,很快就停止了技术意义。因此,我们更喜欢使用术语沙箱。
Flatpak是否与Linux绑定?
是。我们显式地使用linux内核的许多特性(绑定挂载、名称空间、seccomp等)来创建运行Flatpak应用程序的沙箱。在其他内核上使用相同的技术可能是可能的,但这将是一项不平凡的工作,我们不认为这是我们的优先事项之一。
容器的目标是在任何实现runc/containerd协议的系统上提供隔离,很快就会出现在Windows和Linux上。
这与软件打包格式不同,后者与操作系统紧密相关。
https://stackoverflow.com/questions/38240886
复制相似问题