amux
@amux
alp.ac

Как правильно прокинуть порт из контейнера в интернет?

Имею сервер на DO со стандартным дроплетом с докером, и докерфайл:

FROM node:carbon

WORKDIR /var/www/node_cz

RUN npm i --global @adonisjs/cli

EXPOSE 3000


Забилдил его в образ и запускаю:
docker run -v /var/www/node_cz:/var/www/node_cz --name node -p 80:3000 -it whata/node-node /bin/bash


Запускаю в нем adonis.js на 3000 порт, но так и не могу к нему интернета подключиться...
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
amux
@amux Автор вопроса
alp.ac
Оказалось всё просто, необходимо было запускать апп внутри контейнера на 0.0.0.0:3000, вместо 127.0.0.1:3000.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
docker run -v /var/www/node_cz:/var/www/node_cz --name node -p 80:3000 -it whata/node-node /bin/bash
Вы этой командой заходите во внутрь контейнера. Для запуска его в фоновом режиме вам надо указать флаг detached, т.е. попробуйте вот так:
docker run -d -v /var/www/node_cz:/var/www/node_cz --name node -p 80:3000 whata/node-node


P.S.: В докер файле Вы устанавливаете через RUN глобально npm пакет. Я думаю Вам надо надо еще добавить CMD для запуска node программы.
Ответ написан
Ваш ответ на вопрос

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

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