搭建属于你的环境

安装环境有时也是头疼的事,换个电脑就得重装个,还会出现各种兼容问题,vagrant带来很大方便,还支持导出镜像,简直就是移动的系统。降低时间成本,兼容性强,好处多多。安装记录:

安装virtualbox

具体安装包请直接从官网下载:https://www.virtualbox.org/wiki/Downloads

安装 vagrant

下载:https://www.vagrantup.com/downloads.html

安装完成查看版本

$ vagrant -v

vagrant基本命令

vagrant init   #初始化vagrantfile
vagrant add box #添加box,自动生成vagrantfile
vagrant up #启动虚拟机
vagrant halt #关闭虚拟机
vagrant destory #销毁虚拟机
vagrant ssh #进入虚拟机
vagrant reload #重新加载vagrantfile文件
vagrant suspend #暂时挂起
vagrant status #查看虚拟机状态

vagrant 添加系统镜像box

box下载地址: http://www.vagrantbox.es/

$cd /website
$ mkdir -p vagrant/boxes
$ cd vagrant/boxes
$ vagrant add box centos7 centos7-64.box

新建虚拟机

$ cd /website/vagrant
$ vagrant init centos7
$ vagrant up
$ vagrant ssh

相关配置

修改vagrantfile配置

  config.vm.box = "centos7"
config.vm.hostname = "sun" #主机名
config.vm.network "private_network", ip: "192.168.22.20" #私有网络
config.vm.synced_folder "/website", "/home/www", :nfs => true #共享文件夹 开启nfs
#config.vm.network "forwarded_port", guest: 22, host: 2220 #端口映射

重新加载配置

$ vagrant reload

遇到问题

1)

The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed! mount -o vers=3,udp 192.168.22.1:/website /home/www Stdout from the command: Stderr from the command: mount.nfs: access denied by server while mounting 192.168.22.1:/website

虽然vagrant up启动报错,但是vagrant ssh还是能登陆虚拟机的,进入虚拟机后,执行如下命令

sudo rm -f /etc/udev/rules.d/70-persistent-net.rules

问题出在在持久网络设备udev规则(persistent network device udev rules)是被原VM设置好的,再用box生成新VM时,这些rules需要被更新。而这和Vagrantfile里对新VM设置private network的指令发生冲突。

再次启动就没问题了

vagrant ssh 进入虚拟机

2)共享文件夹挂载失败,mac nfs服务启动不了

tee: /etc/exports: Operation not permitted
tee: /etc/exports: Operation not permitted
tee: /etc/exports: Operation not permitted
The nfsd service does not appear to be running.

解决参考:https://github.com/hashicorp/vagrant/issues/10234

centos7虚拟机安装完成!

贴下有道云地址 http://note.youdao.com/noteshare?id=15da919d1a5f5635d71056cdf11f37af

vagrant 安装虚拟机的更多相关文章

  1. Vagrant安装Docker

    ======方法1=========== 一.vagrant安装centos 1.1 什么是vagrant: Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境.它 使用Oracle ...

  2. Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)

    Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...

  3. Vagrant安装配置

    转载自:https://my.oschina.net/u/3424381/blog/888205 Vagrant安装配置 实际上Vagrant只是一个让你可以方便设置你想要的虚拟机的便携式工具,它底层 ...

  4. vagrant 安装笔记

    本文档的编写参考慕课网视频教程,感谢慕课网提供的免费教程 http://www.imooc.com/learn/805 搭建一个环境,不需要重复配置,直接利用vagrant复制就可以了 https:/ ...

  5. Vagrant 创建虚拟机

    Vagrant  创建虚拟机 1. 下载相关软件 虚拟机软件:vmware  virtualbox Vagrant 软件:vagrant cd /tmpwget http://download.vir ...

  6. Virtualbox/Vagrant安装

    它们分别是什么? VirtualBox: 号称是最强的免费虚拟机软件和VM类似. 不仅具有丰富的特色,而且性能也很优异. Vagrant: 是一个基于Ruby的工具,用于创建和部署虚拟化开发环境. 使 ...

  7. vagrant安装centos7

    1. 安装VirtualBox 去官网https://www.virtualbox.org/wiki/Downloads下载最新版的Virtualbox,然后双击安装,一直点击确认完成. 2. 安装V ...

  8. VirtualBox + vagrant 使用虚拟机

    1.VirtualBox下载地址 https://www.virtualbox.org/wiki/Downloads 2.vagrant下载地址 https://www.vagrantup.com/d ...

  9. Vagrant 安装Oracle19c RAC测试环境的简单学习

    1. 学习自网站: https://xiaoyu.blog.csdn.net/article/details/103135158 简单学习了下 能够将oracle RAC开起来了 但是 对后期的维护和 ...

随机推荐

  1. C指针总结

    取内容* 从右至左 取地址& 从右至左 同类型指针变量关系运算是有意义的. 指针变量和数组名都表示数组的地址,但是数组名是地址常量. *p++和(*p)++不同.*p++的赋值结果跟*p相同, ...

  2. NPOI excel文件解析

    一.导入excel时要解析文件,我们直接用下面的帮助数来解析就可以了,开始是上使用该类的方法 private void ImportPlanPersonFromExcel(HttpContext co ...

  3. Java - 多线程中的不变性问题

    这篇记录一下保证并发安全性的策略之——不变性. (注意:是Immutable,不是Invariant!) 将一连串行为组织为一个原子操作以保证不变性条件,或者使用同步机制保证可见性,以防止读到失效数据 ...

  4. Asp.NET MVC4 + Ajax 实现多文件上传

    本文转自http://www.cnblogs.com/freeliver54/archive/2013/05/15/3079700.html JS部分测试可以,jQuery部分没有测试先留着 HTML ...

  5. GuavaCache实现堆缓存

    一.缓存 频繁地数据库I/O是很大的负担,而缓存是减少I/O提高性能的银弹. 缓存的实现一般上是以类似map的键值对的形式,并对外提供put和get方法,但缓存空间不能无限扩大,所以它得有一种缓存清除 ...

  6. Error:All flavors must now belong to a named flavor dimension.

    环境 android studio 3.0 错误 Error:All flavors must now belong to a named flavor dimension. 解决 在build.gr ...

  7. 八 SocketChannel

    SocketChannel是一个连接到Tcp网络套接字的通道.可以通过以下两种方式创建SocketChannel: 1.打开一个SocketChannel并连接到互联网上的某台服务器. 2.一个新连接 ...

  8. Docker简单说明

    前段时间工作需要,简单的研究了下docker.侧重点放在docker的镜像定制方面,后续会研究下k8s的使用. Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的 ...

  9. JS实现九九乘法表和时间问候语

    编码 小练习,练习使用循环实现一个九九乘法表 第一步,最低要求:在Console中按行输出 n * m = t 然后,尝试在网页中,使用table来实现一个九九乘法表 <!DOCTYPE htm ...

  10. Angularjs ngTable使用备忘

    项目中用到angularjs的表格ng-table,功能相当强大,像搜索.排序.checkbox.分页.每页表格显示数目等都有.API,demo什么的也只能参考官网了.这里做个备忘,哪天肯定还会用到. ...