如何制作一个vagrant box

原文地址:http://blog.163.com/ly_89/blog/static/186902299201412125252320/

虽然这里http://www.vagrantbox.es/已经罗列出了许多个base box,但有些时候,可能根据自身的业务需要一些特殊的box,比如,笔者遇到的,需要一个带桌面环境和浏览器测试用的box,这个在网上可没有找到,无奈之下,只能自己装虚拟机,做一个base box出来,以便使用。本文主要针对ubuntu的base box的制作。

相关的环境我认为还是有需要交代一下:

host(宿主机):ubuntu13.10_Desktop x86_64

virtualbox: http://download.virtualbox.org/virtualbox/4.3.10/virtualbox4.3_4.3.10-93012~Ubuntu~raring_amd64.deb

vagrant: https://dl.bintray.com/mitchellh/vagrant/vagrant_1.5.2_x86_64.deb
相关步骤如下:
1. 在物理机上安装好 ubuntu 系统,在此系统上安装 virtualbox
2. 下载一个需要的 ubuntu 版本的 ISO 镜像
3. 创建一个新的虚拟机
给虚拟机取一个名字 “develop”
确保您分配足够的磁盘空间给虚拟机,我给了 20GB
确保默认的内存也不用太高,给 512M 即可,后续可以再调整
确保网络控制器设置程 NAT 模式,wield了端口转发正常工作(注意:这个是非常重要的一点)
4. 启动虚拟机,安装 ubuntu,确保配置如下(非强制的要求,如果打算分发该 box,建议还是按照如下的步骤来操作)
  • Hostname:develop

  • Domain: vagrantup.com

  • Root Password: vagrant

  • Main account login: vagrant

  • Main account password: vagrant

5.安装完毕后,进入虚拟机

6.根据自己需要,安装一些常用软件

$ sudo apt-get -y install vim

7.创建admin组

$ sudo groupadd admin

8.添加vagrant用户到admin组

$ sudo usermod -G admin vagrant

9.修改sudoers文件

$ sudo vim /etc/sudoers      #添加或修改如下行(有些发行版还需Disable requiretty):

   Defaults env_keep="SSH_AUTH_SOCK"

   %admin ALL=NOPASSWD: ALL

10.安装puppet(chef没有计划装进去,如需要可安装ruby,rubygems,chef)

$ sudo apt-get install puppet puppetmaster

11.安装ssh

$ sudo apt-get install openssh-server

12.安装vagrant的public keys

$ mkdir ~/.ssh/

$ cd ~/.ssh

$ wget http://github.com/mitchellh/vagrant/raw/master/keys/vagrant

$ wget http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub

$ mv vagrant.pub authorized_keys

13.Install virtual box guest additions(为了共享文件夹,端口转发等)

 (1) First, build the necessary packages. You may have to look these up for your system, but they should be fairly similar. On Ubuntu and Debian based systems they are as follows:

  $ sudo apt-get install linux-headers-$(uname -r) build-essential

 (2) Next, make sure to insert the guest additions image by using the GUI and clicking on “Devices” followed by “Install Guest Additions.”. Then run the following to mount the CD Rom:

  $ sudo mount /dev/cdrom /media/cdrom

 (3) And finally, run the shell script which matches your system. For linux on x86, it is the following:

  $ sudo sh /media/cdrom/VBoxLinuxAdditions.run

     If you didn’t install a Desktop environment when you installed the operating system, as recommended to reduce size, the install of the VirtualBox additions should warn you about the lack of OpenGL or Window System Drivers, but you can safely ignore this.

14.清除缓存

  $ sudo apt-get clean

15.关闭虚拟机,进入virtual box directory(~/VirtualBox VM/develop)

  $ vagrant package --output develop.box --base develop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值