社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Greg Trevellick

Greg Trevellick 最近创建的主题
Greg Trevellick 最近回复了
8 年前
回复了 Greg Trevellick 创建的主题 » VM的Guesto和Docker的Basic Image有什么区别?

关于:-

“为什么将软件部署到docker映像比简单地部署更容易 部署到一致的生产环境?"

大多数软件部署到许多环境中,通常至少有以下三种:

  1. 个人开发者个人电脑
  2. 共享开发人员环境
  3. 个人测试仪PC
  4. 共享测试环境
  5. 质量保证环境
  6. UAT环境
  7. 负载/性能测试
  8. 现场表演
  9. 生产
  10. 档案文件

还需要考虑以下因素:

  • 根据工作的性质,开发人员,甚至测试人员,都将拥有微妙或巨大不同的PC配置
  • 开发者通常可以在公司或业务标准化规则无法控制的PC上开发(例如,在自己的机器上开发(通常是远程开发)的自由职业者,或开源项目的贡献者,他们没有“受雇”或“签约”以某种方式配置PC)
  • 有些环境将由固定数量的多台机器组成,采用负载平衡配置
  • 许多生产环境将根据流量级别动态(或“弹性地”)创建和销毁基于云的服务器

正如你所看到的,一个组织的服务器外推总数很少是一位数,通常是三位数,而且很容易更高。

这一切都意味着,仅仅因为巨大的容量(即使在绿地场景中),从一开始创建一致的环境就已经足够困难,但是 考虑到大量服务器、添加新服务器(动态或手动)、来自o/s供应商、防病毒供应商、浏览器供应商等的自动更新、由开发人员或服务器技术人员执行的手动软件安装或配置更改,等等。让我重复一遍——保持环境一致几乎是不可能的(没有双关语的意思)(好吧,对于纯粹主义者来说,这是可以做到的,但它涉及大量的时间、精力和纪律,这正是为什么VM和容器(例如Docker)最初被设计出来的原因)。

所以,请像这样思考你的问题 “考虑到保持所有环境一致性的极端困难,即使考虑到学习曲线,将软件部署到docker映像是否更容易?” .我想你会发现答案总是“是”——但只有一种方法可以找到答案,将这个新问题发布在Stack Overflow上。