我正在尝试使用系统服务部署一个使用uWSGI和nginx的flask应用程序。我看过很多教程,它们都有相同的过程,除了.service文件中的更改。
这是我的服务文件:
[Unit]
Description=Flask web server
[Install]
WantedBy=multi-user.target
[Service]
User=schirag
PermissionsStartOnly=true
ExecStart=/home/schirag/server.py
TimeoutSec=600
Restart=on-failure
RuntimeDirectoryMode=755我正在获取服务文件的状态,如下:
flask.service - Flask web server
Loaded: loaded (/etc/systemd/system/flask.service; disabled; vendor preset: disable>
Active: failed (Result: exit-code) since Wed 2021-08-11 11:20:25 IST; 6s ago
Process: 13131 ExecStart=/home/schirag/server.py (code=exited, status=203/EXEC)
Main PID: 13131 (code=exited, status=203/EXEC)
Aug 11 11:20:24 localhost.localdomain systemd[1]: flask.service: Main process exited, code=exited, status=203/EXEC
Aug 11 11:20:24 localhost.localdomain systemd[1]: flask.service: Failed with result 'exit-code'.
Aug 11 11:20:25 localhost.localdomain systemd[1]: flask.service: Service RestartSec=100ms expired, scheduling restart.
Aug 11 11:20:25 localhost.localdomain systemd[1]: flask.service: Scheduled restart job, restart counter is at 5.
Aug 11 11:20:25 localhost.localdomain systemd[1]: Stopped Flask web server.
Aug 11 11:20:25 localhost.localdomain systemd[1]: flask.service: Start request repeated too quickly.
Aug 11 11:20:25 localhost.localdomain systemd[1]: flask.service: Failed with result 'exit-code'.
Aug 11 11:20:25 localhost.localdomain systemd[1]: Failed to start Flask web server.我尝试从其他来源更改服务文件,也尝试更改目录权限,但仍然收到相同的错误,无法使用该服务启动应用程序。尽管我可以使用以下命令使用uwsgi手动运行这个应用程序- uwsgi --socket 0.0.0.0:8000 --protocol=http -w wsgi
发布于 2021-08-14 05:33:45
您的ExecStart需要更新。您必须提供文件的位置和解释器。由于你使用的是python,你的代码应该是这样的:
[Unit]
Description=Flask web server
[Service]
User=schirag
PermissionsStartOnly=true
ExecStart=/usr/bin/python3 /home/schirag/server.py
TimeoutSec=600
Restart=on-failure
RuntimeDirectoryMode=755
[Install]
WantedBy=multi-user.target使用命令type python3获取python的位置。
https://stackoverflow.com/questions/68737235
复制相似问题