Vagrant基础使用方法

一、Vagrant简介

Vagrant是一个比较流行的虚拟机管理软件,使用Vagrant 可以让我们用命令直接从云上下载虚拟机的镜像,然后进行创建和管理等,vagrant集成了主流的虚拟机管理工具vmvare 和 virtualbox,默认使用virtualbox
vagrant 的精髓在一个 Vagrantfile 里面,和 docker 的 Dockerfile 功能上一样。我们只需要把需要安装部署的步骤写在 Vagrantfile 里面,便可以实现轻松部署。vagrant 还支持把当前系统做成一个.box 后缀命名的镜像,类似 docker 的 image,可轻松实现环境的移植。
vagrant 可以把配置好的环境打包成一个box,分享给其他人直接使用。
在容器流行之前,Vagrant 就是用来编排虚机和自动部署开发环境的,有了 Docker/Kubernetes 之后,直接用容器来编排应用确实更简单。但是还有一些工作,例如容器平台自身的安装,多节点集群的部署测试等,更方便用虚拟机解决。
在这里插入图片描述

二、安装Virtualbox

1. 安装目录

推荐安装到 D:\java…

2.配置

在这里插入图片描述

三、安装Vagrant

1.下载

下载链接: Vagrant
注意Vagrant没有图形界面,所以安装后也没有桌面快捷方式。

2.安装

推荐安装目录d:\java…

3.配置

vagrant的box默认下载用户的宿主目录\vagrant_box

四、安装centos7虚拟机

1.下载box

可以在 http://www.vagrantbox.es/这里下载更多不同系统甚至是已经配置好环境直接可以用的box,虽然可以直接在Vagrant直接使用网址,由Vagrant自动下载安装,但是考虑到网络情况,还是建议自行先下载好。
centos 7.2网盘地址:链接:https://pan.baidu.com/s/1ETvLampUodgfkNtK8fX2WQ
提取码:p5hg

2.Vagrantfile文件

2.1 初始化配置文件

创建目录 D:\java\virtual\v1\

在目录中执行

vagrant init centos

产生配置文件

2.2 修改Vagrantfile配置文件

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  (1..1).each do |i|
    config.vm.define vm_name = "v#{i}"  do |config|
        config.vm.provider "virtualbox" do |v|
            v.customize ["modifyvm", :id, "--name", vm_name]
	    v.customize ["modifyvm", :id, "--memory", "8192"]
            v.customize ["modifyvm", :id, "--cpus", "2"]
        end
        config.vm.box = "centos_v1"
        config.vm.hostname =vm_name
        config.ssh.username = "root"
        config.ssh.password = "vagrant"
							#		config.ssh.shell = "powershell"
							#config.ssh.shell = "bash -l"
        config.vm.network :private_network, ip: "192.168.56.8#{i}"
	config.vm.provision :shell, :path => "bootstrap.sh"
    end
  end
end

在这里插入图片描述

2.3 准备好boortstrap.sh脚本文件

#!/usr/bin/env bash

# The output of all these installation steps is noisy. With this utility
# the progress report is nice and concise.

echo "Update /etc/hosts"
cat > /etc/hosts <<EOF
127.0.0.1       localhost

192.168.56.81 v1

EOF

echo "Disable iptables"
setenforce 0 >/dev/null 2>&1 && iptables -F

### Set env ###
echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

在这里插入图片描述

3.准备box

3.1 列表本地box

d:\Java\virtual\v1>vagrant box list
There are no installed boxes! Use `vagrant box add` to add some.

3.2 添加box

d:\Java\virtual\v1>vagrant box add centos_v1 ./centos_v1.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'centos_v1' (v0) for provider:
    box: Unpacking necessary files from: file://d:/Java/virtual/v1/centos_v1.box
    box:
==> box: Successfully added box 'centos_v1' (v0) for 'virtualbox'!

3.3 查看本地box列表是否添加成功

d:\Java\virtual\v1>vagrant box list
centos_v1 (virtualbox, 0)

4.安装虚拟机

