谷粒商城学习-06-使用vagrant快速创建linux虚拟机

这一节的内容是在Windows上安装虚拟机。

为什么要按照虚拟机呢?

原因是很多软件只能在Linux下运行,有的虽然也可以在Windows上运行,但从安装到运行会遇到很多问题,为这些解决这些问题花时间对于大多数人特别是初学者是没有什么价值的。

最好的方式就是在自己的Windows机器上安装虚拟机,模拟Linux环境。

如果使用Linux或者Mac开发就不用安装虚拟机。

常见的虚拟机有VMWare和VirtualBox,项目采用了VirtualBox。

一,安装VirtualBox

1,下载VirtualBox

打开VirtualBox官网,找到左侧菜单栏,点击"Downloads"。

点击下图的"Windows hosts"开始下载。

大约105M,不算很大。

2,安装

双击下载的exe文件,即可开始安装,和安装其他软件没什么区别。

一般要修改下安装的目标文件夹,最好装在非系统盘。

不过这一步可能报错:virtualbox invalid directory

原因是VirtualBox新版本不允许安装到系统盘之外的磁盘。

解决办法就是在你想要安装的分区下建一个空的文件夹,然后执行修改权限的命令,比如我创建的文件是D:\virtualbox

注意:安装路径要直接在盘符下面,比如D:\VirtualBox或者E:\VirtualBox,否则就要把所有上级目录的文件权限都改一遍

bash 复制代码
icacls D:\virtualbox /reset /t /c
icacls D:\virtualbox /inheritance:d /t /c
icacls D:\virtualbox /grant *S-1-5-32-545:(OI)(CI)(RX) /t /c
icacls D:\virtualbox /deny *S-1-5-32-545:(DE,WD,AD,WEA,WA) /t /c
icacls D:\virtualbox /grant *S-1-5-11:(OI)(CI)(RX) /t /c
icacls D:\virtualbox /deny *S-1-5-11:(DE,WD,AD,WEA,WA) /t /c

二,安装Vagrant

Vagrant 是一款用于构建和管理虚拟开发环境的工具,它简化了开发环境的一致性配置和分发过程。

通过 Vagrant,开发者可以在本地机器上快速搭建预配置的虚拟机,确保所有团队成员的工作环境相同,消除"在我的机器上能运行"的问题。

总之,使用Vagrant能一键创建虚拟机,让我们专注于Java的学习,避免耗费时间应付各种虚拟机问题。

1,下载Vagrant

点击此处官网下载

如果是64为电脑选择[AMD64]。

如果直接从官网下载可能需要17分钟。

可以在CSDN搜索下载。

2,安装Vagrant

安装非常简单,点击上一步下载的msi文件即可完成安装。

安装完成后需要重启电脑,Vagrant才能正常使用。

3,验证是否安装成功

打开windows的cmd,执行命令 vagrant,如果有以下输出,说明安装成功。

三,使用Vagrant创建虚拟机

1,初始化centos7系统

打开 window cmd 窗口,执行命令 vagrant init centos/7,即可初始化一个 centos7 系统。

执行这个命令后,会在C盘用户目录下创建一个名为"Vagrantfile"配置文件。

2,启动虚拟机

在cmd中执行命令 vagrant up 即可启动虚拟机,系统 root 用户的密码是 vagrant

这个命令的完成需要10分钟左右时间,请耐心等待。

cmd控制台有如下日志,说明虚拟机启动成功。

3,vagrant 其他常用命令

  • vagrant ssh:自动使用 vagrant 用户连接虚拟机。
  • vagrant upload source [destination] [name|id]:上传文件

四,Vagrant使用

1,初始化

使用命令 vagrant init,只需要初始化一次。

2,启动虚拟机

使用命令 vagrant up,虚拟机关机后,重新启动也是使用这个命令。

3,ssh操作虚拟机

使用命令vagrant ssh即可通过ssh连上虚拟机。

相关推荐
mCell34 分钟前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记36 分钟前
GPU运维常见问题处理
linux·运维·gpu
誰能久伴不乏2 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔2 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula2 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-2 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw3 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
_Kayo_3 小时前
VUE2 学习笔记6 vue数据监测原理
vue.js·笔记·学习
chenchihwen3 小时前
大模型应用班-第2课 DeepSeek使用与提示词工程课程重点 学习ollama 安装 用deepseek-r1:1.5b 分析PDF 内容
人工智能·学习
超浪的晨4 小时前
Java UDP 通信详解:从基础到实战,彻底掌握无连接网络编程
java·开发语言·后端·学习·个人开发