背景
为什么使用 Docker
—— 为了实现开发、测试、生产环境的一致性,项目更快的交付与部署。
Docker 是轻量级的操作系统虚拟化解决方案,可以在任意的平台上运行。
应用(容器)互相隔离,即启即用,易创建、扩展和销毁。
为什么使用 SFTP
—— 为了实现 Remote Development。
在 Vagrant、Docker 等虚拟技术方案出现之前,开发人员各自搭建自己的开发环境,容易造成因环境的不一致而导致项目上线后出现问题。
不少公司会整一个远程服务器做为开发环境,大家只要通过 SFTP 同步代码到服务器,通过域名来区分各自的项目。例如:test-xxx.dev.com
这样不仅实现了统一的开发环境,也降低了环境搭建的成本。
为什么有了 SFTP 还需要 Docker
—— 为了快速的交付与部署。
Docker 不仅能实现应用隔离,方便部署与迁移,还可以做横向扩展。
例如我要开启 10 独立的应用,只需要新建 10 个容器,无需分配 10 台虚拟机,然后每台虚拟机又得重复安装或更新依赖包。
为什么有了 Docker 还需要 SFTP
—— 为了降低接入成本。
Docker 虽然能实现环境的统一,但是 Docker 的部署却因为使用的平台不同而无法统一。
例如公司的开发同学,有人用 Windows,有人用 Linux,有人用 Osx。
使用 win 的同学,有使用官方的 Docker for Windows(Docker CE Desktop 或 Docker Toolbox),也有自己建个虚拟机来运行 Docker 的(虚拟机又分为 VirtualBox 和 VMware 两大主流)。
使用 Linux 或者搭虚拟机的同学,最大的问题就是各式各样的发行版。
这般的不统一就导致安装 Docker 的时候如果出现问题却没有一个统一的解决方案。
解决方案
Docker + SFTP
Centos 7 mini 安装 Docker
//www.greatytc.com/p/c983b1ccbc27
Sublime Text 3 SFTP 配置
//www.greatytc.com/p/a0a0974c8c56