[部署开发环境][1 vagrant] vagrant部署开发环境--安装vagrant
# 安装教程
# 安装vagrant 教程 # 准备 - windows操作系统 - VirtualBox-5.1.18-114002-Win, - vagrant_1.9.3.msi - 镜像文件https://atlas.hashicorp.com/ubuntu/boxes/trusty64/versions/20161122.0.0/providers/virtualbox.box # 安装流程 - 1先后安装vagrant, virtualBox, 都是next,next.... - 2 cmd命令行执行 a. vagrant box add lzp ubuntu-server-16.04-amd64-vagrant.box 上面条语句是在镜像文件所在目录打开cmd后执行的 (shit+右键---》选择“在此处打开命令窗口” > box: Successfully added box 'lzp' (v0) for 'virtualbox'! -- 相当于给虚拟机ubuntu命名为lzp b. vagrant init lzp 初始化后会生成一个文件vagrantfile: A `Vagrantfile` has been placed in this directory. - 3 编辑vagrantfile -- # config.vm.network "private_network", ip: "192.168.33.10" 把这句注释符#删掉,表示宿主可以通过ssh访问该台虚拟机, 虚拟机的ip为192.168.33.10 -- # config.vm.synced_folder "../data", "/vagrant_data" 把这句注释符删掉,表示本地目录/data和虚拟机vagrant_data的一个映射,相当于在虚拟机挂载目录(/vagrant_data) 存放本地 ../data的内容,而且是同步的。 "data"无论你用先对还是绝对路径,请用你本地操作系统识别的目录: 我的是windows, 所以改成 config.vm.synced_folder "share_data", "/vagrant_data" # 在vagrant up成功页面可以看到 default: /vagrant => F:/virtual/virtual_ubuntu default: /vagrant_data => F:/virtual/virtual_ubuntu/share_data 相当于做了两个映射: 本地F:/virtual/virtual_ubuntu ---> /vagrant 本地F:/virtual/virtual_ubuntu/share_data ---> /vagrant_data -- # 设置虚拟内存 config.vm.provider "virtualbox" do |vb| # Display the VirtualBox GUI when booting the machine vb.gui = true # 这个表示启动的开启ui界面,这个可以注释掉,可以节省部分空间;但这个有助于调试;出现错误的时候最好打开 # # # Customize the amount of memory on the VM: vb.memory = "1024" end # 安装遇到错误 - 1 vagrant up 错误 Stderr: VBoxManage.exe: error: VT-x is disabled in the BIOS for all CPU modes (V ERR_VMX_MSR_ALL_VMX_DISABLED) -- 应该是BIOS禁止了虚拟技术,开启即可。 -- F2进入BIOS,Configuratio > Intel Virtual Technology > Enabled;.F10保存BIOS设置并重启电脑。 # 常用命令 vagrant up vagrant halt vagrant reload vagrant package # 打包,然后拷贝压缩文件package.box给同事,就可以用了 # 登录虚拟机 -- 我启动vagrant的时候 default: SSH username: vagrant default: SSH auth method: private key 默认为秘钥登录,而不是密码登录,所以如果采用xshell ssh登录的话,在执行ssh vagrant@127.0.0.1 2222之前,先vagrant ssh-config -- vagrant ssh-config - 会生成秘钥private_key IdentityFile F:/virtual/virtual_ubuntu/.vagrant/machines/default/virtualbox/private_key -- 其实这一步,如果你是直接拷贝别人的。重新执行一边vagrant ssh-config就会自动覆盖。 -- ssh vagrant@127.0.0.1:2222 - 输入密码:vagrant