毋庸置疑,容器已经成为企业IT基础设施中必不可少的部分,它具有许多的优点,比如:

  • 第一:容器是不可变的——操作系统,库版本,配置,文件夹和应用程序都包装在容器内。你保证在质量检查中测试过的同一镜像将以相同的行为到达生产环境。

  • 第二:容器很轻——容器的内存占用量很小。容器将只为主要进程分配内存,而不是数百或数千MB。

  • 第三:容器非常快——可以像启动典型Linux进程一样快地启动容器。你可以在几秒钟内启动一个新容器,而不是几分钟。

但是,许多用户仍然像对待典型虚拟机一样对待容器,而忘记了容器具有重要的特征:即容器是一次性的。

这种特征迫使用户改变他们对如何处理和管理容器的看法。那么该如何保持容器的最佳效益呢?以下将介绍Docker容器中应避免的10件事。

1、不要将数据存储在容器中

因为你可以停止,销毁或更换容器。在容器中运行的应用程序版本1.0应该容易地由版本1.1替换,而不会造成任何影响或数据丢失。因此,如果需要存储数据,请批量存储。在这种情况下,还应该注意两个容器是否在同一卷上写入数据,因为这可能会导致损坏。确保你的应用程序是为了写入共享数据存储。

2、不要将应用程序分为两部分进行交付

有些人看到像虚拟机这样的容器,大多数人倾向于认为他们应该将应用程序部署到现有的运行容器中。在开发阶段,你需要不断进行部署和调试,这是正确的。但对于一个连续传递(CD)管道QA和Production,你的应用程序应该是镜像的一部分。

3、不要创建大镜像

因为大镜像将很难分发。确保仅具有运行应用程序/进程所需的文件和库。不要安装不必要的软件包或运行将许多文件下载到新镜像层的“更新” 。

4、不要使用单层镜像

为了有效利用分层文件系统,请始终为操作系统创建自己的基础镜像层,为用户名定义创建另一层,为运行时安装创建另一层,为配置创建另一层,最后是应用程序的另一层。重新创建,管理和分发镜像将更加容易。

5、不要从正在运行的容器中创建镜像

换句话说,不要使用“ docker commit”来创建镜像。这种创建镜像的方法不可复制,应完全避免。始终使用完全可复制的Dockerfile或任何其他S2I(从源到镜像)方法,如果将Dockerfile存储在源代码控制存储库(git)中,则可以跟踪对Dockerfile的更改。

6、不要只使用“最新”标签

对于Maven用户,最新标签就像“ SNAPSHOT”一样。由于容器的分层文件系统性质,因此鼓励使用标签。几个月后生成镜像并发现你的应用程序无法运行是因为父层(Dockerfile中的FROM)被不兼容向后的新版本或错误的新版本所取代,你不会感到惊讶从构建缓存中检索了“最新”版本。在生产环境中部署容器时,也应避免使用“最新”标签,因为你无法跟踪正在运行哪个版本的镜像。

7、不要在单个容器中运行多个进程

容器非常适合运行单个进程(http守护程序,应用程序服务器,数据库),但是如果有多个进程,则管理起来可能会遇到更多麻烦,检索日志,并分别更新流程。

8、不要将凭据存储在镜像中

使用环境变量,你不想对镜像中的任何用户名/密码进行硬编码。使用环境变量从容器外部检索该信息。这个原理的一个很好的例子是Postgres镜像。

9、不要以root用户身份运行进程

“默认情况下,docker容器以root用户身份运行。随着docker的成熟,可能会提供更多安全的默认选项。目前,要求root用户对其他人是危险的,可能并非在所有环境中都可用。你的镜像应使用USER指令为运行容器指定一个非root用户。

10、不要依赖IP地址

每个容器都有自己的内部IP地址,如果你启动和停止容器,它可能会更改。如果应用程序或微服务需要与另一个容器通信,请使用环境变量将正确的主机名和端口从一个容器传递到另一个容器。

所以,在Docker容器的应用中,这个10个坏习惯要不得,注意!注意!再注意!

出处:https://www.toutiao.com/i6800999396335944200/

end

最新整理的 2TB 干货资源,包括但不限于:Linux运维架构师、大数据、Docker、数据库、redis、MongoDB、电子书、Java、机器学习、BAT面试精讲视频等。在公众号对话框回复「1024 」即可免费获取!!

推荐阅读  点击标题可跳转

1、太特么猖狂了!敢在我国本土搞事...

2、再见,Win7 !

3、赞!7000 字学习笔记,MySQL 从入门到入土

4、详解 MySQL 基准测试和sysbench工具

5、Docker 日志管理最佳实践

6、玩转正则!推荐一个速查、调试、验证、可视化工具

看完本文有收获,请分享给更多人

关注「民工哥技术之路」加星标,提升IT技能

好文章,分享点赞在看三连哦❤️↓↓↓

