ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Django] crontab 사용하기
    언어/파이썬 & 장고 2019. 1. 19. 17:18

    Django 에서는 crontab 기능을 지원하여 손쉽게 배치를 추가/실행/삭제를 할 수 있습니다.

    설치

    $ pip3 install django-crontab

    crontab 등록

    스크립트 등록을 위한 함수를 생성합니다.

    # app/cron.py
    
    
    from my.app import run
    
    
    def scheduler():
    	run()
    	pass


    이후 settings.py에서 아래와 같은 형식으로 등록합니다.

    CRONJOBS = [
    	('* * * * *', 'app.cron.scheduler')
    ]


    CRONJOBS 내에 들어가는 데이터 형식은 아래와 같습니다.

    (' 분 시 일 월 요일 ', '앱이름.파일명.함수명')

    스케쥴링에 대한 자세한 내용은 http://brownbears.tistory.com/15 에서 확인할 수 있습니다.


    위 작업까지 완료했으면 이제 crontab 명령어를 사용해 처리하면 됩니다.

    crontab 명령어

    목록

    $ python3 manage.py crontab show

    추가

    $ python3 manage.py crontab add

    삭제

    $ python3 manage.py crontab remove


    위 명령어를 통해 등록했을 경우 실제 서버의 crontab에도 등록된 것을 확인할 수 있습니다.

    $ crontab -l
    
    
    * * * * * /bin/python3 /manage.py crontab run 49fb9b8a9b695f26de0c796631105b3e # django-cronjobs for base


    댓글