root로 cron 설치하고 필요한 곳들 퍼미션 변경한 다음 일반적인 방식으로 crond 실행하면 됨.
Dockerfile은 대충 이렇게
FROM centos:7
USER root
# cron 설치
RUN yum install -y cronie
# 여기가 핵심
RUN chmod gu+rw /var/run && chmod gu+s /usr/sbin/crond
# nonroot 라는 user로 실행한다 치고
USER nonroot
ENTRYPOINT [ "/PATH/TO/entrypoint.sh" ]
CMD tail -f /dev/null
entrypoint.sh 는 대충 이렇게
#!/bin/bash
# 어떤 식으로든 cron 등록
/usr/bin/crontab /PATH/TO/cronfile
# crond 실행
/usr/sbin/crond
exec "$@"
'Docker' 카테고리의 다른 글
[Docker] Dockerfiles로 빌드하기 (0) | 2020.06.10 |
---|---|
[Docker] 기본 사용법 (0) | 2020.06.09 |
[Docker] 라즈베리파이에 도커 사설 레지스트리 구축 (docker private registry on raspberry pi) (0) | 2020.06.08 |