新贵Node.js的工作目录(Upstart node.js working directory)

2019-07-19 17:42发布

开始Node.js的新贵,试图内的Node.js访问文件时,它不能在不使用完整路径访问它们。 我需要它使用的工作目录。

start on startup
stop on shutdown

script
        echo $$ > /var/run/mynodeapp.pid
        exec sudo -u mynodeapp node server.js >> /var/log/mynodeapp.sys.log 2>&1
end script

pre-start script
        echo "Starting" >> /var/log/mynodeapp.sys.log
end script

pre-stop script
        rm /var/run/mynodeapp.pid
        echo "Stopping" >> /var/log/mynodeapp.sys.log
end script

Answer 1:

解决的办法是在脚本中更改目录。 在我的情况下,用户是mynodeapp和节点文件在用户目录(/ home / mynodeapp /)。

script
        chdir /home/mynodeapp/
        echo $$ > /var/run/mynodeapp.pid
        exec sudo -u mynodeapp node server.js >> /var/log/mynodeapp.sys.log 2>&1
end script

我还没有发现什么$$意味着回声线或2>&1。 也许有人会用这个附和,如果他们知道!



Answer 2:

您应该使用chdir节按了Upstart文档: http://upstart.ubuntu.com/cookbook/#chdir



文章来源: Upstart node.js working directory