问题标签 [vagrant-provision]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 通过包类型指定要安装 Rubygems 的自定义位置
我已将 Ruby 安装在自定义位置(在 Ubuntu 机器上,使用 ruby-install 安装到 /opt/rubies),当涉及到这样的声明时:
gem
它们失败(或安装了错误的 Ruby 版本),因为它在错误的位置 (/usr/bin)寻找 Rubygems 的命令。我可以想到一些可以解决此问题的方法:
- 告诉我要使用
package
哪个版本,但我在文档中gem
没有看到任何内容。 - 将正确的 bin 目录添加到 PATH,但我不知道哪个用户正在运行配置程序,因此不知道在哪里更改 PATH。或者我应该随 Ruby 安装一起更改路径?
- 改为使用
exec
声明。
显然,使用package
非常方便,所以任何继续使用的方式都是我的偏好。任何帮助或见解将不胜感激。
laravel - 有宅基地和 Linux 盒子的流浪者
为什么在 homestead 盒子中生成了一个 yaml 文件,而在诸如精确 64 盒子之类的简单 linux 盒子中却没有生成一个 yaml 文件。
vagrant - 多机 Vagrant 项目未按照文档进行配置
我正在尝试建立一个多机 Vagrant 项目。根据文档(https://www.vagrantup.com/docs/multi-machine/),配置是“由外而内”,这意味着在单个机器块中配置脚本之前执行任何顶级配置脚本。
该项目包含一个 Laravel 项目和一个 Symfony 项目。我的Vagrantfile
样子是这样的:
我有一个web
用于 Laravel 项目的块 ( ),其中我复制了基于 Homestead 的内容Vagrantfile
,以及一个api
使用“标准”Vagrant 配置的块。
为了引导项目,我创建了一个简单的 shell 脚本 ( init.sh ),它只是将 Git 存储库克隆到 git-ignored 目录中。鉴于文档说配置由外而内工作,因此我希望该脚本能够运行,然后是特定于机器的块,但这似乎没有发生。相反,在 上vagrant up
,我收到以下错误:
这台机器的配置有错误。请修复以下错误并重试:
vm:
* 必须指定一个框。
在运行 shell 脚本之前,它似乎仍在尝试配置单个机器。我知道 shell 脚本没有被调用,因为我echo
向它添加了一条语句。相反,终端只输出以下内容:
将机器 'web' 与 'virtualbox' 提供程序一起使用...
将机器 'api' 与 'virtualbox' 提供程序一起使用...
那么我怎样才能让 Vagrant 先运行我的 shell 脚本呢?我认为它失败了,因为该web
组正在检查我的web/Homestead.yaml文件是否存在,如果存在,请使用其中的值进行配置(包括框名称),但由于我的 shell 脚本尚未运行并且没有克隆了该文件不存在的存储库,因此没有box
指定,这是 Vagrant 抱怨的。
vagrant - Vagrant 从 Oracle 安装 Java6SDK
最近刚刚下载了 Oracle JavaSDK 6 (6u45)。
想知道如何做一个shell设置来安装.bin
Oracle提供的文件。我知道有更好的选择(在线存储库),但这些会消耗时间,而且我仅限于使用 JavaSDK 6,因为我正在复制的服务器需要我使用 Java6。
任何提示如何通过外壳配置来完成?
linux - 在 Vagrant 上配置期间如何以其他用户身份执行命令?
Vagrant
在提供期间执行我的脚本root
。但是我想在配置期间以另一个用户的身份执行一些命令。这就是我目前的做法:
但我想让它变得更好,像这样:
这可能吗 ?谢谢!
shell - Vagrant 将默认 webroot 从 /var/www 更改为 /var/www/app/web-suite/ shell 脚本
我正在提供来自 的索引/var/www/app/web-suite/
,而不是/var/www/
当我尝试访问该框(即:)时,我无法弄清楚如何将其默认设置为该位置192.168.33.10
,我当前的配置脚本如下:
ruby - 如何使用 Ruby 模板 Vagrantfile?
我有几个Vagrantfile
,每个都有不同的provider
,因为Vagrant
有一个限制,不允许同时使用相同的两个或多个规定Vagrantfile
。所以,我分成两个或多个Vagrantfiles
,但我的“身体”,我的规定脚本对两者都是相同的,唯一改变的是provider
块。
例如:
local_nagios/流浪文件
digital_nagios/流浪文件
我想知道是否可以从中制作模板。或者像这样导入我的公共区域:
我不熟悉Ruby
,所以任何建议将不胜感激!
vagrant - 在 Puphpet/Vagrant 盒子上制作 PHP 使用特定的子版本,例如 7.0.4 与 7.0.5
使用puphpet,典型的 config.yaml php 部分可能如下所示:
我安装了许多其他 PHP 模块,但它的 ioncube 我遇到了问题。
直到早些时候,这是使用 PHP 7.0.4 进行配置的,它似乎有一个用于 Ioncube 加载器的 yum 包。
我只需要重新运行vagrant provision
,现在突然之间我似乎在 PHP 7.0.5 上。
通常没有太大的麻烦,除了现在我遇到了 ioncube 依赖项的问题(ioncube 加载程序对于运行我需要的一些加密的 3rd 方代码至关重要)。
我的问题是:是否可以将 php 锁定到 7.0.4?
version: '704'
不起作用。
也只是为了检查我是否正确理解了错误消息:
欢迎其他建议,我只需要 ioncube loader 处理这个 1 项目,我在这里吗?看起来它适用于所有版本的 php,除了自上次提供以来神奇地出现在我的 php 上的那个。完全有可能我在吠叫错误的树......
elasticsearch - 如何在 Vagrant 中安装和运行 elasticsearch?
我正在尝试在 Vagrant 中安装和运行 Elasticsearch。问题是,当我尝试运行 elasticsearch 时,出现以下错误:
我认为问题在于它没有写权限。当我通过配置安装弹性时,我获得以下权限:
但是当我手动执行相同操作时:
我的流浪文件是: