2016-07-30 107 views
2

我在Ubuntu Linux 14.04上,我正嘗試使用kitchen-vagrant創建一個Centos VM。我想要端口轉發,以便我可以在本地機器上轉發apache tomcat。雖然我已經在他們的文檔中指定了端口號和專用網絡IP,但它並不工作。在我的機器上,我得到「網站無法訪問」。端口轉發不能與Test-Kitchen和Vagrant一​​起工作

--- 
driver: 
    name: vagrant 

provisioner: 
    name: chef_zero 

platforms: 
    - name: centos-6.7 
    network: 
     - ["forwarded_port", {guest: 8080, host: 8080}] 
     - ["private_network", {ip: "192.168.33.33"}] 

suites: 
    - name: default 
    run_list: 
     - recipe[env_rundeck_war::default] 
    attributes: 

當我登錄到虛擬機(kitchen login),我可以對端口訪問的Tomcat 8080

[email protected] $ kitchen login 
... 
[[email protected] ~]$ curl -i localhost:8080 
HTTP/1.1 200 OK 
Server: Apache-Coyote/1.1 
Content-Type: text/html;charset=UTF-8 
Transfer-Encoding: chunked 
Date: Sat, 30 Jul 2016 18:12:23 GMT 

我曾嘗試下driver部分移動網絡設置,但沒有幫助無論是。這似乎是他們如何在documentation上做到的。

回答

3

實際上,network是(廚房流浪者)driver的一個參數。因此,下面的配置是正確的:

platforms: 
    - name: centos-6.7 
    driver_config: 
     network: 
     - ["forwarded_port", {guest: 8080, host: 8080}] 
     - ["private_network", {ip: "192.168.33.33"}] 

你可以看出來Vagrantfile的內容.kitchen/kitchen-vagrant/<suite>/以下行(以加快您的驗證步驟):

c.vm.network(:forwarded_port, {:guest=>8080, :host=>8088}) 

順便說一句。如果您只想轉發端口,則不需要private_network(您可以省略該行)。

相關問題