supervisor 启动dotnet.core 报“ too many start retries too quickly”

环境:

      操作系统:Centos 7

     dotnet core:2.0.0    2.1.3

 

问题:

在使用supervisor 配置守护进程时,启动dotnet.core程序失败,查看/tmp下supervisor日志,发现dotnet.core程序启动多次(127错误码)失败后,报“ too many start retries too quickly” 程序停止。

 

分析与解决:

因为环境是新配的,先检查dotnet 命令 是否正常,很大的可能是由于dotnet core 环境的问题

如果dotnet 没有问题,检查supervisor 配置的项目启动文件,验证:

1、是否命令有无问题,command是否可以被执行(使用绝对的路径试下)

把command 命令直接在控制台运行是否正常

2、修改command,不使用 /bin/bash -c "dotnet ****.dll" ,如command=dotnet ****.dll

3、检查执行目录是否正确

4、用户是否有执行权限

 

我发生的本次问题是:

没有在/usr/local/bin/下放入dotnet,即没有做命令:“sudo ln -s /opt/dotnet/dotnet /usr/local/bin”  ,"/opt/dotnet/" 为dotnet 安装目录

虽然dotnet 能在控制台执行,是由于在profile 中添加了Path。而supervisor在调用命令时,bin/bash 无法获知dotnet 命令,在更换直接用dotnet ***.dll时,supervisor日志中显示,无法识别dotnet命令。

 

 

   

posted @ 2017-12-22 14:17  hobinly  阅读(7113)  评论(0编辑  收藏  举报