工作這是啓動腳本對我的計算引擎實例sudo命令不啓動腳本
# Configure supervisor to run the node app.
cat >/etc/supervisor/conf.d/node-app.conf << EOF
[program:nodeapp]
directory=/opt/app
command=sudo node app.js
autostart=true
autorestart=true
user=nodeapp
environment=HOME="/home/nodeapp",USER="nodeapp",NODE_ENV="production"
stdout_logfile=syslog
stderr_logfile=syslog
EOF
一部分。如果您發現該行
command=sudo node app.js
原來這只是
command=node app.js
但由於我的應用程序正在偵聽端口80,所以我對其進行了修改,以便可以擁有root訪問權限。當我的虛擬機啓動時,它執行腳本,但是當我使用SSH連接實例,我不能訪問自己的網站,並輸入
sudo node app.js
然而,一切正常。啓動腳本中不能有sudo命令?
爲什麼'supervisord'不能以root身份運行?什麼用戶*是*它運行?這是你成功運行'sudo node app.js'時使用的用戶嗎?你的'sudo'配置是否設置了'requiretty'選項? – larsks
我如何以root身份運行supervisord?什麼是requiretty選項?這是來自「Google計算引擎上的deploy nodejs應用程序」教程的代碼。我完全不理解它。 – Rockstar5645
我應該添加整個啓動腳本嗎? – Rockstar5645