Открыть порт 5000?

Вчера я пытался использовать эту команду heroku:

heroku run db:migrate

и после долгого ожидания он сказал, что истекло время ожидания

После многих попыток я погуглил об этом и обнаружил, что, поскольку другие команды дали такой же ответ, проблема заключалась в том, что мой компьютер (или моя сеть?) не открывал порт 5000.

Могу ли я открыть это? Как в Ubuntu?

Если он публикуется для моего провайдера, я где-то читал, что, возможно, я могу внести этот список в белый список: могу ли я сделать это из Ubuntu? Как?

4
задан 28 February 2012 в 19:42

1 ответ

Вы открываете порт с помощью программы. Операционная система предоставляет вам примитивы, что обычно делается на уровне ОС, чтобы позволить порту принимать соединения. Для этого вам может потребоваться настроить брандмауэр или даже SELinux, в зависимости от вашей установки (хотя я не видел стандартной установки Ubuntu, приносящей какой-либо из них). @ Андреа указал, что вам не нужно специального разрешения для программы, если она хочет открыть порт. Опять же, это программа, сервер, который будет прослушивать порт. Любое сетевое взаимодействие, использующее протокол с установлением соединения (например, TCP / IP), требует наличия порта прослушивающего сервера и подключающегося клиента. Я не знаю Heroku, но, судя по вашей команде, вы пытаетесь перенести базу данных из одного места в другое. Это зависит от того, открыли ли вы два соединения: одно для извлечения данных, а другое для записи. Если вы намереваетесь получать соединения из Интернета, вам нужен порт с общедоступным IP-адресом, который поступает на порт 5000 вашего сервера. Если вы считаете, что у вас установлена ​​правильная установка, попробуйте следующую команду:

sudo netstat -tnlp 

Она должна дать вам что-то вроде этого: , слушая порт 22. У вас должно быть что-то подобное, для порта 5000. В таком случае попробуйте подключиться из своей внутренней сети к IP-адресу сервера и выяснить, как открыть его в Интернете. Вы можете сделать это с помощью команды telnet:

$ telnet 192.168.1.1 22
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.8p1 Debian-7ubuntu1
^\
Connection closed by foreign host.

Если вы получили слово «Подключен», значит ваш порт жив и работает :) Это пример прослушивания SSH-сервера, ваш вывод heroku должен отличается.

0
ответ дан 28 February 2012 в 19:42

Другие вопросы по тегам:

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