使用 VirtualBox 制作自己的 Vagrant box
1. 在centos或者ubuntu官网下载新鲜的镜像。(网络不好可以在阿里云或者网易的开源站下载)。
2. 在virtualbox中新建虚拟主机,选择自己需要的内存和磁盘大小。

3. 选择下载的系统镜像,点击启动。

4. 选择好需要的设置项,点击左下角的网络和主机名,连接以太网,然后点击开始安装。

5.设置root密码和创建用户

6. 重启虚拟机。

7. 以root账号登陆虚拟机,首先下载三个工具。yum install vim,yum install net-tools,yum install wget。

8.现在可以在虚拟机上面安装你需要的lnmp环境和一些redis,swoole,elasticsearch等软件和扩展。
9.安装完所有的环境和软件后我们需要制作盒子了。执行useradd vagrant 添加 一个用户,passwd vagrant给用户设置密码,建议也设置成vagrant.

10.配置vagrant账号免密操作。在root下面增加一行 vagrant ALL=(ALL) NOPASSWD:ALL 保存退出。执行chmod 0440 /etc/sudoers 恢复默认权限。(默认只读)
chmod 0777 /etc/sudoers
vim /etc/sudoers

11.配置 ssh登陆
执行 yum list installed | grep openssh-server 来坚持是否安装了openssh,如果没有安装请执行yum install openssh-server。
执行vim /etc/ssh/sshd_config,画线的行解开注释。保存退出。

12.下载vagrant官网公钥
cd /home/vagrant && mkdir .ssh
wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub
mv vagrant.pub authorized_keys
修改authorized_keys文件权限 除了属主vagrant以外,group和其他用户都不可写
chmod go-w /home/vagrant/.ssh/authorized_keys
13.共享目录
点击设备---->安装增强功能
执行完毕后关闭虚拟机。
cd / && mkdir cdrom && mount /dev/cdrom /cdrom
cd /cdrom && ./VBoxLinuxAdditions.run
14.配置网络规则
网卡一
网卡二

15.导出盒子
在宿主机上找一块空旷的地方执行下面代码。
vagrant package --base virtualbox虚机中的名字 --output lnmp.box (自己给盒子起的名字)
16.使用自己制作的盒子
vagrant box add centos centos-lnmp.box (添加盒子)
vagrant init centos (初始化盒子)

在vagrantfile中打开这一行的注释 config.vm.network "private_network", ip: "192.168.33.10"
执行vagrant up 如果出现
default: Warning: Connection reset. Retrying...
default: Warning: Connection aborted. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Connection aborted. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Connection aborted. Retrying...
不要慌,等两分钟他自己挣扎一下就好了(检测到不安全的密钥,vagrant自己会更换),第一次安装会比较慢,多等几分钟。

然后执行vagrant ssh 顺便执行ifconfig看一下ip地址,没问题的话就可以使用这个地址在shell工具上登陆了。

本作品采用《CC 协议》,转载必须注明作者和本文链接
关于 LearnKu