Django crontab 不在后台运行
Django crontab is not working in background
我正在使用 django-crontab
到 运行 一些 cron 作业作为我项目的一部分。我为这个特定项目设置了虚拟环境。
因此在激活环境后,我使用以下命令添加作业:
python manage.py crontab add
我看到我的作业已成功添加到 OS crontab,但是当我看到日志时,我发现它无法找到安装在虚拟环境中的某些模块(读取全部) .
但是,如果我 运行 通过将散列传递给 运行 命令手动 运行 这些 cron,它会 运行 成功。
经过进一步检查,我发现当 crons 添加到 crontab 时,python 二进制文件指向全局(系统级二进制文件)而不是虚拟级二进制文件。
我能想到的唯一解决方案是 运行 在系统级别进行 pip 安装,但这会弄乱我打算创建的 sanbox 环境。
有什么想法吗?
django-crontab
不再维护。该库的最后一次更改发生在 2 年前。我真的建议停止使用它。
为了修复该错误,您可以使用 CRONTAB_PYTHON_EXECUTABLE
设置从您的环境指向 python 可执行文件,或者 CRONTAB_COMMAND_PREFIX
添加一些东西,在 运行 python.
我正在使用 django-crontab
到 运行 一些 cron 作业作为我项目的一部分。我为这个特定项目设置了虚拟环境。
因此在激活环境后,我使用以下命令添加作业:
python manage.py crontab add
我看到我的作业已成功添加到 OS crontab,但是当我看到日志时,我发现它无法找到安装在虚拟环境中的某些模块(读取全部) .
但是,如果我 运行 通过将散列传递给 运行 命令手动 运行 这些 cron,它会 运行 成功。
经过进一步检查,我发现当 crons 添加到 crontab 时,python 二进制文件指向全局(系统级二进制文件)而不是虚拟级二进制文件。
我能想到的唯一解决方案是 运行 在系统级别进行 pip 安装,但这会弄乱我打算创建的 sanbox 环境。
有什么想法吗?
django-crontab
不再维护。该库的最后一次更改发生在 2 年前。我真的建议停止使用它。
为了修复该错误,您可以使用 CRONTAB_PYTHON_EXECUTABLE
设置从您的环境指向 python 可执行文件,或者 CRONTAB_COMMAND_PREFIX
添加一些东西,在 运行 python.