我已经按照apache superset网页中针对Python 3.7的安装指南安装了Superset。

即使我可以手动启动服务器,但在尝试编写启动步骤脚本并将其设置为cron时,它也会失败。

执行的输出如下:

superset: command not found


我已经阅读了此topic的答复,但没有任何情况适用于此情况。
我没有使用virtualenv进行安装。

这些是which命令的输出:

ec2-user@Superset-STAGE /var/spool/mail$which python3
/usr/bin/python3

ec2-user@Superset-STAGE /var/spool/mail$which superset
~/.local/bin/superset

ec2-user@Superset-STAGE /var/spool/mail$sudo superset
sudo: superset: command not found


您能指导我如何使脚本正常运行吗?脚本如下所示。

superset init
wait
superset runserver -d


谢谢。

最佳答案

Cron以root身份运行,这意味着其主目录是/root而不是您期望的/home/ec2-user。这意味着它将无法找到/home/ec2-user/.local/bin/superset,因为它既不在~/.local/bin/superset中查找可执行文件,也没有以具有该目录的用户身份登录。一个快速的解决方法是使用完整路径,但是我建议将可执行文件移至更合适的目录(例如/usr/local/bin),然后将其添加到/etc/profile中的PATH变量中。

09-10 05:28