@Voindf

Как пробросить имя хоста в Docker?

Здравствуйте
написал простейший сервачок
const http = require("http");

http
  .createServer(function (request, response) {
    response.end("Hello from server world!");
  })
  .listen(3000);

и докерфайлик
FROM node:16
COPY . .
WORKDIR /

EXPOSE 3000

CMD ["node", "server.js"]

после docker build . -t test/0.0.0.0
и docker images
docker run -p 3000:3000 containerIdHere
сервачок доступен как на localhost:3000 так и на 127.0.0.1:3000 и почему то даже на всем диапазон ip адрессов после 127, к примеру 127.1.1.1:3000
но если я
добавлю какой либо адресс в код сервачка
const http = require("http");

http
  .createServer(function (request, response) {
    response.end("Hello from 127.0.0.1 dcoker");
  })
  .listen(3000, "127.0.0.1");

то достучатся до сервера никак не получается хотя без докера работает
и даже указав -h
тоесть docker run -p 3000:3000 -h 127.0.0.1 b3ea4137b817 не работает...
можно ли заставить докер работать с хостом правильно если указан адрес хоста в сервере
структура проекта действительно только 2 файлика
62f9a254467f9627489526.png
  • Вопрос задан
  • 161 просмотр
Решения вопроса 1
2ord
@2ord
.listen(3000, "0.0.0.0");
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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