Python 코드로 Docker 컨테이너를 실행하려고 하는데 아래의 crontab(스케줄러)이 내 스크립트입니다.
도커 파일
FROM ubuntu:latest
MAINTAINER [email protected]
RUN apt-get update && apt-get install -y software-properties-common && apt-get install -y python cron vim
# Copy hello-cron file to the cron.d directory
COPY my-crontab /etc/cron.d/my-crontab
# Give execution rights on the cron job
RUN chmod 0644 /etc/cron.d/my-crontab
ADD config.py /
ADD index.py /
RUN chmod a+x config.py index.py
# Apply cron job
RUN crontab /etc/cron.d/my-crontab
# Create the log file to be able to run tail
RUN touch /var/log/cron.log
# Run the command on container startup
#CMD cron && tail -f /var/log/cron.log
CMD ["cron", "-f"]
내 크론탭
*/2 * * * * /index.py > /dev/console
docker 파일을 생성하고 코드를 실행해도 아무 반응이 없습니다. 누군가 스크립트를 실행하기 위해 docker 파일을 수정하는 방법을 제안할 수 있습니까?
답변1
'docker 컨테이너 exec -it 'container-id' bash'를 사용하여 컨테이너에 들어가서 거기에서 Python 스크립트를 실행해 보면 작동하는지 여부를 확인할 수 있습니다.
거기에는 여러 시나리오가 있으며 스크립트에 입력한 shebang 유형에 따라 다릅니다(예: '#!/usr/bin/env python', '#!/usr/bin/python' 등). 컨테이너에 설치된 Python 버전과 스크립트가 작성된 버전 등. 추가 정보가 없으면 더 많은 도움이 될 수 없습니다.