社区所有版块导航
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
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

面试官:你面试的是.NET高级程序员,却告诉我,你不会用docker?

dotNET跨平台 • 6 年前 • 724 次点击  

一、你一定会遇到的痛点



软件开发最大的麻烦事之一,就是环境配置。用户计算机的环境都不相同,你怎么知道自家的软件,能在那些机器跑起来?用户必须保证两件事:操作系统的设置,各种库和组件的安装。只有它们都正确,软件才能运行。举例来说,安装一个 Python 应用,计算机必须有 Python 引擎,还必须有各种依赖,可能还要配置环境变量。如果某些老旧的模块与当前环境不兼容,那就麻烦了。环境配置如此麻烦,换一台机器,就要重来一次,旷日费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。


二、使用虚拟机的缺点



虚拟机就是带环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统,比如在 Windows 系统里面运行 Linux 系统。应用程序对此毫无感知,因为虚拟机看上去跟真实系统一模一样,而对于底层系统来说,虚拟机就是一个普通文件,不需要了就删掉,对其他部分毫无影响。虽然用户可以通过虚拟机还原软件的原始环境。但是,这个方案有几个缺点:

  • 资源占用多:虚拟机会独占一部分内存和硬盘空间。
  • 冗余步骤多:虚拟机是完整的操作系统,一些系统级别的操作步骤,往往无法跳过,比如用户登录。
  • 启动慢:启动操作系统需要多久,启动虚拟机就需要多久。可能要等几分钟,应用程序才能真正运行。

三、什么是Docker



Docker is a platform that allows you to "build ,ship ,and run any  app, anywhere. "

Docker是一个平台,它提供哪些服务呢?任何一台装有Docker的机器上你都可以建立、发布、运行你的应用程序。

It has come a long way in an incredibly short time and is now considered a standard way of solving one of the costliest aspects of software: deployment.

Docker在很短的时间内就走得很远,如今它基本是解决软件最昂贵的环节:部署的标准解决方案。

在Docker出现之前,有一堆与软件部署的工具软件,虚拟机、配置管理工具、打包管理工具、复杂的webs库依赖。所有这些工具都需要专业的工程师去管理和维护,多数软件有一套独特的配置方法。

四、Docker的优点



Docker可以解决虚拟机能够解决的问题,同时也能够解决虚拟机由于资源要求过高而无法解决的问题。Docker的优点包括:

  • 标准化应用发布,docker容器包含了运行环境和可执行程序,可以跨平台和主机使用;
  • 节约时间,快速部署和启动,VM启动一般是分钟级,docker容器启动是秒级;
  • 方便构建基于SOA架构或微服务架构的系统,通过服务编排,更好的松耦合;
  • 节约成本,以前一个虚拟机至少需要几个G的磁盘空间,docker容器可以减少到MB级;
  • 方便持续集成,通过与代码进行关联使持续集成非常方便;
  • 可以作为集群系统的轻量主机或节点,在IaaS平台上,已经出现了CaaS,通过容器替代原来的主机。


前大型互联网公司有腾讯、京东、美团、新浪、大众点评等都在使用。比如说腾讯的盖亚,基于docker部署管理,据说已经有万台规模,用于大数据处理。美团主要是用于持续集成,自动构建方面,另外新浪也做了实践。容器化是一个大趋势,以后这方面的公司会越来越多。

五、Docker一周集训



作为一名开发人员,特别是立志成为架构师的开发人员,熟悉掌握Docker已经是工作以及面试必备技能,为此,给大家推荐一门在线直播课程,由架构师Tony老师亲授,课程为期四天,3月23日~26日晚上八点至九点半直播教学,本号粉丝,一律免费学习。

扫码进班级群
如扫码失败,请加微信号:estherzry

Day1:Docker入门
1、docker介绍
2、docker基本使用
3、docker安装
4、docker架构

Day2:Docker镜像
1、docker镜像介绍
2、docker镜像构建
3、docker镜像运行容器
4、docker镜像存储仓库


Day3:Docker容器编排
1、docker Compose介绍
2、docker Compose构建多容器
3、docker Compose容器部署


Day4:Docker 集群搭建
1、docker集群介绍
2、docker Machine介绍及使用
3、docker Swarm搭建集群
4、docker集群应用

六、附赠学习礼包



福利1:送价值399元.NET Core视频合集
福利2:送价值299元微服务视频合集
福利3:送价值499元数据结构算法视频合集
福利4:赠送价值199元Redis视频合集

扫码获取以上福利

仅限前199名


如扫码失败,请加微信号:estherzry
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/56548