1 - 构建个人本地开发环境

在个人计算机中搭建一个精简版的、与生产环境基本一致的本地开发环境,既不会占用团队公共环境的资源,也可以缩短等待时间,从整体上提高效率。
本地开发环境的适用场景:

  • 从应用程序开发的初期到单元测试阶段
  • 原型开发
  • 对风险或影响较大的变更进行前期调查
  • 确认需要完全独占环境的工作内容

2 - 涉及的部分工具

2.1 虚拟机工具VirtualBox

利用VirtualBox能够以虚拟机方式构建个人本地环境,专属于个人,可以自由地进行开发。
在安装完虚拟机操作系统后,还需要进行各种配置操作。

2.2 虚拟环境构建工具Vagrant

Vagrant是一个虚拟环境构建工具,可以使基础设施代码化(虚拟机创建、配置和应用等),简化个人开发环境的构建操作。
Vagrant通过Vagrantfile记录虚拟机环境相关的构建步骤和配置信息,通过共享Vagrantfile可以容易地共享和创建统一的环境,也利于理解和维护。
可以很好解决只使用VirtualBox时遇到的一些问题。

  • 配置完整的环境要花费一定的时间和精力
  • 虚拟机镜像文件庞大,共享困难
  • 对共享出来的镜像文件,难以掌握其构建步骤和配置信息
  • 需要实施相应的镜像维护工作,来保持构建步骤、配置信息和镜像本身的一致性

2.3 基础设置配置管理工具Ansible

利用Ansible这个基础设置配置管理工具,可以消除构建步骤对个人的依赖,支持在不同的环境中使用相同的步骤。
可以进一步解决使用VirtualBox和Vagrant管理和使用本地开发环境过程中出现的问题。

  • 不容易理解:不同人不同的编写方式和需求导致千奇百怪的Vagrantfile
  • 不能添加新配置:Vagrantfile记录的是从零开始构建虚拟机的步骤,难以对已创建的众多虚拟机更改配置
  • 构建步骤难以在其他环境中复用:Vagrantfile的内容依赖具体的本地开发环境,无法实现跨环境(公共开发环境、生产环境)的代码化

2.4 基础设施的配置测试工具Serverspec

可以对基础设施的配置进行测试的工具,可以实现基础设施测试代码化,提高构建和配置测试的效率。

  • 测试代码即测试设计文档
  • 测试代码可以复用
  • 可以通过代码对测试用例进行评审
  • 使用格式编写测试用例和输出测试报告

2.5 本地管理工具Git

开源的分布式版本控制系统,用于敏捷高效地管理代码版本。

DevOps - 构建本地开发环境的更多相关文章

  1. Vagrant 构建 Linux 开发环境

    Vagrant 是一个简单易用的部署工具,用英文说应该是 Orchestration Tool .它能帮助开发人员迅速的构建一个开发环境,帮助测试人员构建测试环境, Vagrant 基于 Ruby 开 ...

  2. 使用 Laragon 在 Windows 中快速搭建 Laravel 本地开发环境 (转)

    laravel学院 简介 对于那些使用 Windows 操作系统的同学来说,Homestead 和 LaraDock 虽说支持 Windows 系统,但是对初学者来说,安装配置起来还是有一定复杂度的, ...

  3. XamarinForms教程构建XamarinForms开发环境

    构建XamarinForms开发环境 所谓Xamarin.Forms的开发环境,就是指在基本硬件和数字软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE.对于任何的程 ...

  4. Python学习1:使用Aptana构建Python开发环境

    使用Aptana构建Python开发环境 下载Aptana: http://www.aptana.com/products/studio3/download http://www.newasp.net ...

  5. Eclipse中构建scala开发环境的步骤

    Eclipse是一款非常使用的开发工具,熟悉它的童鞋应该都知道,它不仅是最常用的android开发工具,还是最常用的Java开发工具.既然eclipse如此重要,本文小编就和大家一起来扒一扒在ecli ...

  6. vue第七单元(vue的单文件组件形式-单文件组件的加载原理-vue-cli构建的开发环境以及生命周期)

    第七单元(vue的单文件组件形式-单文件组件的加载原理-vue-cli构建的开发环境以及生命周期) #课程目标 掌握安装 vue-cli 命令行工具的方法,掌握使用命令行在本地搭建开发环境,使用命令行 ...

  7. 从源代码构建 Go 开发环境

    从源代码构建 Go 开发环境 Go 1.5 之前的版本 安装C 语言开发环境 在Go 1.5 之前的版本(比如 1.3.1.4),都会部分的依赖 C 语言的工具链,所以如果你有C 语言的开发环境,就可 ...

  8. Python黑帽编程1.2 基于VS Code构建Python开发环境

    Python黑帽编程1.2  基于VS Code构建Python开发环境 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Atta ...

  9. 【OpenStack】OpenStack系列1之OpenStack本地开发环境搭建&&向社区贡献代码

    加入OpenStack社区 https://launchpad.net/,注册用户(597092663@qq.com/Admin@123) 修改个人信息,配置SSH keys.OpenPGP keys ...

随机推荐

  1. windows下如何打开.sketch的文件

    1 .sketch的文件只能在苹果mac上支持的一种文件格式,现在越来越多的设计师喜欢用.sketch 2 windows下如果想打开.sketch文件,去Microsoft store 找一个Lun ...

  2. FFmpeg常用命令学习笔记(三)分解/复用命令

    分解/复用命令 比如文件格式的转换.将封装格式文件中的音频与视频文件分别抽取出来等. 多媒体格式的转换(将MP4文件转成flv格式) ffmpeg -i yan.mp4 -vcodec copy -a ...

  3. Mysql中查询索引和创建索引

    查询索引   show index from table_name 1.添加PRIMARY KEY(主键索引) ALTER TABLE `table_name` ADD PRIMARY KEY ( ` ...

  4. Bootstrap-轮播图-No.7

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  5. [Sping Boot] Build a REST CRUD API with Hibernate

    pom.xml: <dependencies> <dependency> <groupId>org.springframework.boot</groupId ...

  6. PHP mysqli_field_tell() 函数

    mysqli_field_tell() 函数返回字段指针的位置. 取得所有字段的字段信息,然后通过 mysqli_field_tell() 取得当前字段并输出字段名称.表格和最大长度: <?ph ...

  7. yarn是什么?

    yarn是个包管理器.你可以通过它使用全世界开发者的代码, 或者分享自己的代码. 从 npm 安装软件包并保持相同的包管理流程. 优点:         1.速度超快. Yarn 缓存了每个下载过的包 ...

  8. Windows:获取本地时间

    造冰箱的大熊猫@cnblogs 2019/6/4 #include <windows.h> int func() { SYSTEMTIME systime; GetLocalTime ( ...

  9. luogu P1494 [国家集训队]小Z的袜子 ( 普 通 )

    题目:    链接:https://www.luogu.org/problemnew/show/P1494 题意:一些袜子排成一排,每个袜子有固定的颜色.                        ...

  10. vue-cli3项目首页加载速度优化(cdn加速,路由懒加载,gzip压缩)

    今天打算上线vue的单页面项目,上线后,首页加载速度巨慢! 原因是项目上线后,网速不够快,加载js,css等资源很慢, 打开打包好的文件发现chunk-vendors.xxxxxxx.js的包很大,达 ...