小团队没有那么多资源怎么构建项目环境

前言

服务器端开发工程师的一个痛点就是各种搭建环境,尤其是对于我们这种特别爱捯饬技术,搭建环境,升级应用版本的这类人。这样除了让我们忍受搭建各种版本的环境的繁琐兼容问题,还让自己的开发机变得越来越臃肿,为此本文介绍了一种使用 搭建一套集成的开发环境(镜像)的方案,不仅可以让团队开发人员的环境保持一致,同时使得开发机保持瘦身。

当然也有缺点,不许要做好数据的保密性,不能让所有的开发人员的镜像都有一些生产数据。

下面我们就直接进入正题,搭建一个可以升级的本地环境。

安装vagrant和virtual box

访问 官网(https://www.vagrantup.com/),下载并安装。

访问 官网(https://www.virtualbox.org/),下载并安装。

安装开发环境

的基本单元叫做box,我们可以理解为镜像,首先我们需要添加一个 公开的镜像到我们本地,用来搭建环境。

我选择的是一个ubuntu镜像,下面的操作我们可以理解为下载镜像。

提示选择哪一种方式,我们这里选择的是virtualbox,我们刚刚已经安装了。

初始化本地开发环境,我们可以理解为安装镜像。

运行本地开发环境

ssh到本地开发环境

如果能进入刚才安装的系统,那么说明我们安装成功。因为设置了免密钥登录,所以直接输入就可以登录。

注意:切记,是在你的 目录执行 相关命令),如果需要关闭系统,可以输入如下命令

参考文档:https://www.vagrantup.com/docs/getting-started/

配置开发环境

具体的搭建环境根据自身的项目决定,我这里只通过安装tomcat举例。官方网站下载tomcat,放到指定目录,我这里直接放在了我的 home目录。

解压tomcat

为了让我们本地开发机也能访问到 里面的tomcat,我们需要配置转发端口。需要在 下面添加:

修改了配置文件以后,reload才能生效

运行tomcat

在我们开发机打开浏览器,输入 ,我们就能看到Tomcat的欢迎页了,配置环境成功。

参考文档:https://www.vagrantup.com/docs/getting-started/networking.html

打包开发环境

截止到目前假设我们自己的开发环境已经搭建完成,那么我们需要把搭建好的开发环境分发给其他开发人员。这个时候就需要打包一个开发环境,主要就是把我们已经处理好的开发环境打包成一个*.box文件,这样便可以使用 进行安装了。在 目录输入如下命令打包镜像:

--output:打包的名字,做程序需要美人的陪伴,于是我起了一个响亮的名字;

--vagrantfile:设置这个参数以后,就可以把刚才我配置到 里面的配置打近包里面,这样其他开发人员下载镜像的时候就不需要重新配置了。

这个时间有点长,我们慢慢的等他结束。

参考文档:https://www.vagrantup.com/docs/cli/package.html

搭建私有镜像仓库并发布镜像

我们要找一个大家都能下载并且外人不能访问的地方,所以我们选择搭建一个私有的镜像仓库。我在内网找了一个linux的服务器,IP地址是 ,方便下文我们对应。在上面安装一个Nginx,方便我们可以直接通过URL访问相应的资源。在Nginx的根目录,创建vagrant文件夹,在vagrant文件夹下面在创建boxes文件夹。在vagrant目录添加mermaid.json文件,用于存放box的metadata信息。同时把我们刚才的mermaid.box放到boxes下面,并命名为mermaid.0.1.0.box,以便稍后的升级测试。具体目录结构如下:

mermaid.json 里面具体内容如下:

基本配置都比较容易理解,注意的是checksum,需要把box上传到服务器的时候,使用 生成一下checksum值。配置都完成之后,我们测试访问 ok,那么表示我们配置成功。

参考文档:http://softwaretester.info/create-private-vagrant-box-repository/

通过私有镜像仓库安装开发环境

和最开始我们再 公有仓库安装的方式类似,首先我们准备一个全新的目录,我是使用的这个目录 。首先指定我们的私有仓库地址,添加一个镜像到本地。

出现如下提示,说明我们在正确的路上,如果是局域网这个步骤会很快。

我们可以通过 命令看一下是否安装成功

由此可以看出来我们安装成功,那么进行下一步,安装镜像

重复之前的操作,运行开发环境,并ssh到开发环境

运行Tomcat

在开发机本地访问 ,看到欢迎页,说明我们本地安装成功啦,还不是庆祝的时候,还没有结束,我们接下来看看怎么升级每一个人的镜像。

参考文档:http://softwaretester.info/create-private-vagrant-box-repository/

添加新版本镜像到私有库

这个功能主要是我们对开发环境有了修改,需要其他的开发人员同时更新到最新的环境。这次我们为开发环境安装一个Nginx,并且设置开机启动(具体步骤不累述),然后配置 ,添加80端口共享:

按照 步骤,重新打包一个新的mermaid.0.1.1.box上传到mermaid.0.1.0.box相同目录,如下图:

注意:这里有一个地方需要注意,如果你第二次打包,不能直接指定 是当目录的,因为它里面不包含你最初的配置,这时候有两种方案:

1.如果你没有做什么配置的修改,需要指定到原来的配置文件,比如这个目录里面的 ,是我上一个0.1.0的内置的vagrantfile。所以我打包的命令是:

2.如果你有修改配置,那么可以考虑把上面的路径的配置拷贝到当前目录的 里面,再进行打包。

修改mermaid.json文件,添加新的版本

配置完成。

参考文档:http://softwaretester.info/create-private-vagrant-box-repository/

更新镜像

进入mermaid目录,输入:

提示显示已经有0.1.1版本,可以更新啦,那么我们直接输入如下命令更新,切记需要 关闭虚拟机。

更新以后,访问localhost,出现 字样。至此已经全部完成。

最好的赞赏是关注

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180828G07I8S00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券