vagrant+virtualbox

------------------- virtualbox + vagrant -----------------

参考:
	https://www.cnblogs.com/vishun/archive/2017/06/02/6932454.html

下载 virtualbox,vagrant
	https://www.vagrantup.com/downloads.html
	https://www.virtualbox.org/
	或者:
	https://releases.hashicorp.com/vagrant/1.9.5/vagrant_1.9.5.msi
	http://download.virtualbox.org/virtualbox/4.3.40/VirtualBox-4.3.40-110317-Win.exe

vagrant文档
	https://www.vagrantup.com/docs/synced-folders/nfs.html

virtualbox镜像地址
	http://www.vagrantbox.es/

直接安装即可,需重启

vagrant -v

安装ssh
	https://www.mls-software.com/files/setupssh-7.7p1-1.exe
	直接安装
	重新打开命令行终端
	ssh

vagrant 基本操作

将镜像添加到vagrant系统
	vagrant box add {title} {url}
	vagrant box add centos7.2 D:\box\vagrant-centos-7.2.box
	// title  命名
	// url    可以是网络地址,本地已下载的镜像文件

	D:
	mkdir vagrant_project
	cd vagrant_project
	mkdir centos72-1
	cd centos72-1
初始化
	vagrant init centos7.2
启动虚拟机
	vagrant up
连接虚拟机
	CMD终端:
		vagrant ssh
		或者:
		ssh vagrant@127.0.0.1 -p 2222     密码vagrant
	Xshell终端:
		ssh vagrant@127.0.0.1 2222        密码vagrant
		或者
		xshell手动创建连接来实现连接
	默认是以vagrant账号登陆,权限有限,切换到root
		su root
		密码:vagrant
		yum -y install httpd
		
退出连接
	ctrl+d

启动过程中会输出ssh连接参数,并尝试连接,如果自动连接失败,可使用xshell来手动连接
	Host: 127.0.0.1
	Port: 2222
	Username: vagrant
	Private key: D:/vagrant_project/centos72-1/.vagrant/machines/default/virtualbox/private_key

	
停止虚拟机
	vagrant halt
虚拟机状态
	vagrant status
重启
vagrant reload

Vagrantfile配置文件
一、端口映射
	config.vm.forwarded_port 80, 8080
	作用是将虚拟机的80端口映射到主机的8080端口上,那我直接访问主机的8080端口就相当于访问虚拟机的80端口
二、私有网络
	config.vm.network "private_network", ip: "192.168.33.10"
	只有主机才能访问虚拟机,主句局域网内成员不能访问的虚拟机的内容
	上述设置完成后,在本机可以通过192.168.33.10来访问虚拟机,需要注意192.168.33.10虽然可以随便设定,但如
	果主机的ip为192.168.1.xxx字段,那就不要这个再用这个区段,可以2.xxx或3.xxx或其它,以免造成冲突。
三、共有网络
	config.vm.network "public_network", ip: "192.168.1.120"
	主机局域网内成员可以访问虚拟机中的内容,虚拟机相当于局域网内的一员
	以上配置一般来说开发环境也不需要局域网内成员访问,所以大部分情况下是选择用b、私有网络来开发,这个可根据实际情况来选择。
四、共享目录
	#禁用原有的默认的共享目录
	config.vm.synced_folder '.', '/vagrant', disabled: true
	#增加新的共享目录,第二个参数以当前文件夹为基准
	config.vm.synced_folder "abc", "/www/web/abc",
	上方相当与windows下的vagrant_project/abc文件夹对应linux下的/www/web/abc文件夹
五、打包镜像
	vagrant package
	生成一个package.box的文件,这个就是已经包含安装环境的镜像了
上一篇:使用Scotch Box / Vagrant使PHP 7在Apache而不是5.6上运行


下一篇:docker swarm 集群搭建