Vagrant使用教程:创建CentOS 8虚拟机

目录

简介

Vagrant是一个用于创建和配置可复用虚拟开发环境的工具。它允许开发者使用简单的配置文件快速搭建一致的开发环境。

在本教程中,我们将学习如何使用Vagrant创建一个基于CentOS 8操作系统的虚拟机。

准备工作

下载

在开始之前,请确保您的计算机上已安装以下软件:

● Vagrant:可以从 Vagrant官网 下载安装。

● VirtualBox:可以从VirtualBox官网下载安装。

● VagrantCloud:可以从VagrantCloud官网下载CentOS 8的box镜像

当下时间我们下载最新的版本2.4.1,windows操作系统

VirtualBox当下最新版本为7.1.4

VagrantCloud中搜索centos/8 选择上图中红框的下载(这里提前下载好,由于国内的网络原因,建议这里你提前下载好,当然也可以寻找国内的其他稳定镜像也可以)

配置Vagrant

由于Vagrant不能自定义安装位置,默认安装位置在C:\Program Files\Vagrant,因此Vagrant的两个重要配置也默认位于C盘,我们要配置的就是这第三个位置。

  • 默认安装位置:C:\Program Files\Vagrant
  • 环境变量:C:\Program Files\Vagrant\bin
  • .vagrant.d:C:\Users\shuyangyang\vagrant.d

默认的安装位置区别可能就是用户名shuyangyang,进入自己的用户名安装目录即可

将以上2个文件复制到其他盘新建的文件夹中,复制完之后删除C盘中的文件夹(节省宝贵的C盘存储空间)

修改环境变量

如下图,配置好vagrant的环境变量。C:\Program Files\Vagrant\bin 复制后为 E:\vagrant\Vagrant\bin 配置新复制后的路径即可。

创建VAGRANT_HOME环境变量

变量名:VAGRANT_HOME

变量值:E:\vagrant\.vagrant.d

修改virturalBox新建虚拟机文件的默认生成路径


E:\VirtualBox 可以是自己在任意盘符创建一个文件夹即可,最好是英文名称的文件夹。

修改Vagrant配置支持VirtualBox7.1.x版本

修改Vagrant配置,不然后续启动虚拟机的时候,vagrant会报以下错误

首先打卡 E:\vagrant\Vagrant\embedded\gems\gems\vagrant-2.4.1\plugins\providers\virtualbox 文件夹。其实就是Vagrant的安装目录下的文件夹:

使用管理员权限 (下面提到的文件都使用管理员权限,后续不再赘述)打开 plugin.rb 文件,增加下图中红框的一行代码,其实就是复制上面的一行,将7_0 改为 7_1

bash 复制代码
autoload :Version_7_1, File.expand_path("../driver/version_7_1", __FILE__)

继续进入driver文件夹中,编辑 meta.rb 文件。

复制一行代码改为7.1,如下图所示

bash 复制代码
"7.1" => Version_7_1,

复制version_7_0.rb文件改名为version_7_1.rb后修改

bash 复制代码
class Version_7_0 < Version_6_1

改为

bash 复制代码
class Version_7_1 < Version_6_1

创建Vagrant文件

1、打开终端(或命令提示符)

创建一个目录用来存放centos8的vagrant配置相关文件。注意:如果不创建此目录,创建虚拟机会报磁盘不足的问题。

添加镜像

bash 复制代码
vagrant box add centos/8 E:\vagrant-box\CentOS-8-Vagrant-8.3.2011-20201204.2.x86_64.vagrant-virtualbox.box

初始化并开机

初始化开发环境

bash 复制代码
vagrant init centos/8

开机

bash 复制代码
vagrant up

等个几分钟左右,就安装成功了。

成功之后可以输入一下命令可以连接进虚拟机:

bash 复制代码
vagrant ssh  

连接成功后会进入到虚拟机的 bash 中,并且会展示虚拟机的环境。

其他配置项

宿主机的交换目录

其中,vagrant 的 /vagrant目录是与宿主机的交换目录。可以很方便的实现在宿主机编码,在虚拟机运行。

修改虚拟机内存

登陆到虚拟机里面,默认的用户叫做 vagrant,可以用 whoami 查看一下。再查看一下内存,用 free -m 命令,发现默认内存大小还不到500M,所以敲 Ctrl-D 退出来。添加下面几行到 Vagrantfile 文件。

bash 复制代码
config.vm.provider "virtualbox" do |v|
  v.memory = 2048
end

执行

bash 复制代码
# 重启虚拟机
vagrant reload

重新加载配置即可。

修改 访问方式为 host-only

Vagrant 默认是使用端口映射方式将虚拟机的端口映射本地从而实现类似 http://localhost:80 这种访问方式,这种方式比较麻烦,新开和修改端口的时候都得编辑。相比较而言,host-only 模式显得方便多了。打开 Vagrantfile,将下面这行的注释去掉(移除 #)并保存:

config.vm.network :private_network, ip: "192.168.56.10"

重启虚拟机,这样我们就能用 192.168.56.10 访问这台机器了,你可以把 IP 改成其他地址,只要不产生冲突就行。

bash 复制代码
# 重启虚拟机
vagrant reload

常用命令

bash 复制代码
vagrant init  # 初始化
vagrant up  # 启动虚拟机
vagrant halt  # 关闭虚拟机
vagrant reload  # 重启虚拟机
vagrant ssh  # SSH 至虚拟机
vagrant status  # 查看虚拟机运行状态
vagrant destroy  # 销毁当前虚拟机
vagrant package  # 当你配置好开发环境后,退出并关闭虚拟机。在终端里对开发环境进行打包
相关推荐
谭震鸿11 分钟前
Zookeeper集群搭建Centos环境下
分布式·zookeeper·centos
a_安徒生8 小时前
window系统改为Linux系统
linux·windows·centos·系统安全
杰哥的技术杂货铺15 小时前
Centos 7 安装 Docker 最新版本
linux·docker·centos
jerry-8915 小时前
CentOS 7安装SSHFS 实现远程主机目录 挂载为本地目录
linux·运维·centos
moxiaoran575315 小时前
Centos使用docker搭建Graylog日志平台
docker·centos·graylog
丁总学Java1 天前
在 CentOS 系统上直接安装 MongoDB 4.0.25
mongodb·centos
技术-hxy1 天前
由于centos停更,yum、docker等不支持,采用阿里云仓库搭建K8S
centos·k8s
shaderdx2 天前
CentOS使用中遇到的问题及解决方法
linux·服务器·centos
kejijianwen3 天前
Algen的跨链互操作性:增强区块链连接性
运维·centos·区块链
筑梦之路3 天前
CentOS 7 aarch64停止更新后安装gcc8 —— 筑梦之路
linux·运维·centos