<aside> 💡 유닉스 계열의 시스템에서 여러 프로세스를 모니터링하고 제어하는 프로그램. Process를 daemon으로 절대 꺼지지 않게 해준다.

</aside>

이름

예시

Dockerfile

RUN apt update && apt install supervisor -y
RUN mkdir -p /var/log/supervisor
COPY supervisord.conf /etc/supervisor/conf.d/supervisor.conf
CMD ["/usr/bin/supervisord"]

supervisord.conf

[supervisord]
# nodaemon=true
user=root

[program:preprocessing]
command=python3 /app/src/sia/dp/indexer/scene_indexer/image_processing/image_process_app.py --dataset=/kbae/test
startretries=0
exitcodes=0
stderr_logfile=/var/log/supervisor/test.err.log
stdout_logfile=/var/log/supervisor/test.out.log
priority=1

[program:migrator]
command=python3 /app/src/sia/dp/indexer/scene_indexer/migrator/filename_changer_app.py --dataset=/kbae/test
startretries=0
exitcodes=10
stderr_logfile=/var/log/supervisor/test.err.log
stdout_logfile=/var/log/supervisor/test.out.log
priority=2

[program:indexer]
command=python3 /app/src/sia/dp/indexer/scene_indexer/scenes_indexer/index_app.py --dataset=/kbae/test
startretries=0
exitcodes=0
stderr_logfile=/var/log/supervisor/test.err.log
stdout_logfile=/var/log/supervisor/test.out.log
priority=3