Windows怎么安装配置Vagrant虚拟环境_Windows如何用Vagrant快速创建和管理开发虚拟机【教程】-1

如果您希望在Windows系统上快速搭建可复现的开发环境,Vagrant提供了一种通过文本配置文件定义、创建和管理虚拟机的标准化方式。以下是完成Vagrant虚拟环境安装与基础配置的具体步骤:

一、安装VirtualBox虚拟化平台

VirtualBox是Vagrant默认支持的底层虚拟化提供者,必须先安装才能运行Vagrant管理的虚拟机。它免费开源,兼容性良好,且无需启用Windows Hyper-V。

1、访问https://www.virtualbox.org/wiki/Downloads,下载最新版Windows主机安装包(.exe格式)。

2、以管理员身份运行安装程序,全程点击“下一步”,在安装组件界面确保勾选“VirtualBox NDIS6 Bridged Networking Driver”和“VirtualBox USB Support”。

3、安装完成后,在命令提示符中执行VBoxManage –version,若返回类似“7.0.18r162846”的版本号,则表示安装成功。

二、安装Vagrant主程序

Vagrant本身不包含虚拟化能力,而是作为编排工具调用VirtualBox等提供者启动预定义的虚拟机镜像(Box)。其安装包已内置命令行接口,无需额外配置PATH(安装向导默认勾选)。

1、前往https://developer.hashicorp.com/vagrant/downloads,下载适用于Windows的64位.msi安装包。

2、双击运行安装程序,接受许可协议,保持默认安装路径(如C:\Program Files\Vagrant),并勾选“Add Vagrant to PATH for all users”选项。

3、重启命令提示符或PowerShell,输入vagrant –version,输出类似“Vagrant 2.4.2”即表示安装完成。

三、初始化首个Vagrant项目目录

每个Vagrant环境需独立存放于一个本地文件夹中,该目录下将生成Vagrantfile配置文件,用于声明虚拟机操作系统、网络、同步文件夹等行为。

1、新建空文件夹,例如C:\vagrant-demo,右键选择“在此处打开Powershell窗口”或“在此处打开命令行窗口”。

2、执行命令:vagrant init hashicorp/bionic64,该操作会下载Ubuntu 18.04官方轻量Box的元信息并生成初始Vagrantfile。

3、使用文本编辑器(如Notepad++或VS Code)打开该目录下的Vagrantfile,确认第21行附近存在config.vm.box = “hashicorp/bionic64″,表明Box源已正确设置。

四、启动并连接虚拟机

Vagrant根据Vagrantfile中的指令自动下载Box镜像(首次运行时)、创建虚拟机实例、配置网络与共享文件夹,并启动系统。

1、在项目目录(C:\vagrant-demo)中执行:vagrant up,等待终端输出“Machine booted and ready!”。

2、执行vagrant status,确认显示“current”状态,表示虚拟机正在运行。

3、执行vagrant ssh,即可通过内置SSH客户端登录虚拟机内部(Windows需确保已安装OpenSSH客户端或使用Git Bash)。

五、常用管理操作与配置增强

除基础启停外,Vagrant支持挂载本地目录、配置端口转发、修改内存/CPU资源等,这些均通过编辑Vagrantfile实现,无需手动干预VirtualBox界面。

1、在Vagrantfile中取消第32行左右的注释:config.vm.synced_folder “./data”, “/vagrant_data”,保存后执行vagrant reload使挂载生效。

2、为支持Web服务访问,在Vagrantfile中添加:config.vm.network “forwarded_port”, guest: 80, host: 8080,之后在虚拟机中运行Python简易HTTP服务(python3 -m http.server 80),即可通过宿主机浏览器访问http://localhost:8080。

3、限制资源占用:在Vagrantfile中插入以下内容(位于config.vm.provider块内):vb.memory = “2048” 和 vb.cpus = 2。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。