개요
파이썬 개발을 시작하며 회사에 적용되어 있는 supervisord를 간략하게 공부하고 내용을 정리한다.
간단한 개념을 얘기하면 supervisord는 프로세스를 daemon으로 위탁관리해주는 tool이다.
설치법
우분투 기준 설치는 아래와 같다.
supervisord 기동 스크립트
우분투 기준 아래와 같다.
도움말
supervisor conf 재로드
기본 문법
spv.conf
는 보통 아래와 같이 구성된다.
[program:webhook]
command=/usr/bin/node /srv/http.js # 명령어
directory=/srv # 실행 디렉토리
autostart=yes
autorestart=yes
startretries=3 # Fail이 되기 전에 몇번이나 재기동할지
sterr_logfile=/var/log/webhook/webhook.err.log
stdout_logfile=/var/log/webhook/webhook.log
user=www-data # 실행 user
environment=SECRET_PASSWORD='this is secret',SECRET_TWO='another secret'
특정 프로그램 실행
위에서 정의한 webhook
을 실행하여 보자.
supervisor 실행 상태보기
process output tail
supervisorctl 진입후 실행
추가 명령어
- n은 no background process
- edebug는 디버깅 모드
- c는 conf 지정
$ supervisord -n -edebug -c supervisord.conf
Web UI
http://localhost:23233/과 같이 웹 UI로도 볼 수 있음