基于Docker & Fabric的Web项目部署方案

  • 时间:
  • 浏览:2
  • 来源:彩神3D_神彩3D官方

Interface

这里需要理解Docker的哪几块基本概念,便于更好的理解你你这名 部署开发&部署最好的法子与常规方案的区别

fabric

这你你这名 方案并非位于互斥性,还都都可以 并从,也还都都可以 只选用你你这名 ,如:

注意:项目代码需要特定的branch(不过这真是也是规范化的代码管理必需)

Fabric 是俩个多 多用于ssh的Python库&命令行工具

Fabric is a Python (2.5-2.7) library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.

示例在初始化的过程中会从git拉取代码并安装依赖文件,最终运行在10001000端口

通过不同服务器的配置信息,使用http|socket等最好的法子发送特定的参数如cloud|help来运行上述的命令达到热更新以及修复的功能.对应的接口实现还都都可以 通过指定:

本文描述了Web项目的你你这名 部署方案,石器时代的ssh & pull & restart最好的法子不做越多说明

节点管理通过阿里云的Agent服务,为宜为每俩个多 多节点创建了俩个多 多远程shell,朋友儿通过控制台即可轻松升级&更新多线程池池

Script

批量更新,通过许多设定创建的数量如20台 ,创建完毕后,从原有集群移除所有节点,加入创建的节点,即可完成更新操作,后续删除可能销货旧版本的容器。停机更新即完成。

容器是俩个多 多实例化然后 的虚拟机,容器依赖于镜像,在镜像的基础上做实例化,是初始化然后 的虚拟机

服务器,而是 传统的服务器如实体服务器可能云主机等

Docker allows you to package an application with all of its dependencies into a standardized unit for software development.

Docker对应了许多列的服务端多线程池池 ,是标准的C/S架构,每俩个多 多服务器运行俩个多 多或多个容器,俩个多 多或多个容器的集合叫做集群,对服务器进行许多列的包装后变成俩个多 多控制台,不再去关心服务器的初始化过程,只管理容器你你这名 是目前Docker的优势所在。具体表现为,按照原有最好的法子,朋友儿需要先开通N台服务器,再依次在每一台机器上安装虚拟机;现在需要的是,将所有的服务器进行封装,变成俩个多 多通道,在盒子外,朋友儿告诉盒子朋友儿需要哪几块个容器,它返回给朋友儿对应的服务即可。国内的DaoCloud、阿里云容器服务可能相对完善。(阿里测试中,DaoCloud可能相对性性性性成熟期 图片 的句子的句子期 )

动态管理,可能数量还都都可以 自定义,朋友儿还都都可以 在用户无感知的情況下增加服务器到1000可能减少服务器到10,在你你这名 过程中,用户是越多再感觉到变化的(注:这里需要设计数据共享机制 Session/Cookie)

示例:

Docker服务的基础是虚拟机,整个Docker服务涵盖了虚拟机以及操作虚拟机的许多列命令集合

镜像为宜俩个多 多Linux发行版,对比于Linux下的Ubuntu、CentOs等,朋友儿还都都可以 按照我本人的需求去定义你你这名 发行版的内容以及组件,基础镜像是最小化的Linux运行单元,越来越,朋友儿需要做的而是 根据多线程池池 的需要,安装各种依赖组件,并将APP+DEP进行打包,变成朋友儿的“定制发行版”,以此来部署在真实Server上。于此同去,镜像在初始化的过程中,还都都可以 定义许多列操作,比如——安装依赖、拉取代码以及运行多线程池池

Docker是俩个多 多将多线程池池 以及其依赖打包进俩个多 多标准单元的服务可能工具集