我有一个node.js脚本/应用程序,我试图在AWS Elastic beanstalk node.js服务上运行。
在使用sudo启动脚本后,脚本在本地计算机上运行正常。因此,在将其移至AWS弹性beanstalk环境时,似乎没有以root权限运行。
有没有办法设置node.js脚本以sudo启动,或者在弹性beanstalk服务器上启用root权限?
答案 0 :(得分:1)
这是一种非常糟糕的做法,所以我从未尝试过这样做。
如果您没有任何其他解决方案,请尝试更改package.json中的启动脚本,如下所示:
"scripts": {
"start": "sudo node index.js"
}
您还应该将nodejs用户添加为sudo。在.ebextensions文件夹(位于app root)中创建一个文件rootaccess.config,其中包含以下内容:
container_commands:
01_enable_rootaccess:
command: echo Defaults:root \!requiretty >> /etc/sudoers
请记住,您应该使用空格而不是制表符缩进此.config文件