[AWS Lightsail] 시스템 서비스로 장고 애플리케이션 배포

2024. 8. 6. 13:24· Django/인프라
목차
  1. systemd 서비스 파일 생성
  2. systemd 서비스 등록
반응형

systemd 서비스 파일 생성

/etc/systemd/system/django.service

etc 파일이 root 권한으로 설정되어 있기 때문에, cat 명령어를 이용하여 파일 생성 후, sudo를 이용하여 파일을 이동시켜주어야 한다.

[Unit]
# 서비스에 대한 설명과 의존성을 정의
Description=django daemon by gunicorn
# 네트워크 서비스가 필요함을 의미
After=network.target
[Service]
# 서비스 실행에 필요한 설정
User=ubuntu
Group=ubuntu
WorkingDirectory=/srv/course-repo/myproj
ExecStart=/srv/venv/bin/gunicorn \
 --config /srv/config/gunicorn.conf.py \
 --env ENV_PATH=/srv/config/django.env \
 mysite.wsgi:application
[Install]
# 멀티 유저 모드로 전환될 때 자동으로 시작되어야 함을 의미
WantedBy=multi-user.target

 

/srv/config/gunicorn.conf.py

bind = "0.0.0.0:8080"
# refs: https://docs.gunicorn.org/en/stable/settings.html

 

 

systemd 서비스 등록

# 서비스 파일 다시 읽기. 서비스 파일 수정 후에 실행 필요.
$ sudo systemctl daemon-reload

# 서비스를 활성화하여 부팅 시 자동 시작하도록 설정
$ sudo systemctl enable django.service
# Created symlink /etc/systemd/system/multi-user.target.wants/django.service → /etc/systemd/system/django.service.

# 서비스 시작
$ sudo systemctl start django.service

# 서비 상태 확인
$ sudo systemctl status django.service

# 서비스 재시작
$ sudo systemctl restart django.service

# 서비스 중지
$ sudo systemctl stop django.service

# 서비스 로그 확인
$ sudo journalctl -u django.service

# 서비스 로그 실시간 확인
$ sudo journalctl -u django.service -f

# 특정 시간 이후의 로그 확인 (역순은 -r 옵션, 실시간은 -f 옵션)
$ sudo journalctl -u django.service --since "2024-01-01 00:00:00"

# 특정 시간 이전의 로그 확인
$ sudo journalctl -u django.service --until "2024-01-01 00:00:00"

 

서버 시간대 변경하기 (UTC -> Asia/Seoul)

sudo timedatectl show
sudo timedatectl set-timezone Asia/Seoul
반응형
저작자표시 (새창열림)

'Django > 인프라' 카테고리의 다른 글

[Nginx] Nginx를 경유해서 장고로 요청 전달하기  (0) 2024.08.06
[Nginx] Nginx란 무엇인가?  (0) 2024.08.06
[AWS Lightsail] 가상환경 생성 및 패키지 설치  (0) 2024.08.06
[AWS Lightsail] 비공식 PPA를 통한 파이썬 설치하기 (3.12)  (0) 2024.08.06
[AWS Lightsail] 리눅스 가상머신 생성  (0) 2024.08.06
  1. systemd 서비스 파일 생성
  2. systemd 서비스 등록
'Django/인프라' 카테고리의 다른 글
  • [Nginx] Nginx를 경유해서 장고로 요청 전달하기
  • [Nginx] Nginx란 무엇인가?
  • [AWS Lightsail] 가상환경 생성 및 패키지 설치
  • [AWS Lightsail] 비공식 PPA를 통한 파이썬 설치하기 (3.12)
Jong_seoung
Jong_seoung
기록하자, 머리는 생각하는 곳이지 저장장치가 아니다.
반응형
Jong_seoung
Today_developStory
Jong_seoung
전체
오늘
어제

블로그 메뉴

  • Home
  • Git Hub
  • 분류 전체보기 (351)
    • Theory (16)
    • Java (3)
      • 알고리즘 (2)
      • 문법 (0)
    • Spring (7)
      • 스프링 입문 (6)
      • PickTalk (0)
      • 에러처리 (1)
    • Python (80)
      • 알고리즘 - 이론 (17)
      • 알고리즘 - 내장함수, 라이브러리 등등 (3)
      • 알고리즘 - 백준 (53)
      • 나도코딩 정리 (2)
      • 기타 (5)
    • Django (159)
      • DRF (105)
      • 인프라 (46)
      • DataBases (2)
      • API Docs (6)
    • FrontEnd (22)
      • htmx (2)
      • React (8)
      • 자바스크립트 (12)
    • GIT (16)
    • 기타 (8)
      • 정리 (2)
      • Flutter (1)
      • 마이크로프로세서 - ATmega128 (2)
      • 개발환경 세팅 (3)
    • 자격증 (37)
      • 정보처리기사 (19)
      • SQLD자격증 (18)

인기 글

최근 글

태그

  • alarm
  • BFS
  • CSRF
  • Django
  • django channels
  • django sse
  • django tutorial
  • django 배포
  • django 스웨거 적용
  • Django 이미지 저장

최근 댓글

hELLO · Designed By 정상우.v4.3.0
Jong_seoung
[AWS Lightsail] 시스템 서비스로 장고 애플리케이션 배포
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.