2016-04-09 4 views
1

У меня есть проблема, когда я хочу, чтобы запустить свой сервер в моем терминале я делаю rail s или rails server и есть ошибка A server is already running. Check /Users/baptiste/code/BaptisteB/my-app/tmp/pids/server.pid.Rails - сервер уже работает

Что это значит? И почему он присутствует?

Я удаляю его и проверяю localhost:3000. Ничего нет. Мне нужно выйти с моего ноутбука и включить его, чтобы начать работать.

Как я могу остановить эту ошибку? Может быть, я могу уничтожить его командой. Спасибо за помощь.

ответ

3

Попробуйте выполнить следующую команду на своем терминале, и вы получите PID (идентификатор процесса)

lsof -wni tcp:3000 

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 
ruby 21309 user 11u IPv4 93186  0t0 TCP *:3000 (LISTEN) 

, а затем убить процесс рубиновый с помощью

kill -9 <PID> 

запустить сервер снова rails s

Надеюсь, это поможет!

+0

Спасибо вам @LHH я собираюсь попробовать. –

+0

Я должен делать это каждый раз, когда я хочу подключиться к нему. Мог бы сказать команде, чтобы остановить эту манипуляцию и просто наслаждаться рельсами. –

2

Это означает, что вы уже запустили сервер рельсов. Возможно, произошло то, что вы запустили сервер rails и закрыли это окно терминала, не останавливая сервер. Откройте окно терминала и запустите

ps aux | grep rails 

, который должен предоставить вам список всех процессов, выполняющихся с рельсами в его имени. Затем вы можете запустить приведенную ниже команду, чтобы убить всех из них или получить pid (идентификатор процесса) и выборочно завершить их с помощью второй команды. Если вы на Wi

killall -9 rails 

kill pid 
+0

СПАСИБО @margo Я думаю, что это работает –

0

просто:

$ cd # in the project folder 
$ gem install shutup 
$ shutup 

При использовании RVM сделать:

$ cd # in the project folder 
$ rvm @global do gem install shutup 
$ shutup 
+0

ты смеешься ко мне? –

Смежные вопросы