Как пробросить порт из встроенной в Windows 10 Ubuntu в саму Windows?

Установил в Windows 10 Ubuntu 18.04, авторизовался в Ubuntu, перешел в папку с Flask проектом, установил все зависимости, запустил сервер. Он доступен стандартно по адресу 127.0.0.1:5000.
Но вот как в Windows открыть запущенное веб приложение в браузере?

Пробовал так:
ssh user_name@<ip_ubuntu_server> -p 5000

Но получаю ответ:
ssh: connect to host <ip_ubuntu_server> port 5000: Connection refused


Не имею опыта в подобном и сложно оценить советы из сети.
Может кто-то подскажет рецепт, или ссылку где подобное объясняется.
Спасибо.
  • Вопрос задан
  • 2587 просмотров
Решения вопроса 1
bingo347
@bingo347
Crazy on performance...
Во-первых, современный wsl поднимает vlan и поэтому localhost (127.0.0.1) будет доступен только из Ubuntu, но не из другой системы wsl и не из винды.
Узнать текущий IP адрес можно многими способами, в том числе:
hostname -I
или
ip addr

Во-вторых, какое отношение имеет ssh к веб серверу? Открывайте в браузере.

По итогу:
- приложение должно слушать не 127.0.0.1 а ip адрес vlan, проще всего слушать все адреса через 0.0.0.0
- открывать нужно в браузере по ip адресу wsl

Можно вот такой скрипт на powershell подготовить:
$wslIP = wsl -- hostname -I
$wslIP = $wslIP.Split(" ")[0]
OpenWith "http://${wslIP}:5000/"
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
BasiC2k
@BasiC2k
.NET developer (open to job offers)
Как обычно я поступаю в таких случаях:
- Разворачиваю дистрибутив (например Ubuntu) в виртуальной машине. Например - в VMWare;
- Настраиваю всё что необходимо в виртуалке, в настройках VMWare устанавливаю сетевое соединение "мост". В этом режиме домашний роутер будет видеть Ubuntu как ещё одну физическую машину. Следовательно Ubuntu получит свой IP адрес в домашней сети. Вот по этому адресу и можно обращаться к этой виртуальной машине.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы