地  址:江苏省南京市玄武区玄武湖
电  话:4008-888-888
邮  箱:9490489@qq.com
商  务QQ:546361220
免费申请个人网站:利用Docker时应该防止这10 件事…
作者:管理员    发布于:2020-05-29 07:10   文字:【】【】【
利用Docker时应该防止这10 件事… 容器能够解决大量问题,而且具有诸多上风,当你投身其间时便会发现其玄妙所在。

容器能够解决大量问题,而且具有诸多上风,当你投身其间时便会发现其玄妙所在。

第一:容器是不可变的 - 操作体系,库版本,配置,文件夹和应用程序都包装在容器内。 您能够利用经过同样QA测试的影象,使产物具有同样的体现。

第二: 容器是轻量级的 - 容器的内存占用很小。没有成千盈百的MB,容器只会调配主步调的内存。

第三: 容器是疾速的 - 你能够像一个典型的linux步调一样疾速启动一个容器。只要要几秒钟,您就能启动一个新的容器。

然而,许多用户依然像对待典型的虚构机那样对待容器。他们仿佛都忘怀了容器的重要特性:容器是一次性的。

容器的制度:

容器是暂时的 。

这个特性迫利用户扭转办理和治理容器的心态;我将会向你讲解在容器中不该该做的那些事,以包管容器能够施展出最佳效果:

1) 不要将数据存储在容器中 - 容器能够被静止,毁掉或者更换。 在容器中运转的应用程序版本1.0很轻易被1.1版本更换而不会发生任何影响或数据丢掉。 因而,如果您需要存储数据,请在卷中进行。 固然在这种状况下,您还应该注意,如果两个容器在同样的卷上写入数据,有可能会导致败坏。 请包管您的应用程序被设计为写入同享数据存储。

2)不要将应用程序分红两个局部 -有些人以为容器像虚构机,大大都人往往以为他们应该将应用程序布置到现有的运转容器中。 在开发阶段这样是能够的,您需要接连布置和调试;但关于接连交给(CD)管道到QA和产物,您的应用程序应该是映像的一部

3)不要创立大影象 - 大图画将更难分发。 包管您仅具有运转应用程序/步调所需的文件和库。 不要装配没必要要的包或运转 更新 (yum更新) ,下载许多文件到一个新的图画层。

4)不要利用单层影象 - 要有用地利用分层文件体系,一直为您的操作体系创立您本人的根本影象层, 用户名界说的为一个图层, 运转时装配的为一个图层,配置的为一个图层,最后为您的应用程序成立一个层。 这样将更易从头创立,治理和分发您的图画。

5)不要从正在运转的容器中创立影象  换句话说,不要利用 docker mit 创立影象。 这种创立图画的办法不可重现,应该彻底防止。 一直利用Dockerfile或任何别的彻底可反复的S2I(源图画)的办法,如果将它存储在源代码管束存储库(git)中,您能够盯梢对Dockerfile的更改。

6)不要只利用 最新 标签 - 最新标签就像 Maven用户快照 。 基于容器分层文件体系的性子,标签实践上是被鼓励利用的,你应该不会盼望看到当你几个月后创立影象时的不兼容,或从创立缓存的检索中检索到了一个过错的 最新 版本。当您不克不及盯梢正在运转的版本时,在出产环境布置容器时应该防止 最新 标签的呈现。

7)不要在一个容器中运转多个步调 - 容器能够完美的运转个别步调(守护步调,应用程序效劳器,数据库),但若你有一个以上的步调,你可能会在治理上,检索日志,以及单方地更新的过程当中遇到更多的麻烦。

8)不要在影象中存储凭证。 利用环境变量 不要对影象中的任何用户名/密码进行硬编码。 利用环境变量从容器外部检索此信息。 这个原则的一个很好的例子是Postgres图画 。

9)不要以root用户身份运转步调 - 默许状况下,docker容器会以root身份运转。跟着Docker的成熟,更平安的默许选项可能会变得可用。 目前,要求root对别的人来说是风险的,而且可能在所有环境中都不可用。 您的影象应该利用USER指令来为容器指定非root用户

10)不要依赖IP地点 - 每一个容器都有本人的内部IP地点,如果启动和静止容器,它的地点可能会扭转。 如果您的应用程序或微效劳需要与另外一个容器通讯,请利用环境变量将正确的主机名和端口从一个容器传递到另外一个容器。

Copyright © 2002-2020 网页制作论坛_建站教程_网站模板制作_永久免费建站_app免费制作平台 版权所有 (网站地图
地址:江苏省南京市玄武区玄武湖 电话:4008-888-888
邮箱:9490489@qq.com QQ:546361220