从项目角度分析为啥使用docker

  • 首先从零开始,我们该如何开发一款在ios和安卓市场都通用的app呢?
    似乎在2019年问这个问题有些萌?毕竟这是我的总结技术的博客.
  • 我们应该有个良好的架构体系,以及前端开发工程师和后端开发工程师(既然本篇从架构出发,那就不介意后端是python还是java)
  • 我们准备使用的是阿里云的服务器和它所提供的mysql数据库,这样我们节省运维人员去进行部署,服务器我们选择预装centos,使用yum把该下的东西下好,此时我们该想一个问题,环境是已经ok了,那么下一步申请好阿里云的ssl证书后,我们该搞下nginx,进行内部分流,来平衡多台服务器之间的负载,
  • 使用docker来跑我们写好的后端程序,使用springboot来作为我们的后端开发框架,使用docker swarm来实现集群,后期可以把业务区分出来,分别创立微服务,使用SpringCloud来进行管理.使用redis来做我们的缓存和消息队列.
  • 博主也是个小白,进入到这家公司时还是什么都不会,面对一个这样到现在还没有完全完成的架构,我是有一点点懵的,这样对我技术的广度提出了挑战,废话不说了,下面进入正文

1.docker 能做什么?
docker我觉得跟大家形容excel一样(除了生孩子,它都可以),开玩笑嘛,docker主要的功能是作为一个虚拟的容器来运行我们写好的代码,不对容器外的环境造成影响,这样就会问了,那虚拟机和docker容器有什么区别呢? 亲亲,这边建议百度哦(篇幅限制).
2.docker的三大概念:

  • 镜像
  • 容器
  • 仓库

镜像: 就是尚未运行的容器
仓库:就是存放镜像的地方(当你在运行某个容器时,没有该镜像,就会从默认的仓库去下载)
容器就是跑起来的镜像.

我们的项目使用jenkins构建工具读取java代码,使用maven进行不同环境的打包,生成不同的镜像,然后把镜像pull到仓库中去,
解决运维部署项目的事情,docker swarm可以将多个docker主机资源整合到一个集群里去功能相对来讲,比较弱,但是够用.

这样我们就可以在多个服务器上跑同一个任务,通过nginx分流来把请求分发到不同的服务器上,后期遇到性能瓶颈,也可以通过购买新的服务器来解决(这是比较低端的做法,但是个节省时间的做法).

本人对docker理解也不是很深,以上都是自我总结!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值