簡體   English   中英

Bash shell 腳本不執行命令 docker 入口點

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM