02-初识Docker-什么是docker
1.项目部署的问题
大型项目组件较多,运行环境也较为复杂,部署时会碰到一些问题:
1.依赖关系复杂,容易出现兼容性问题
2.开发、测试、生产环境有差异
解释:
一个大型的项目,往往组件很多,特别是微服务项目,各种各样的微服务,而且这些微服务还会依赖于各种各样的应用。比如前端部分依赖于node.js,而我们的服务端还需要数据库mysql,缓存系统redis,还有后面要学习的异步通信mq等等技术…所有的这些应用将来都需要部署到我们的服务器上。而大多数的服务器都会采用Linux操作系统。应用在安装到Linux操作系统之前要做一些准备工作,因为这些应用都会有自己所需要的一些依赖和函数库。每一个不同的应用他们所需要的依赖和函数库可能有差异,也有可能一样但是版本不同。那这种时候如此复杂的依赖关系很容易出现兼容性问题。而且就算搞定了这些,也还会有开发环境,测试环境,生产环境等等…而且这些开发环境的Linux操作系统还可能不一样。也就是说你在这个操作系统上能运行的,跑到其他操作系统上去了就不能运行了。