[EC2] cron 이용해서 EC2 주기적으로 실행

코드왕·2025년 6월 9일
  1. main.py를 실행할 쉡 스크립트 생성
nano run_main.sh

가상환경 안쓰는 경우

#!/bin/bash
echo "[$(date)] Start" >> /home/ubuntu/main.log
/usr/bin/python3 /home/ubuntu/main.py >> /home/ubuntu/main.log 2>&1
echo "[$(date)] End" >> /home/ubuntu/main.log

가상환경 쓰는경우

#!/bin/bash

# 로그 시작 시점 기록
echo "[$(date)] Start script" >> /home/ubuntu/main.log
# 가상환경 활성화
source /home/ubuntu/myenv/bin/activate
# 가상환경의 python 사용해서 main.py 실행
python3 /home/ubuntu/main.py >> /home/ubuntu/main.log 2>&1
# 로그 종료 시점 기록
echo "[$(date)] End script" >> /home/ubuntu/main.log```

> 2. 실행 권한 부여

chmod +x run_main.sh


> 3. crontab에 등록

crontab -e


> 4. 예를 들어서 매일 오전3시에 실행하려면

0 3 * * * /home/ubuntu/run_main.sh >> /home/ubuntu/main.log 2>&1



> 5. 크론 자체의 실행 여부는 시스템 로그에서 확인할 수 있습니다.

크론 실행 기록 확인

grep CRON /var/log/syslog | tail -n 20


로그파일확인

cat /home/ubuntu/main.log
cat /home/ubuntu/cron_debug.log



> 6. 한국 시간으로 셋팅 잘하기

sudo timedatectl set-timezone Asia/Seoul




profile
CODE DIVE!

0개의 댓글