내 Dockerfile이 올바르게 빌드 된 것처럼 보입니다 (그렇습니다). 컨테이너를 실행하면 아래와 같은 오류 메시지가 나타납니다. CMD
서비스 디렉토리 가 있거나 없는 명령 ( )을 실행하려고했습니다 .
crontab.sh
기본적으로 cron 일정을 텍스트 파일 ( cron.jobs
)에 쓴 다음 텍스트 파일을 crontab으로 가져옵니다.
도커 파일 :
FROM node:0.10
MAINTAINER Tom
VOLUME /var/log/
RUN mkdir /pulse
ADD . /pulse
WORKDIR /pulse
RUN apt-get update && apt-get install -y cron
ADD *.sh /pulse/
RUN chmod 750 /pulse/crontab.sh && chmod 750 /pulse/
RUN chmod 644 /etc/crontab
CMD cron -f
CMD touch /var/log/cron.log && sh /pulse/crontab.sh && tail -f /var/log/cron.log
CMD cron /pulse/cron.jobs
CMD crontab -l
edited to add crontab.sh
crontab.sh (일부 크론 제거) :
#!/bin/bash
cat <<- 'EOF' > cron.jobs
0 * * * * node /pulse/scripts/awsPulseTest.js > /tmp/awsPulseTest.log 2>&1
EOF
crontab cron.jobs
오류:
no crontab for root
사이드 노트 :
- 펄스는 서비스 이름입니다.
- 서비스로 인해 노드 버전이 오래되었습니다.이 버전은 업그레이드됩니다.
- 이 서비스는 본질적으로 노드의 크론 작업을위한 것입니다