4.1 安装

#必须在vagrantfile所在的目录安装
vagrant up

4.2 测试

使用MobaXterm连接刚才安装的1个服务器192.168.56.81

ip addr #查看ip地址
hostname #服务器名

5.常用指令

5.1 启动

#启动Vagrantfile(s1,s2,s3)配置所有虚拟
vagrant up

#启动具体一个虚拟机
vagrant up s1

5.2 关闭

vagrant halt #关闭所有

vagrant halt s1

6.自定义box

安装了java开发环境
● JDK
● Mysql
● redis
● Elasticsearch
● RocketMQ
● mion
● …
能不能把已安装的虚拟机打包成一个自定义的box,分我们分享管理我们的虚拟机?

6.1 安装vim

标准的虚拟机box没有vim

yum install vim -y

6.2 关闭虚拟机

打包当前虚拟机,产生一个自定制的box

#关闭当前虚拟机
vagrant halt

6.3 打包虚拟机

#打包当前虚拟机
d:\Java\virtual\v1>vagrant package --base v1 --output centos_v2.box
==> v1: Exporting VM...
==> v1: Compressing package to: d:/Java/virtual/v1/centos_v2.box

6.4 删除现有的虚拟机

vagrant halt
vagrant destroy # 删除所有的虚拟机
vagrant destroy v1 #删除s1

d:\Java\virtual\v1>vagrant destroy
    v1: Are you sure you want to destroy the 'v1' VM? [y/N] y
==> v1: Destroying VM and associated drives...

6.5 把centos_v2添加到vagrant中

#列表
d:\Java\virtual\v1>vagrant box list
centos_v1 (virtualbox, 0)

#添加
d:\Java\virtual\v1>vagrant box add centos_v2 ./centos_v2.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'centos_v2' (v0) for provider:
    box: Unpacking necessary files from: file://d:/Java/virtual/v1/centos_v2.box
    box:
==> box: Successfully added box 'centos_v2' (v0) for 'virtualbox'!

#列表
d:\Java\virtual\v1>vagrant box list
centos_v1 (virtualbox, 0)
centos_v2 (virtualbox, 0)

6.6 修改Vagrantfile文件,设置box使用centos_v2在这里插入图片描述

6.7 使用已经安装vim的box安装新的虚拟机

vagrant up 

进入虚拟机查看vim,已经安装好了

7.命令和配置文件

详细的命令文档参考官网

https://developer.hashicorp.com/vagrant/docs/cli/package

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想在m1上使用Vagrant,可以按照以下步骤进行操作: 1. 首先,您需要在m1上下载并安装Vagrant。您可以从官方网站下载Vagrant的安装程序。根据您的操作系统选择正确的版本并进行安装。 2. 安装完成后,您可以使用Vagrant来创建和管理虚拟运行环境。Vagrant是一个基于虚拟化技术的虚拟运行环境管理工具,可以帮助您快速构建和管理虚拟机。 3. 在使用Vagrant之前,您需要选择一个虚拟机提供程序,例如VirtualBox或VMware。这些提供程序可以让您在m1上创建和运行虚拟机。 4. 安装并配置虚拟机提供程序后,您可以使用Vagrantfile来定义和配置虚拟机。Vagrantfile是一个文本文件,其中包含了虚拟机的配置信息,例如操作系统、网络设置等。 5. 编写完Vagrantfile后,您可以使用vagrant命令来创建和管理虚拟机。例如,您可以使用"vagrant up"命令来启动虚拟机,使用"vagrant halt"命令来关闭虚拟机,使用"vagrant ssh"命令来登录到虚拟机等。 总结起来,要在m1上使用Vagrant,您需要下载并安装Vagrant,选择一个虚拟机提供程序,编写Vagrantfile来配置虚拟机,然后使用vagrant命令来管理虚拟机。这样就可以利用Vagrant快速构建和管理虚拟运行环境了。 [3 [1<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [MAC(m1)-Vagrant下载安装](https://blog.csdn.net/ZHOU_VIP/article/details/128540117)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值