开发:我要改变!
运维:我要稳定!
开发:代码在我电脑上跑的好好的啊!
运维:为什么不能提前评估好资源呢!
QA : ...
...
缩短开发上线周期
减少扯皮沟通成本
上线回滚风险可控
|
---|
|
---|
|
---|
image | 镜像,只读,环境某个时间点的状态,类比java的Class |
---|---|
container | 容器,可读可写,是镜像实例化后的结果,类比java的Object |
volume | 数据卷,容器共享的部分,类比java的 static 变量,不会因为容器的消亡而消亡 |
gitlab | 代码仓库 |
---|---|
docker hub | docker 仓库 |
gitlab-runner | gitlab 运行器,是gitlab自带的工具,结合gitlab ci/cd |
docker | 容器技术 |
问题 | 解决办法 |
---|---|
runner机器和prod机器不会是同一台 | runner只负责生成/记录image,开发自行部署image,如appos |
部署机器不会只有一台 | 可以使用 Docker swarm 或者 Kubernetes 技术 |
容器删除和容器启动的时候会存在服务down机 | docker stack(swarm工具) 会有 update 操作,可以蓝绿更新 |
服务编排就是把一些Docker容器按照一定的依赖关系启动起来
只支持单机运行
都支持集群部署
Docker Swarm 是集成在Docker里面的,不需要额外的安装
等玩明白后再分享.....
我对Devops的理解
Docker在Devops中可以发挥什么样的作用
Docker能力的简单布道