컴퓨터 활용/노년에 즐기는 코딩

터미널에서 장고 서버 실행

easyfly 2025. 5. 23. 07:41
반응형

터미널에서 장고 서버 실행

Django 서버를 백그라운드에서 실행하면서 로그를 파일에 저장하는 명령입니다:

nohup python manage.py runserver 0.0.0.0:8000 > django.log 2>&1 &


✅ 명령어 전체 구조

구성 요소 설명
nohup 터미널이 닫혀도 프로세스를 계속 실행시킴
python manage.py runserver Django 개발 서버를 실행
0.0.0.0:8000 외부에서 접속 가능하도록 8000번 포트로 바인딩
> django.log 표준 출력(stdout)을 django.log 파일로 저장
2>&1 표준 에러(stderr)도 django.log로 함께 저장
& 이 명령어를 백그라운드에서 실행

✅ 각 부분 설명

1. nohup

  • **"no hang up"**의 줄임말.
  • 터미널 세션이 종료되어도 프로세스가 계속 실행됩니다.
  • 보통 서버나 장기 실행 명령에 사용됩니다.

2. python manage.py runserver

  • Django 내장 개발 서버를 실행하는 명령입니다.

3. 0.0.0.0:8000

  • 0.0.0.0은 모든 IP에서 접근 허용을 의미합니다.
  • 외부에서 접속 가능하게 해 주며, 기본 포트는 8000입니다.

4. > django.log

  • 표준 출력(stdout)을 django.log 파일에 저장합니다.

5. 2>&1

  • 표준 에러(stderr)도 표준 출력(stdout)으로 리디렉션 합니다.
  • 즉, 오류 메시지도 django.log에 함께 기록됩니다.

6. &

  • 명령어를 백그라운드에서 실행합니다.
  • 쉘을 점유하지 않으므로 다른 명령을 계속 입력할 수 있습니다.

✅ 실행 후 확인 방법

1. 실행 중인 프로세스 확인:

ps -ef | grep runserver

2. 로그 확인:

tail -n 30 django.log

✅ 종료하려면?

프로세스 ID(PID)를 찾아서 종료합니다:

pkill -f runserver

또는 PID를 지정해서 종료:

kill [PID]

 

반응형