博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vagrant 入门 - 配置
阅读量:4644 次
发布时间:2019-06-09

本文共 1351 字,大约阅读时间需要 4 分钟。

现在我们已经有了一个运行 Ubuntu 的虚拟机,并且可以在宿主机上编辑文件并自动同步到虚拟机。现在让我们安装一个 web 服务器,通过服务器访问这些文件。

可以通过 SSH 进入并安装一个 web 服务器并开始工作,但每个使用 Vagrant 的人都必须这样做。相反,Vagrant 内置了对自动配置的支持。使用此功能时,Vagrant 将在执行 vagrant up 时自动安装软件,以便 guest 机器可以重复创建并可立即使用。

1. 安装 Apache

可以通过 shell 脚本来为刚才的项目设置 Apache。创建下面的 shell 脚本并命名为 bootstrap.sh,保存在 Vagrantfile 文件相同的目录下:

#!/usr/bin/env bashapt-get updateapt-get install -y apache2if ! [ -L /var/www ]; then  rm -rf /var/www  ln -fs /vagrant /var/wwwfi

然后,配置 Vagrant 在设置机器的时候运行这个脚本。编辑 Vagrantfile 文件:

Vagrant.configure("2") do |config|  config.vm.box = "hashicorp/precise64"  config.vm.provision :shell, path: "bootstrap.sh"end

“provision” 行是新添加的,告诉 Vagrant 使用 shell 命令执行 bootstrap.sh 文件来设置虚拟机。文件路径是相对于 Vagrantfile 文件所在的项目根目录的相对路径。

2. 配置

配置写完后,执行 vagrant up,Vagrant 会自动配置。可以在终端看到 shell 脚本的输出。如果虚拟机已经启动了,则需要执行 vagrant reload --provision,这会快速重启虚拟机并跳过初始化导入阶段。因为 Vagrant 只会在第一次 vagrant up 启动虚拟机的时候自动运行 provisioner,所以需要在 reload 命令中使用 provision 标志指示 Vagrant 必须运行 provisioner。

Vagrant 运行结束后,web 服务器会成功运行。现在还不能在宿主机的浏览器上查看网页,但可以在通过 SSH 进入虚拟机后,通过加载文件来判断配置是否生效:

$ vagrant ssh...vagrant@precise64:~$ wget -qO- 127.0.0.1

上面例子会正常工作。我们安装 Apache 并设置其默认的 DocumentRoot 指向我们的 /vagrant 这个默认的同步目录。

可以创建更多文件并在终端查看,下一步需要配置网络选项以便用宿主机的浏览器访问虚拟机。

对于复杂的配置脚本,将自定义的 Vagrant box 与预先安装的软件包打包在一起,而不是每次构建它们可能会更高效。入门指南未涵盖此主题,但可以在 文档中找到该主题。

转载于:https://www.cnblogs.com/kika/p/10851666.html

你可能感兴趣的文章
Elgg网站迁移指南
查看>>
素数筛法优化
查看>>
installshield 注册dll
查看>>
Sublime Text 3 及Package Control 安装(附上一个3103可用的Key)
查看>>
LTE QCI分类 QoS
查看>>
Get MAC address using POSIX APIs
查看>>
bzoj2120
查看>>
基于uFUN开发板的心率计(一)DMA方式获取传感器数据
查看>>
【dp】船
查看>>
oracle, group by, having, where
查看>>
⑥python模块初识、pyc和PyCodeObject
查看>>
object-c中管理文件和目录:NSFileManager使用方法
查看>>
Kibana:分析及可视化日志文件
查看>>
nodejs pm2使用
查看>>
cocos2d-x 3.10 PageView BUG
查看>>
装饰器的基本使用:用户登录
查看>>
CSS选择器总结
查看>>
mysql中sql语句
查看>>
head/tail实现
查看>>
sql语句的各种模糊查询语句
查看>>