用Mac上的Vagrant + VirtualBox来搭建Linux环境

首先

我将记录在Mac上使用Vagrant + VirtualBox构建CentOS7环境的步骤。

建立方式

1. 安装Vagrant.

从官方网站的Downloads页面下载并安装dmg文件。

screencapture-vagrantup-downloads-html-2020-02-29-00_01_13.png (455.7 kB)

2. 安装Virtual Box

由于Vagrant不包含虚拟化软件,因此需要安装Virtual Box。
在Mac上,可以从OS X hosts进行安装。

screencapture-virtualbox-org-wiki-Downloads-2020-02-29-00_04_14.png (1.1 MB)

3. 添加一个新的盒子

在安装完成Vagrant和Virtual Box之后,我们需要添加一个作为环境基础的box。
在 https://www.vagrantbox.es/ 上搜索CentOS并找到CentOS7.0.0的仓库URL进行复制,然后按照以下方式添加box。
这次我们将其命名为CentOS7并进行添加。

# 例: $ vagrant box add {仮想マシンの名前} {boxのURL}
$ vagrant box add CentOS7 https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box

4. 创建虚拟机

首先创建一个适当的目录。
本次创建CentOS7。

$ mkdir CentOS7

如果能够创建目录,则切换到创建的目录并执行Vagrant的init命令来初始化。

# 作成したディレクトリに移動
$ cd CentOS7
# 仮想マシンを初期化
# vagrant init {boxをaddしたときにつけた仮想マシンの名前}
$ vagrant init CentOS7

过一段时间后,在该目录下会生成一个名为Vagrantfile的文件。
在这里,您可以编写虚拟机的配置信息。

5. 修改 Vagrantfile

IP地址设置

首先,设置虚拟机的IP地址。

#config.vm.network "private_network", ip: "192.168.33.10"
#35行目付近に↑のような感じでコメントアウトされているので#を消してコメントアウトを解除してあげる
config.vm.network "private_network", ip: "192.168.33.10"

与虚拟机共享Mac文件

在Vagrantfile的最后一行的end之前,将设置写入以便在主机(mac)和虚拟机之间进行共享。

config.vm.synced_folder"~/CentOS7","/vagrant",owner:'vagrant',group:'vagrant',mount_options:['dmode=777', 'fmode=777']

這裡不會提供詳細解釋,但這表示主機(mac)端的CentOS7和虛擬機的/vagrant目錄共享。

启动虚拟机并进行访问。

完成编写Vagrantfile后,运行以下命令以启动虚拟机。

$ vagrant up

等待一段时间后,启动将完成,请执行以下命令登录到虚拟机。

$ vagrant ssh

如果能够访问,执行命令 “cat /etc/redhat-release” 并获得与下面相同的结果,则表示成功。

[vagrant@localhost ~]$ cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)

当您想要从虚拟机退出时,
执行exit命令以登出。

停止虚拟机

使用halt命令停止虚拟机。

$ vagrant halt
==> default: Attempting graceful shutdown of VM...

我会确认是否已经成功停止了。

$ vagrant status
Current machine states:                                    

default                   poweroff (virtualbox)            

The VM is powered off. To restart the VM, simply run `vagrant up`     

虚拟机已经关机了,看起来正常停止了。

总结

使用以下3个命令可以通过命令行启动虚拟机、访问虚拟机和关闭虚拟机。

接下来,在虚拟机中安装各种软件包来建立开发环境。这次只是关于环境设置的简介。

广告
将在 10 秒后关闭
bannerAds