谷粒商城学习-07-虚拟机网络设置

文章目录

默认虚拟机的ip地址不是固定的,虚拟机重启后IP就会变化,不便于开发,可以修改配置文件,让虚拟机IP地址固定。

一,找到配置文件Vagrantfile

比如我机器上的文件路径是:C:\Users\Lenovo

Vagrantfile 是 Vagrant 使用的一个核心配置文件,它是一个文本文件,用于定义和管理虚拟机的配置以及与之相关的自动化任务。

二,查询虚拟机网卡地址

cmd中执行 ipconfig 命令查询。

192.168.56.1是虚拟机网卡地址,我们只要在配置文件中把虚拟机的IP设置为这个子网下的地址即可,比如192.168.56.10

如何确定这个地址就是虚拟机网卡的地址呢?

1,查看虚拟机网络配置

右键VirtualBox上要查看的虚拟机,选择设置。

选择左侧的网络,可以看到有个网卡的名称是:

VirtualBox Host-Only Ethernet Adapter

2,查看宿主机网络配置

宿主机即windows机器,在电脑的高级网络设置中可以看到以太网2有如下说明:
VirtualBox Host-Only Ethernet Adapter,和虚拟机设置中的名称一致,说明这个IP地址就是虚拟机网卡地址。

三,修改配置文件下的IP配置

修改如下配置中的ip:

bash 复制代码
config.vm.network "private_network", ip: "192.168.56.10"

四,重新启动虚拟机即可生效

使用 vagrant up 启动虚拟机后,执行命令vagrant ssh连上虚拟机,然后在命令执行命令ip addr查询虚拟机的ip地址。

这里要注意 ,一定要用vagrant up命令启动虚拟机,如果直接在VirtualBox上启动,Vagrantfile配置文件中内容不会生效。

不要在下面界面上直接启动虚拟机。

五,Vagrantfile 的作用

Vagrantfile 是 Vagrant 使用的一个核心配置文件,它是一个文本文件,用于定义和管理虚拟机的配置以及与之相关的自动化任务。由于 Vagrant 是用 Ruby 编写的,因此 Vagrantfile 中的配置语言也是基于 Ruby 的语法,但它并不需要深入的 Ruby 编程知识即可编辑。

Vagrantfile 的作用主要有以下几点:

1,虚拟机定义

  • 指定虚拟机的箱(box)来源,即虚拟机的基础镜像。
  • 配置虚拟机的硬件资源,例如 CPU 数量、内存大小、硬盘空间等。
  • 设置虚拟机的网络接口,如桥接网络或私有网络。

2,自动配置和初始化

  • 执行自动配置脚本或 Ansible playbook,以便在虚拟机启动后进行系统初始化和软件安装。
  • 配置共享文件夹,使宿主机和虚拟机之间能够共享文件。

3,SSH 配置

  • 设置 SSH 登录的用户名、端口和密钥,便于从宿主机访问虚拟机。

4,多虚拟机管理和集群配置

  • 定义多个虚拟机,并指定它们之间的依赖关系,形成一个集群。
  • 配置网络连通性,如设置网络桥接或私有网络,以支持虚拟机间的通信。

5,环境一致性

  • 确保不同的开发者在本地环境中使用相同的配置,提高团队协作效率。
  • 便于在不同环境中复制和部署虚拟化环境,如开发、测试和生产环境。

6,版本控制

  • 通常将 Vagrantfile 文件加入到版本控制系统中,如 Git,这样可以追踪配置的变化历史,也方便团队成员共享配置。

通过 Vagrantfile,开发者可以定义一个可重复使用的虚拟化环境模板,从而简化开发环境的搭建过程,保证团队成员使用的环境一致,降低环境相关的调试和问题排查难度。当修改了 Vagrantfile 后,可以通过执行 vagrant upvagrant reload 命令来应用新的配置并重新启动虚拟机。

相关推荐
wowocpp19 分钟前
ubuntu 22.04 server 格式化 磁盘 为 ext4 并 自动挂载 LTS
服务器·数据库·ubuntu
wclass-zhengge21 分钟前
Netty篇(入门编程)
java·linux·服务器
lulu_gh_yu24 分钟前
数据结构之排序补充
c语言·开发语言·数据结构·c++·学习·算法·排序算法
方方怪27 分钟前
与IP网络规划相关的知识点
服务器·网络·tcp/ip
Re.不晚1 小时前
Java入门15——抽象类
java·开发语言·学习·算法·intellij-idea
weixin_442643421 小时前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
阑梦清川2 小时前
JavaEE初阶---网络原理(五)---HTTP协议
网络·http·java-ee
幼儿园老大*2 小时前
走进 Go 语言基础语法
开发语言·后端·学习·golang·go
Karoku0662 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
半桶水专家2 小时前
用go实现创建WebSocket服务器
服务器·websocket·golang