docker-因痛点缘遇docker

       随着公司项目的越来越复杂,包括用到的各种服务也越来越多,在部署安装,持续集成,测试,交付等方面面临的问题是越来越多了,一方面我们的开发组与测试组,技术组的沟通成本也就越来越大,心烦了,效率就低了。
由于没有运维组,全部的基础架构都是我们开发组负责,甚至包括整个项目直到部署完成。其实我们也有很多的不懂,而且运维涉及的知识也是在太多了。
       之前项目工程比较小,我们一直使用python写一个自动化安装脚本,包括离线安装和在线安装。这样子每次客户需要部署我们平台的时候呢,我们可以利用脚本快速部署,当然那是日子过的还是挺愉快的,因为没啥大问题。而且测试那边也是通过脚本安装,然后测试,也比较顺利。

       随着项目功能越来越多,我们一开始也是集成一整套的功能开发,需要用到的各种的服务,开源软件,比如srs,gopush,swoole,ftp等,各种服务组件。我们开发完成功能后,继续按照我们的之前的方式,写自动安装脚本,完成各种的配置,在这个过程中我们就开始头大了,遇到了几个问题:

1、开发问题。很多的服务,我们都是实现分离,解耦,部署在单独的主机上,那么这个过程我们需要很多的主机,那没办法,就只能在自己的电脑上装好多个vm,然后再装一个centos系统,最后搞得电脑都卡的要命。


2、环境不统一,因为测试组测试时,是自己根据安装脚本部署一个环境,可能会出现在线安装时,某些软件安装的版本是最新的,还有可能随时出现断网和被墙情况,特别时连接国外时,和我们原来开发时的环境不一致,可能造成软件出错。


3、跨平台问题。客户会根据自己的实际情况,购买不同的服务器,部署指定版本的操作系统,特别是一些大客户,因为他们为了保证信息安全。所以这个我们开发组可能就因为要适配它的平台环境,针对我们的软件平台做一定的修改。这也是一个头疼的问题。


4、持续集成与交付。对于版本更新,代码集成,修复bug,很多时候,在已经部署好的客户平台中,升级,修复,维护会比较麻烦。


5、虽然我们还没有涉及到大规模的部署,但是在整个过程中,每个客户都要重新部署安装,随时可能会出现一些不同的问题,为了解决这些问题,又得投入人力物力。

为了更好的解决这些问题,我们开发组经过科学的认证,实验,将利用docker容器技术来解决这些问题。

你可能感兴趣的:(docker)