@HarrisonHDU
2016-05-16T03:30:54.000000Z
字数 1446
阅读 575
服务器
添加 box
vagrant box add box名称(默认是base) box路径(可以是远程)
切换到开发目录,初始化vagrant环境,初始化后会有一个Vagrantfile配置文件
vagrant init box名称(默认base)
启动虚拟机
vagrant up
连接到虚拟机(windows系统可以用第三方工具连接, 默认host=127.0.0.1, port=2222, user=vagrant, password=vagrant)
vagrant ssh
# 初始化
vagrant init
# 显示当前已添加的box列表
vagrant box list
# 删除对应的box
vagrant box remove
#启动虚拟机
vagrant up
# 关闭虚拟机
vagrant halt
# 重启虚拟机(重新加载配置文件)
vagrant reload
# SSH 至虚拟机
vagrant ssh
# 输出SSH连接信息
vagrant ssh-config
# 查看虚拟机运行状态
vagrant status
# 销毁当前虚拟机
vagrant destory
# 打包分发, 会生成一个 package.box文件
vagrant package
# 挂起当前虚拟机
vagrant suspend
# 恢复挂起状态
vagrant resume
主要包含三个方面配置:虚拟机配置、SSH配置、Vagrant配置
# box配置
# 控制vagrant要去启动哪个box,box来自vagrant init时指定的box
config.vm.box = "base"
# 网络配置
# 三种方式进行网络连接:
# 端口映射(默认)
# 私有网络(host-only), 只有本机可以通过指定IP访问
config.vm.network :private_network, ip: "192.168.33.10"
# 公有网络(桥接模式)
config.vm.network "public_network"
# host配置
# hostname非常重要,当有多台服务器需要用hostname区分
config.vm.hostname = "go-app"
# 同步目录配置
# /vagrant目录默认就是当前的开发目录,在虚拟机开启时自动挂载同步。也可以通过配置设置额外的同步目录,第一个参数是主句目录,第二个是虚拟机挂载目录
config.vm.synced_folder "/Users/astaxie/data", "/vagrant_data", [type: "sshfs"]
# 端口映射
# 下面这行配置的意思:把对host机器上8080端口的访问请求forward转发到虚拟机的80端口的服务上
config.vm.network :forwarded_port, guest: 80, host: 8080