2013-06-20 68 views
4

我一直在努力尝试使用Vagrant连接到一个centos 6.4 vm。 我使用salt作为配置代理,并且已成功安装了apache,php,mysql包。 当我ssh进入框中apache运行良好。我加在/ var/WWW的index.html文件和我得到的内容回来时,我蜷本地主机:80在Mac OS X Lion上运行流浪端口

Vagrant.configure("2") do |config| 
    ## Chose your base box 
    config.vm.box = "centos63" 
    config.vm.box_url = "" 

    ## For masterless, mount your salt file root 
    config.vm.synced_folder "salt/roots/", "/srv/" 


    ## Use all the defaults: 
    config.vm.provision :salt do |salt| 
    salt.verbose = true 
    salt.run_highstate = true 
    salt.minion_config = "salt/minion" 
end 
end 

Vagrant::Config.run do |config| 
config.vm.forward_port 80, 8080 
config.vm.share_folder "mypath", "/var/www/leo", "." 
end 

我跑须藤lsof的-i:我的本地机器上8080,没有给我结果。我还使用iptables -F清除了访客机器中的iptable配置。当我蜷缩客机

curl -v 'localhost:8080'        
* About to connect() to localhost port 8080 (#0) 
* Trying ::1... 
* Connection refused 
* Trying 127.0.0.1... 
* Connection refused 
* Trying fe80::1... 
* Connection refused 
* couldn't connect to host 
* Closing connection #0 
curl: (7) couldn't connect to host 

我是否需要安装客人补充?我环顾四周如何安装,但我不确定它是否必须安装在主机或来宾。不知道还有什么要尝试。

回答

0

我将客人端口更改为5656,它工作。当运行lsof -i:8080时,我没有看到任何结果,所以我想没有什么是使用该端口,也许我错了。

3

你在这里试图做的是不可能仅仅使用流浪者而不运行流浪者为root。你可以运行流浪作为root我相信但VirtualBox不会同意这一点。您可以继续使用端口号,或者如果您想要或需要使用端口80,则有一种方法。

我有这个问题,当我的一个客户要求我做一个Wordpress多站点设置。使用Wordpress MS,您不能在URL中使用端口号b/c某些URL映射将无法正常工作。当我发现并且不想回到使用像MAMP这样的程序时,我感到很惊讶。

无论如何,这里有两种方法来达到这个目标(两者都非常困难)。我是Mac用户,所以这些是Mac特定的答案,我会看看是否有Windows版本,并更新我的答案,当我可以测试它确保(见下文,有一种方法)。

路#1(Mac的IP防火墙工具):

在你流浪的文件

config.vm.forward_port 80, 8080 
config.vm.forward_port 443, 8443 

那是非常正常的。

现在打开终端,你可以使用ipfw的实用

sudo ipfw add 100 fwd 127.0.0.1,8080 tcp from any to me 80 
sudo ipfw add 101 fwd 127.0.0.1,8443 tcp from any to me 443 

现在cmd是不是永久性的,所以你必须,如果你重新启动你的机器重新运行CMD。你可以永久使用它,我在下面包含一个链接,它将解释#1的其余部分。

Web Development on Port 80 and 443 in Vagrant

路#2(苹果POW和砧):

如果你不具备战俘的是,得到它!这是一个非常酷的应用程序。 安装Pow和Anvil,你可以在那里找到Anvil,你可以在那里找到Pow

您可以阅读关于如何设置这些文档的文档,但不注意“静态”和“机架”网站部分,您需要this部分。

您将使用通过Pow的端口代理从mycoolsite接收流量。dev,然后将其转发到虚拟机mycoolsite.dev:8080,然后虚拟机将8080转发到80,并备份内容将要到达的行。

在安装砧/战俘,并让他们建立了运行这行:

echo 8080 > ~/.pow/mycoolsite 

然后单击铁砧在任务栏(您可能需要刷新或关闭并重新打开),然后打开网站那就是它,什么?真?战俘和铁砧摇滚!

所以我发现有两种方法,我确定你可以用你的主机文件做一些事情,我曾经这样做过。但是,这些可用的其他方式确实可以让您轻松忘记那些讨厌的hosts文件。

注意Windows用户(以及不喜欢前2种方式的Mac用户):您可以使用Vagrant Host Manager,您可以了解如何将其设置为here on github。这是一个无用的插件,基本上会为你编辑你的hosts文件,你所做的只是你的vagrantfile配置,而且你很好。我只是在Windows 7上测试它,它在那里工作,所以它应该是好的,如果你有任何问题,只需查看github上的文档或向Vagrant Host Manager团队提交问题以供审查。