Vagrant 搭建开发环境实践

简介: vagrant是一个命令行的虚拟机管理程序。用于简化搭建开发环境。vagrant使用ruby语言基于Chef 开发。需要配合其他虚拟机程序进行工作,如vmare、virualbox、hyper-v等。并通过 CLI和VagrantFile(配置文件)管理虚拟机的所有功能。vagrant 使用自己的镜像格式进行环境部署,即box。类似于虚机的iso或者docker中的镜像。

介绍

Development Environments Made Easy

—官网标题

vagrant是一个命令行的虚拟机管理程序。用于简化搭建开发环境。

vagrant使用ruby语言基于Chef 开发。需要配合其他虚拟机程序进行工作,如vmare、virualbox、hyper-v等。并通过 CLIVagrantFile(配置文件)管理虚拟机的所有功能。vagrant 使用自己的镜像格式进行环境部署,即box。类似于虚机的iso或者docker中的镜像。

选择vagrant+virualbox这个组合,因为它们都是开源的、跨平台的。vagrant搭建开发环境即简单又强大。

安装

官网下载安装。其中virualbox可选择安装

VirtualBox Extension Pack。使用虚拟机需要BIOS 开启虚拟化。

VirtualBox 官网

https://www.virtualbox.org/

Vagrant 官网

http://www.vagrantup.com/

BOX查找

https://app.vagrantup.com/boxes/search

几个场景

下面介绍几种vagrant 使用场景。所有步骤在WIN11系统下验证过。

1、一行命令搭建基本的开发环境

在CMD命令行下启动一个包含centos系统的虚拟机。其中"centos/7"是box名,root用户的默认密码是vagrant。真简单。

2、单机开发环境

目标是搭建一个少量定制的单机开发环境。需要使用CLI命令和配置文件来完成。

手动下载BOX

网速慢可以自己下载box文件,并添加到本地box库。

下载地址:

https://app.vagrantup.com/centos/boxes/7/versions/2004.01/providers/virtualbox.box

box添加到本地库的命令

**初始化 **进入命令行,建立一个目录,用centos/7 box 初始化。

基本的配置文件 初始化后会在当前目录生成名为 Vagrantfile 的文件。以Ruby语言为格式。

常用命令

3、集群开发环境

目标是搭建一个运行在局域网中、包含多台物理机和虚拟机的集群环境。

思路是安装好公共box后,对其进行定制。打包成自定义box,分发到不同的物理机上部署。

使用vagrant的公共网络模式,为每个虚拟机在局域网分配固定IP,集群环境里的任意物理机和虚拟机可以直接互通。

初始化一个centos环境

定制环境

允许用户名密码链接SSH

使用vagrant ssh 链接虚拟机

修改配置项、允许密码登陆,并保存。

PasswordAuthentication yes

操作系统设置

设置阿里云Centos镜像源

安装Docker

自定义BOX

打包当前环境,默认名称package.box。加入本地库,取名base。

box本地仓库 默认路径 C:\Users\Administrator.vagrant.d\box

配置文件

部署集群环境

将打包好的自定义box和配置文件,复制到需要部署的各物理机,并且安装vagrant环境。

使用 vagrant box add 将box添加到物理机的本地库中。

使用 vagrant init base 初始化。

调整 Vagrantfile 并通过 vagrant up进行部署。

结语

扩展阅读vagrant的CLI、VagrantFile、插件、网络配置等可以在官网文档找到。

Documentation | Vagrant by HashiCorp (vagrantup.com)

相关文章
|
7月前
|
人工智能 Oracle jenkins
【Jenkins】新手安装、运行Jenkins(详细教学)
【Jenkins】新手安装、运行Jenkins(详细教学)
|
Ubuntu Linux 虚拟化
嵌入式Linux开发环境搭建之一---VMware Ubuntu安装教程(亲自实践)
嵌入式Linux开发环境搭建之一---VMware Ubuntu安装教程(亲自实践)
300 0
|
jenkins Java Linux
手把手带你linux下搭建jenkins
手把手带你linux下搭建jenkins
208 1
|
7月前
|
Ubuntu Unix Linux
应用搭建必备-Liunx 基础
应用搭建必备-Liunx 基础
|
网络协议 网络安全 数据安全/隐私保护
个人笔记-cobbler自动部署系统
个人笔记-cobbler自动部署系统
94 0
|
程序员 网络安全 Ruby
利用vagrant快速搭建rails开发环境
利用vagrant快速搭建rails开发环境
85 0
|
运维 Devops Linux
【Linux】【开发环境】【RHEL】开发环境搭建系列之六——安装docker基础环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之六——安装docker基础环境
151 0
|
Linux 网络安全 开发工具
【Linux】【开发环境】【RHEL】开发环境搭建系列之五——安装git-repo环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之五——安装git-repo环境
302 0
|
NoSQL Java 关系型数据库
CentOS安装Java项目开发环境体验
使用了阿里云的服务器,完美安装了环境,而且学习到很多Linux的命令,真的是一次很不错的使用体验。
|
运维 Linux Docker
运维技术之二(6)、完成的安装docker安装jumpserver1.0.0(小白必会)
centos7CentOS 7 (使用yum进行安装)step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2Step 2: 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.
1396 0
下一篇
DataWorks