2016-07-30 7 views
2

Я нахожусь на Ubuntu Linux 14.04, и я пытаюсь создать виртуальную виртуальную машину Centos, используя кухонный брандмауэр. Я хочу перенаправление портов, чтобы я мог пересылать apache tomcat на свою локальную машину. Он не работает, хотя я указал номер порта и IP-адреса частной сети, как в их документации. На моей машине я получаю «сайт недоступен».Пересылка порта, не работающая с тест-кухней и бродягой

--- 
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: 

При входе в VM (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}) 

Btw. вам не нужен private_network, если вы хотите только переслать порт (вы можете опустить эту строку).

Смежные вопросы