docker电子书_果然!这10个Docker容器坑多数人都中招过相关推荐

  1. 调音台docker教程_[整理]菜鸟教程:docker使用笔记

    - docker # 查看 docker stats 指令的具体使用方法 - docker stats --help # 运行一个web应用 - docker pull training/webapp ...

  2. docker 虚拟化_如果没有虚拟化,Docker将提供什么?

    docker 虚拟化 首先,我要说这绝对不是Do cker扑朔迷离的文章. 我实际上很喜欢Do cker,而且我认为它是一款非常出色的软件,将会取得巨大的成功. 但是我不得不承认,我不确定它是否值得虚 ...

  3. 二线制和四线制传感器的区别_三相四线制和三相五线制的解析,不少人都理解错了...

    更多精彩内容~ 土木在线_最专业的土木工程网站(原网易土木在线)​edu.co188.com 入群领取BIM大礼包,更有免费视频教程随便看.每月免费直播等你来~ 点击链接加入群聊[BIM资料分享群]: ...

  4. java浪漫代码_程序员表白代码,用过的人都找到了对象...

    在情人节送给自己的女朋友玫瑰花, 对于程序员来说是不是太普通了呢? 为什么不试试让情人节变得更特别一些呢? 作为一名程序员, 可以用自己的技术创造出不一样的浪漫! 让你的女朋友眼前一亮,印象深刻. 这 ...

  5. 拍摄中如何判断灰度等级_如何判断电力铁塔的电压等级?每个人都应知道

    在日常生活中,经常能够看到高耸的铁塔或者电线杆,输电线路就是由这些铁塔或者线杆一段段的连接起来的,看到这里您可能有个疑问: 为什么这些铁塔的高度会不一样呢? 这是因为高压线路的安全距离不一样,所以不同 ...

  6. 【互联网的那些事】互联网的 10 年,每一个互联网人都应该知道!

    诚然最近互联网红利到顶,再加上大环境的影响,可谓雪上加霜. 但我依旧坚定地看好互联网的未来,今天的互联网早已变成了我们生活中的水和电,成为基建般的存在. 更何况新一轮的科技革命早已蓄势待发,自动驾驶. ...

  7. 常见电容器图片_对智能锁的几大常见误区,很多人都中招了!

    如今,智能生活理念越来越得到人们的认可,智能锁也不断普及,越来越多的人享受着智能锁带来的安全与便捷. 然而,也有许多人对智能锁存在一定的误解,今天就列出大家对智能锁的几大常见误区,一起来寻找真相吧! ...

  8. 7元镜片卖到2000!这家公司3年卖出超10亿元眼镜,你有没有“中招”?

    一副成镜的成本为60.33元/副,镜片仅6.77元/片? 这家国内眼镜镜片生产商的招股书,揭开了镜片行业的暴利面纱! 7月8日,眼镜镜片生产商明月镜片顺利创业板过会.明月镜片招股书显示,2020年,明 ...

  9. gta5老是变成单人战局_《GTA5》为什么战局总是突然全部人都退出了?!

    不朽的传说猴哥:网络不好,我有时候也是 发布于 2020-04-13 01:46:45 不朽的传说猴哥:网络不好,我有时候也是 发布于 2020-04-13 01:46:45 不朽的传说猴哥:网络不好 ...

最新文章

  1. Spotify如何对Apache Storm进行规模扩展
  2. div根据内容改变大小并且左右居中
  3. win7磁盘清理_window7越来越卡?系统残余文件太多,磁盘清理可以搞定!!
  4. #define 和 const 区别
  5. try catch finally语句详解
  6. VTK:PolyData之WarpVector
  7. vue与php接口对接,怎样使用vue项目中api接口
  8. linux 基本配置tab键和显示行号 和中文输入法
  9. 鸿蒙系统的升级名单,定档6月2日!鸿蒙“首批”升级名单公布,共计11款华为机型!...
  10. LAMP环境中Apache,MySQL,PHP的配置文件路径是什么
  11. oracle让数据库不产生redo,imp过程如何减少redo产生
  12. 处理器后面的字母含义_工业铝型材名称的含义是什么
  13. 双网卡服务器实现内外网访问
  14. VC2005-应用程序正常初始化失败-0xc0150002
  15. 电脑怎么连接隐藏的无线WiFi信号呢
  16. Particle Filtering粒子滤波
  17. 微信小程序绘制canvas图片
  18. 桌面窗口管理器(dwn.exe)内存占用大怎么解决
  19. 湖南工业大学计算机录取分数线,2021湖南工业大学录取分数线_历年各专业分数线(2017-2020),各省投档线_一品高考网...
  20. 从经济学角度解释:为什么画家总是死后成名?

热门文章

  1. mysql大量数据插入探讨(量变引起质变)
  2. I/O Performance HOWTO: Avoiding Bounce Buffers
  3. Android实战处理带+号的电话号码在Arabic语言中的正确显示
  4. [图形学]切向空间(Tangent Space)
  5. 989-数组形式的整数加法
  6. 众星出席2018—2019中国文娱金数据发布盛典
  7. CentOS 5.10安装Oracle 11G R2
  8. WPF的Clipboard.SetText()有问题
  9. 2016年ICT产业趋势预测
  10. C++ STL 总结