Режим разработки Consul не может видеть пользовательский интерфейс с помощью Vagrant - PullRequest
1 голос
/ 04 августа 2020

Я запустил агент консула в режиме разработки, используя следующее внутри виртуальной машины с помощью Vagrant. Я использовал команду consul agent -dev

. Я подтвердил, что пользовательский интерфейс работает нормально, выполнив завиток на 8500. curl http://localhost:8500/ui

Однако, когда я тестирую с хост-машины, используя curl http://172.28.128.3:8500/ui Я получаю следующую ошибку.

curl: (7) Failed to connect to 172.28.128.3 port 8500: Connection refused

В чем может быть ошибка. Ниже приведен мой VagrantFile


# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
  config.vm.network "private_network", type: "dhcp"
end

Я могу видеть следующее, когда делаю vagrant ssh.

  System load:  0.07              Processes:             99
  Usage of /:   13.5% of 9.63GB   Users logged in:       0
  Memory usage: 12%               IP address for enp0s3: 10.0.2.15
  Swap usage:   0%                IP address for enp0s8: 172.28.128.3

Когда я делаю следующее nc -vz 172.28.128.3 8500 на моем хосте ma c Я получаю ошибку

nc: connectx to 172.28.128.3 port 8500 (tcp) failed: Connection refused

1 Ответ

0 голосов
/ 08 августа 2020

Существует несколько способов предоставить хосту работающий пользовательский интерфейс Consul agent в поле.

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
  config.vm.network "private_network", type: "dhcp"
  config.vm.network "forwarded_port", guest: 8500, host: 8500
end

Услуга будет доступна по адресу http://localhost:8500/ui.

Действуйте осторожно, так как это открывает хосту всю коробку.

Vagrant.configure("2") do |config|
  config.vm.network "public_network", ip: "192.168.0.17"
end
vagrant connect

Полученный в результате Stati c IP можно использовать вместе со служебным портом.

...