..$ rails s
=> Booting WEBrick
=> Rails 4.0.4 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
A server is already running. Check /home/..name/rprojects/railsapp/tmp/pids/server.pid.
Exiting
Rails 초보자가 이것을 해결하는 가장 쉬운 방법은 무엇입니까?
답변
server.pid
파일을 삭제할 수 있습니다 .
rm /your_project_path/tmp/pids/server.pid
그밖에:
OSX에서 시도하십시오.
sudo lsof -iTCP -sTCP:LISTEN -P | grep :3000
또는 Linux :
ps -aef | 그렙 레일
또는
lsof -wni tcp:3000
사용하여 프로세스를 종료
kill -9 PID (eg,2786)
답변
짧고 선명한 한 줄 명령이 처리됩니다.
kill -9 $(lsof -i tcp:3000 -t)
답변
server.pid
실행중인 서버의 프로세스 ID 만 포함합니다.
당신이 할 경우 :
more /your_project_path/tmp/pids/server.pid
kill 명령으로 이전 서버를 중지하는 데 사용할 수있는 번호 (예 : 6745)를 얻게됩니다.
kill -9 6745
그런 다음 rm
명령을 사용 하여 파일을 제거 할 수 있습니다.
rm /your_project_path/tmp/pids/server.pid
답변
docker-compose를 사용하고 docker-compose.yml에 다음
volumes:
- .:/myapp
이있는 경우 로컬 작업 영역이 컨테이너의 / myapp 폴더에 매핑됩니다.
/ myapp의 모든 항목은 정의 된 볼륨에 대해 삭제되지 않습니다.
./tmp/pids/server.pid
로컬 컴퓨터에서 삭제할 수 있습니다 . 그러면 컨테이너의 / myapp에이 파일이 없습니다.
답변
단순한:
이 경우 프로젝트의 루트 폴더로 이동하여 다음을 실행하십시오.
gem install shutup
shutup
이것은 현재 실행중인 프로세스를 찾아서 죽이고 pid 파일을 정리합니다.
참고 : rvm을 사용하는 경우 전역 적으로 gem을 설치하십시오.
rvm @global do gem install shutup
답변
다음을 사용하여 문제를 해결할 수 있습니다.
kill -9 $(more /home/..name/rprojects/railsapp/tmp/pids/server.pid)
답변
서버가 server.pid에 로그인 할 충분한 시간이 없도록 OS / 머신을 수동으로 끄는 것과 같이 강제로 서버를 끄는 경우가 있습니다.
한 가지 쉬운 방법은 tmp/pids/
(콘솔에 표시된 디렉토리 )로 수동으로 이동하여 server.pid
파일을 제거하는 것 입니다. 그런 다음 서버를 다시 시작 rails server
하거나 rails s
, 새 server.pid를 생성하고 개발을 계속할 수 있습니다.