@Boris007

Как правильно поднимать Docker на WSL Ubuntu и подключаться к нему из браузера в Windows?

Есть докер файл, который находится в WSL Ubuntu
FROM node:20
WORKDIR /app
COPY package*.json .
RUN npm install
COPY . .
CMD ["npm", "run", "dev"]
EXPOSE 5173


Собрал
docker build -t test .

Запустил
docker run -p 5173:5173 test

Выдало сообщение в консоли
> react@0.0.0 dev
> vite


  VITE v4.4.9  ready in 544 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose


В Windowsиз браузера делаю запрос на http://localhost:5173/

Выдает классическую ошибку, когда сервер не запущен
Страница недоступна
Сайт localhost не отправил данных.
ERR_EMPTY_RESPONSE


Как мне запустить на WSL Ubuntu Docker образ так, чтобы я мог из браузера в Windowsподключиться к серверу http://localhost:5173?
  • Вопрос задан
  • 375 просмотров
Пригласить эксперта
Ответы на вопрос 1
@maximq
QA Engineer
При использовании дистрибутива WSL 1, если к компьютеру можно получить доступ из локальной сети, то приложения, работающие в WSL, могут быть также доступны в локальной сети.

Это нетипичная ситуация в WSL 2. В WSL 2 имеется виртуализированный адаптер Ethernet с собственным уникальным IP-адресом. В настоящее время для включения этого рабочего процесса необходимо выполнить те же действия, что и для обычной виртуальной машины.

Ниже приведен пример использования команды Portproxy интерфейса Netsh для добавления прокси-сервера порта, прослушивающего порт узла и подключающего прокси-сервер порта к IP-адресу виртуальной машины WSL 2.
netsh interface portproxy add v4tov4 listenport=<yourPortToForward> listenaddress=0.0.0.0 connectport=<yourPortToConnectToInWSL> connectaddress=(wsl hostname -I)


Источник
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы