使用Linux ASP在Azure应用服务上运行带有flask命令的Crontab

hts6caw3  于 2022-11-25  发布在  Linux
关注(0)|答案(2)|浏览(165)

我正在尝试做的是运行flask命令在crontab上的Azure应用服务与linux应用服务计划.
到目前为止,我有我的startup.sh来设置cron,但命令没有执行,日志中没有任何内容。

# startup.sh

#!/bin/sh
apt-get update -qq
apt-get install gcc -yqq
apt-get install g++ -yqq
source antenv/bin/activate
pip install -r requirements.txt
apt-get install cron -yqq
service cron start
(crontab -l 2>/dev/null; echo "*/5 * * * * /home/site/wwwroot/antenv/bin/python -m flask db update_migrations")|crontab
gunicorn --bind=0.0.0.0 --workers=4 startup:app

当我尝试通过SSH执行命令时,我必须安装需求,然后,命令本身就可以工作了

> /home/site/wwwroot/antenv/bin/python -m flask db update_migrations

但是在crontab中它不想这样做。
怎么调试它,从哪里发现问题。
谢谢你的帮助!

6kkfgxo0

6kkfgxo01#

这是一个变通的方法,但是也许你可以利用Advanced Python Scheduler,它也有Flask集成。这样你就可以绕过cron的问题。

apeeds0o

apeeds0o2#

您确定您的startup.sh是可执行的吗?
脚本必须是可执行的,所以要么安装w/ unix和chmod 755 start.sh,要么使用git命令(参见如何在Git中为文件添加chmod权限?)。
另请参阅https://stackoverflow.com/a/69923647/2606766以了解详细说明和潜在缺陷。

相关问题