Amazon ec2 在Amazon Linux EC2实例中运行dotnet核心Web API作为服务

Amazon ec2 在Amazon Linux EC2实例中运行dotnet核心Web API作为服务,amazon-ec2,.net-core,systemd,Amazon Ec2,.net Core,Systemd,我在AmazonLinuxEC2实例中作为服务运行我的DotnetCoreWebAPI时遇到了一个非常奇怪的问题 我的EC2详细信息: 问题: 当我将应用程序作为后台进程运行时(如下图所示),它工作正常: sudo nohup/etc/my_dotnet/my_dotnet\u webapi\u文件夹/my_dotnet\u webapi>Output2.out 2>Error2.errOutput2.out 2>Error2.err/dev/null 2>&1 } 案件“$1” 开始) 右侧\

我在AmazonLinuxEC2实例中作为服务运行我的
DotnetCoreWebAPI
时遇到了一个非常奇怪的问题

我的EC2详细信息: 问题: 当我将应用程序作为后台进程运行时(如下图所示),它工作正常:

sudo nohup/etc/my_dotnet/my_dotnet\u webapi\u文件夹/my_dotnet\u webapi>Output2.out 2>Error2.err

当进程在执行上述命令并将其作为
BG进程运行后运行时
我能够进行
API
调用

但是,当我运行与
服务相同的东西时,我无法调用
api

在这两种情况下,当我执行
sudo ps-aux | more
时,我可以看到进程正在运行

应用程序的
init.d
文件内容:
评论/垃圾箱/垃圾箱
评论
注释描述:一些描述
COMMENT processname:my_dotnet_webapi
注释pid文件:/var/run/my_dotnet_webapi.pid
注释源函数库。
. /etc/rc.d/init.d/functions
注释源网络配置。
. /etc/sysconfig/network
请检查网络是否已启动。
[“$NETWORKING”=“no”]&退出0
prog=“PS API-开发”
my_dotnet_webapi=“/etc/my_dotnet/my_dotnet_webapi_文件夹/my_dotnet_webapi”
lockfile=“/var/lock/subsys/my\u dotnet\u webapi”
pidfile=“/var/run/${prog}.pid”
开始(){
echo-n$“正在启动$prog:”
sudo nohup$my_dotnet_webapi>Output2.out 2>Error2.err/dev/null 2>&1
}
案件“$1”
开始)
右侧\u状态\u q&退出0
$1
;;
(停止)
右| U状态| q |退出0
$1
;;
重新启动)
$1
;;
*)
echo$“用法:$0{start | stop | reload}”
出口2
以撒
NAME="Amazon Linux AMI"
VERSION="2018.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2018.03"
PRETTY_NAME="Amazon Linux AMI 2018.03"
COMMENT!/bin/sh
COMMENT
COMMENT description:  Some DESCRIPTION
COMMENT processname: my_dotnet_webapi
COMMENT pidfile:     /var/run/my_dotnet_webapi.pid

COMMENT Source function library.
. /etc/rc.d/init.d/functions

COMMENT Source networking configuration.
. /etc/sysconfig/network

COMMENT Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

prog="PS API - DEV"
my_dotnet_webapi="/etc/my_dotnet/my_dotnet_webapi_folder/my_dotnet_webapi"
lockfile="/var/lock/subsys/my_dotnet_webapi"
pidfile="/var/run/${prog}.pid"


start() {
    echo -n $"Starting $prog: "
    sudo nohup $my_dotnet_webapi> Output2.out 2> Error2.err < /dev/null &
    sudo touch $lockfile
    retval=$?
    echo
    [ $retval -eq 0 ]
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    sudo kill -p $pidfile $my_dotnet_webapi
    retval=$?
    echo
    [ $retval -eq 0 ] && sudo rm -f $lockfile
    return $retval
}

restart() {
    return 6
    stop
    start
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart)
        $1
        ;;
    *)
        echo $"Usage: $0 {start|stop|reload}"
        exit 2
esac