无法将go二进制文件作为systemctl守护程序运行

银河

我有一个正在运行的网络应用程序/home/me/go/src/myapp当我./myapp在bash终端上运行可执行文件时,它可以正常工作。但这需要一个开放的终端才能继续运行,这是不切实际的,因此我尝试在Debian服务器上制作一个systemd守护程序,/etc/systemd/system/myapp.service如下所示:

[Unit]
Description=MyApp Daemon
StartLimitIntervalSec=0
[Service]
Type=simple
User= me
Group=www-data
ExecStart=/home/me/go/src/myapp/myapp
TimeoutStopSec=300
[Install]
WantedBy=multi-user.target

我已经启用并启动了守护程序:

systemctl enable myapp

启动它:

systemctl start myapp

但是,它无法运行daemn,并且出现此错误:

# systemctl status myapp
● myapp.service - MyApp Daemon
   Loaded: loaded (/etc/systemd/system/myapp.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2020-07-17 05:42:18 CDT; 4s ago
  Process: 19058 ExecStart=/home/me/go/src/myapp/myapp (code=exited, status=127)
 Main PID: 19058 (code=exited, status=127)
      CPU: 2ms
 Jul 17 05:42:18 front systemd[1]: Started Myapp Daemon.
Jul 17 05:42:18 front systemd[1]: myapp.service: Main process exited, code=exited, status=127/n/a
Jul 17 05:42:18 front systemd[1]: myapp.service: Unit entered failed state.
Jul 17 05:42:18 front systemd[1]: myapp.service: Failed with result 'exit-code'.

我想知道什么可能是错误的,我该如何解决?

银河

经过大量的试验和错误,此配置对我有用:

[Unit]
Description=Sai Go webapp Daemon
#After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
User= me
Group=www-data
WorkingDirectory=/home/me/go/src/myapp/
ExecStart=/home/me/go/src/myapp/myapp
TimeoutStopSec=300
[Install]
WantedBy=multi-user.target

显然WorkingDirectory是必要的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将 Emacs 作为守护进程运行,然后运行 emacs 二进制文件

来自分类Dev

通过 systemctl 运行二进制文件

来自分类Dev

无法使用bash程序执行二进制文件,但使用./program运行

来自分类Dev

Mac无法从终端运行二进制文件

来自分类Dev

将Fortran程序与任意二进制文件链接

来自分类Dev

将ELF二进制文件与AC程序链接

来自分类Dev

将 C/C++ 二进制可执行文件作为 docker 容器运行

来自分类Dev

意外的环境准备错误:无法创建运行程序二进制文件:连接期间错误:

来自分类Dev

Qt:使用脚本从二进制文件运行时无法找到应用程序PID

来自分类Dev

为什么 crontab 成功运行了我的 shell 脚本,但无法启动我的二进制文件程序?

来自分类Dev

g ++编译的二进制文件给出“无法执行二进制文件”

来自分类Dev

串行调用MPI二进制文件作为MPI应用程序的子进程

来自分类Dev

系统无法运行二进制文件-“无此文件或目录”

来自分类Dev

无法从bin文件夹运行二进制文件

来自分类Dev

将动态加载的二进制文件静态链接为二进制文件

来自分类Dev

如何创建可以在每个发行版上运行的静态Go二进制文件?

来自分类Dev

为什么Go会为小型程序生成大型二进制文件?

来自分类Dev

将二进制文件作为二进制字符串或base64存储在indexedDB中会导致文件不可读

来自分类Dev

升级期间如何更新正在运行的应用程序二进制文件?

来自分类Dev

运行make移动二进制文件时,自制程序引发错误

来自分类Dev

获取文件输入值作为二进制数据

来自分类Dev

插入并选择UUID作为二进制文件(16)

来自分类Dev

如何使二进制文件作为服务启动

来自分类Dev

将二进制字符串(ASCII)转换为二进制文件

来自分类Dev

将大二进制字符串写入二进制文件

来自分类Dev

可执行二进制文件无法在android棉花糖上运行

来自分类Dev

尝试在Linux上运行Shell脚本时“无法执行二进制文件”

来自分类Dev

无法在Ubuntu 12.04上运行二进制可执行文件

来自分类Dev

虽然架构匹配,但无法运行二进制文件

Related 相关文章

  1. 1

    将 Emacs 作为守护进程运行,然后运行 emacs 二进制文件

  2. 2

    通过 systemctl 运行二进制文件

  3. 3

    无法使用bash程序执行二进制文件,但使用./program运行

  4. 4

    Mac无法从终端运行二进制文件

  5. 5

    将Fortran程序与任意二进制文件链接

  6. 6

    将ELF二进制文件与AC程序链接

  7. 7

    将 C/C++ 二进制可执行文件作为 docker 容器运行

  8. 8

    意外的环境准备错误:无法创建运行程序二进制文件:连接期间错误:

  9. 9

    Qt:使用脚本从二进制文件运行时无法找到应用程序PID

  10. 10

    为什么 crontab 成功运行了我的 shell 脚本,但无法启动我的二进制文件程序?

  11. 11

    g ++编译的二进制文件给出“无法执行二进制文件”

  12. 12

    串行调用MPI二进制文件作为MPI应用程序的子进程

  13. 13

    系统无法运行二进制文件-“无此文件或目录”

  14. 14

    无法从bin文件夹运行二进制文件

  15. 15

    将动态加载的二进制文件静态链接为二进制文件

  16. 16

    如何创建可以在每个发行版上运行的静态Go二进制文件?

  17. 17

    为什么Go会为小型程序生成大型二进制文件?

  18. 18

    将二进制文件作为二进制字符串或base64存储在indexedDB中会导致文件不可读

  19. 19

    升级期间如何更新正在运行的应用程序二进制文件?

  20. 20

    运行make移动二进制文件时,自制程序引发错误

  21. 21

    获取文件输入值作为二进制数据

  22. 22

    插入并选择UUID作为二进制文件(16)

  23. 23

    如何使二进制文件作为服务启动

  24. 24

    将二进制字符串(ASCII)转换为二进制文件

  25. 25

    将大二进制字符串写入二进制文件

  26. 26

    可执行二进制文件无法在android棉花糖上运行

  27. 27

    尝试在Linux上运行Shell脚本时“无法执行二进制文件”

  28. 28

    无法在Ubuntu 12.04上运行二进制可执行文件

  29. 29

    虽然架构匹配,但无法运行二进制文件

热门标签

归档