[英]Bash shell script not executing command docker entrypoint
我有一個 shell 腳本,它在從 docker CMD 運行時沒有執行“crontab”命令。 但是當我在 docker 容器內執行文件時有效。 我錯過了什么?
文件入口.sh:
#!/bin/sh
echo "Starting cron"
/usr/sbin/cron -f -L 15
crontab /etc/cron.d/cron-python
碼頭工人文件:
FROM python:3
RUN apt-get update && apt-get -y install cron
COPY ./cron/entry.sh /entry.sh
COPY ./cron/crontab.txt /etc/cron.d/cron-python
RUN chmod +x /entry.sh
RUN chmod 0644 /etc/cron.d/cron-python
CMD ["./entry.sh"]
定時蟒蛇:
# crontab -e
*/1 * * * * python /app/myscript.py >> /var/log/script.log 2>&1
以下應該工作:
#!/bin/sh
# start cron
echo "Starting cron"
crontab /etc/cron.d/cron-python
/usr/sbin/cron -f -L 15
在您的版本中,/ /etc/cron.d/cron-python
/cron.d/cron- /etc/cron.d/cron-python
沒有安裝,因為您要求 /usr/sbin/cron 在前台運行。
您還需要復制/app/myscript.py。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.