了解Docker最佳实践

了解Docker最佳实践,docker,Docker,我知道Docker是一个充满各种可能性的全新世界,这些可能性在网络上得到了很好的展示,但随着这些新的选择,我想知道的是新的风险。解决这些风险的最佳实践是经验带来的一件事,但由于我缺乏这方面的经验 以下是应用程序dockerization的几个方面,这些方面会根据实施选择带来风险: 1。形象专业化和产业化 我理解,运行Docker应用程序意味着两个部分: 不变的部分:码头工人形象 可变部分:所有用户添加的文件和元数据 我的问题是:为特定部署(客户、环境、配置)专门化映像的正确方法是什么?在何处

我知道Docker是一个充满各种可能性的全新世界,这些可能性在网络上得到了很好的展示,但随着这些新的选择,我想知道的是新的风险。解决这些风险的最佳实践是经验带来的一件事,但由于我缺乏这方面的经验

以下是应用程序dockerization的几个方面,这些方面会根据实施选择带来风险:

1。形象专业化和产业化

我理解,运行Docker应用程序意味着两个部分:

  • 不变的部分:码头工人形象
  • 可变部分:所有用户添加的文件和元数据
我的问题是:为特定部署(客户、环境、配置)专门化映像的正确方法是什么?在何处存储可变部件以确保更高的进化性和隔离/安全性

2。应用程序生命周期管理

假设我开发了MyApplication的Docker映像

  • 在某个时候,我部署了v1,它将使用特定的用户添加的文件和存储在Docker容器中的元数据生存一段时间
  • 在某个时候,我完成了v2开发,我想更新我现有的v1
考虑到这一点,什么是正确的程序/设计/实践来确保干净、方便的迁移

  • 我的映像v2可能需要比v1更多的参数
  • 我希望保留所有用户添加的文件或元数据
3。多容器通信和安全性

我想使用安全的容器间通信设置多容器部署

  • 处理所有这些容器之间的网络流的正确方法是什么
  • 因为我想设置x509证书,CN必须匹配主机名。。。如何处理所有这些容器
  • Docker能否处理某种VLAN来定义多组容器之间的安全层

谢谢

对于
Docker能否处理某种类型的VLAN来定义多组容器之间的安全层?
请参阅和VonC的答案,这个问题很难回答-这不是一个问题,而且它确实非常广泛/基于观点。请看看什么是好问题。我建议缩小一个具体问题的范围,并提出这个问题——尽量避开基于意见的答案。谢谢你的评论。在我看来,有很多方法可以达到这个结果,但是没有那么多的选择可以聚集最多的赞成者和较少的反对者。如果不是在这里,我会在某个地方找到答案,我会提供它们。关于第一点,我想我现在有了答案:容器中的数据量。关于第二点我还不确定,但我将深入挖掘Docker compose第三点的网络功能。对于
Docker能否处理某种VLAN来定义多组容器之间的安全层?
请参见和,VonC的答案这个问题很难回答-这不是一个问题,而且它真的很广泛/基于观点。请看看什么是好问题。我建议缩小一个具体问题的范围,并提出这个问题——尽量避开基于意见的答案。谢谢你的评论。在我看来,有很多方法可以达到这个结果,但是没有那么多的选择可以聚集最多的赞成者和较少的反对者。如果不是在这里,我会在某个地方找到答案,我会提供它们。关于第一点,我想我现在有了答案:容器中的数据量。关于第二点我还不确定,但我将深入挖掘Docker compose第三点的网络功能。