vagrant的学习 之 打包分发

Posted gyfluck

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vagrant的学习 之 打包分发相关的知识,希望对你有一定的参考价值。

vagrant的学习 之 打包分发


 

一、打包Box:

(1)关闭虚拟机。

vagrant halt

(2)打包:

vagrant package

这样打包出来的文件叫package.box。

指定生成的包名字:

vagrant package --output ubuntu.box

二、升级Box:

老用户,可以修改 Vagrantfile文件,

新用户,直接使用新的box文件。

修改vagrantfile,找到这段代码:

# config.vm.provision "shell", inline: <<-SHELL
  #   apt-get update
  #   apt-get install -y apache2
  # SHELL
end

例如本机新增了redis服务,打开注释,增加安装redis的命令:

config.vm.provision "shell", inline: <<-SHELL
  #   apt-get update
  #   apt-get install -y apache2
apt-get install -y redis-server
SHELL

然后进行重启:

vagrant reload --provision

三、使用打包的box,搭建环境:

vagrant box add ubuntu1404-2 package.box

然后会看到有两个box:

vagrant box list

ubuntu1404   (virtualbox, 0)
ubuntu1404-2 (virtualbox, 0)

然后新建一个目录,例如study2,开始创建:

vagrant init ubuntu1404-2

显示结果:

A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

然后使用vagrant up启动:

vagrant up

如果发生错误,可以打开新生成的Vagrantfile文件调试错误,

找到vb.gui = true,打开注释,注意第一行和end那一行也得打开。

config.vm.provider "virtualbox" do |vb|
  #   # Display the VirtualBox GUI when booting the machine
  vb.gui = true
  #
  #   # Customize the amount of memory on the VM:
  #   vb.memory = "1024"
end

然后执行,vagrant reload,注意打包时需要将ip的设置关闭,否则会报错。

然后启动新生成的虚拟机,查看LAMP和LNMP环境是否正常,配置好IP地址和hosts文件,就可以了,安装完成!


 

以上是关于vagrant的学习 之 打包分发的主要内容,如果未能解决你的问题,请参考以下文章

vagrant box打包前的准备

vagrant 安装

使用 Vagrant + VirtualBox 快速构建 CentOS 下的 Docker 环境

Windows使用Vagrant和Virtual Box安装centos

带有 vagrant 后处理器的打包程序“找不到 ovf 文件”

全面学习 Python 包:包的构建与分发