【问题标题】:Python Flask Service file is not startingPython Flask 服务文件未启动
【发布时间】:2019-03-31 18:31:27
【问题描述】:

我写了一个小应用程序。该应用程序运行良好。但是,我正在尝试创建一个服务文件,但遇到了问题。运行命令sudo uwsgi uwsgi.ini 有效。应用程序启动。 我创建了一个服务文件。

[Unit]
Description=uWsgi instance to start relay site
After=network.target

[Service]
User=pi
Group=pi
WorkingDirectory=/var/www/relay
ExecStart=sudo uwsgi uwsgi.ini

[Install]
WantedBy=multi-user.target

我尝试启动服务文件时出错。

Loaded: error (Reason: Invalid argument)
relay.service: Unit entered failed state.
relay.service: Failed with result 'exit-code'.
[/etc/systemd/system/relay.service:11] Executable path is not absolute, ignoring: uwsgi uwsgi.ini
relay.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.
[/etc/systemd/system/relay.service:9] Executable path is not absolute, ignoring: sudo uwsgi uwsgi.ini
relay.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.

【问题讨论】:

    标签: linux python-3.x flask raspberry-pi uwsgi


    【解决方案1】:

    它显示Executable path is not absolute,因为可执行文件是sudo 而不是/usr/bin/sudo。 Systemd 需要完整路径,因为它不像您使用终端时那样使用 shell。

    另外,如果您要使用sudo 命令,那么您最好使用root 作为用户(这是默认设置)。这样的事情应该可以工作:

    [Service]
    WorkingDirectory=/var/www/relay
    ExecStart=/absolute/path/to/uwsgi uwsgi.ini
    

    您可以运行which uwsgi 来查找uwsgi 的绝对路径。

    【讨论】:

    • 感谢您的帮助和信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多