본문 바로가기
개발/AWS

EC2 파이썬 서버 항상 실행되게 하기

by beomcoder 2023. 6. 27.
728x90
반응형

EC2 인스턴스도 새로 만들고, 파이썬 스케줄링도 다 했는데

AWS 우분투창을 끄면 파일도 같이 꺼져서 방법을 찾아야했다.

 

어떻게 해야할까 고민하다가 nohup이라는 명령어를 알게 되었다.

nohup을 이용하면 백그라운드에서 실행시켜 창을 꺼도 유지가 된다.

nohup은 "no hang up"(끊지마!)의 약자이다.

 

방법은 간단하다.

기존의 방법에서 앞 뒤에 nohup [기존 명령어] &이다.

nohup python3 main.py &

이렇게 쓰고 엔터를 누르면

이 문구가 나오고 exit를 입력하고 엔터를 치고 다시 재접속을 해보면 된다.

 

다시 접속한다음

ps -ef | grep main  # [실행시킨 파일 이름]

이라고 치고 실행하고 있으면 성공이다.

 

나는 처음에 main.py가 있는 폴더에 들어가서 명령어를 입력해야하는데

main.py가 없는곳에서 명령어를 치고 위 실행방법을 진행해도

재접속을 아무리 해봐도 돌아가고 있는 프로세스가 나오지 않았다.

 

nohup으로 실행시키면 없는 파일이라도 에러가 나오지 않아서 헷갈렸다.

main.py가 있는곳으로 가서 실행하니 정상적으로 됐다.

 

이런 실수를 하지 않아야겠다.

 

 

728x90
반응형

댓글