2016-07-13 69 views
1

我目前正在尝试连接两个流浪环境。一个是具有相关postgres数据库的Web应用程序。另一个是调用第一个流浪机器上的postgres数据库的API应用程序。任何人都可以提供有关如何实现这一目标的建议。我相信我需要更改我的database.yml或envirornment.rb文件,但不太清楚如何。我vagrantfiles和database.yml的文件,目前像这样:连接两个流浪机

前置机Vagrantfile:

Vagrant.configure("2") do |config| 
    config.vm.box = "hashicorp/precise64" 
    config.vm.network "forwarded_port", guest: 3000, host: 3000 
    config.vm.synced_folder "../Base", "/Base" 
    config.vm.synced_folder "../api", "/API" 
end 

前置机的database.yml:

default: &default 
    adapter: postgresql 
    database: chsh 

development: &development 
    <<: *default 
    host: localhost 
    username: username 
    password: password 
    database: database_name 
    pool: 10 

API机:

Vagrant.configure("2") do |config| 
    config.vm.box = "hashicorp/precise64" 
    config.vm.network "forwarded_port", guest: 3002, host: 3002 
    config.vm.synced_folder "../Base", "/Base" 
    config.vm.provider "virtualbox" do |vb| 
    vb.gui = true 
    end 
end 

回答

0

在阅读代码时,我没有看到配置多台机器的方法。

您可以在使用前重新配置绕过这个..

module Vagrant 

    def set(name) 
    send(name) if respond_to?(name) 
    end 

    def front_end 
    Vagrant.configure("2") do |config| 
     config.vm.box = "hashicorp/precise64" 
     config.vm.network "forwarded_port", guest: 3000, host: 3000 
     config.vm.synced_folder "../Base", "/Base" 
     config.vm.synced_folder "../api", "/API" 
    end 
    end 

    def api 
    Vagrant.configure("2") do |config| 
     config.vm.box = "hashicorp/precise64" 
     config.vm.network "forwarded_port", guest: 3002, host: 3002 
     config.vm.synced_folder "../Base", "/Base" 
     config.vm.provider "virtualbox" do |vb| 
     vb.gui = true 
     end 
    end 
    end 
end 

你,然后能够做这样的事:

Vagrant.set(:front_end) 
Vagrant.set(:api) 
+0

凡,我会重新配置呢?这是一个修改过的vagrantfile吗?结构看起来有点不同。 – EamonnMcElroy