【问题标题】:bottle error "critical error while processing request:" when launched from systemd从 systemd 启动时出现瓶错误“处理请求时出现严重错误:”
【发布时间】:2019-09-08 07:03:44
【问题描述】:

我有一个基于瓶子的服务器,从用户空间启动时效果很好。服务器出现在端口 8088 上,似乎正在与外界通信,但是当我联系应用程序时,我得到的只是信息非常丰富的“处理请求时出现严重错误:模式”,这是应用程序的 url。 我的 systemd 文件如下:

[Unit]
Description=Survey Service
After=multi-user.target
Conflicts=getty@tty1.service

[Service]
User=ubuntu
Type=simple
Working-directory=/home/ubuntu/survey
ExecStart=/usr/bin/python3 /home/ubuntu/survey/server.py

[Install]
WantedBy=multi-user.target

我找到了几篇与信息性错误消息相关的文章,但没有一篇与 systemd 相关。正如我所说,当使用非常简单的命令“python3 server.py”在项目目录中以用户 ubuntu 身份启动该应用程序时,该应用程序运行完美,但似乎丢失了......当 systemd 尝试启动它时。

Systemd 报告进程正在运行,正如我所说,我能够连接到应用程序......它只是以有序的方式失败并显示此消息,我不知道为什么。我怀疑是权限问题,但“用户”和“工作目录”没有解决这个问题吗?该应用程序使用的所有文件都在该目录或它下面的目录中。

【问题讨论】:

    标签: python-3.x systemd bottle


    【解决方案1】:

    显然,老式的方式是可行的:设置 systemd 以运行 bash 脚本:

    cat /home/ubuntu/survey/server.sh

    #!/bin/bash
    cd /home/ubuntu/survey/
    python3 server.py
    

    效果很好。所以我的问题现在变成了关于 systemd 的问题:如果“工作目录”实际上没有设置为该工作目录,那么它的意义何在?

    【讨论】:

      猜你喜欢
      • 2020-03-15
      • 1970-01-01
      • 1970-01-01
      • 2018-10-11
      • 2014-08-21
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 2022-01-21
      相关资源
      最近更新 更多