-1
我嘗試在AWS Elastic beanstalk node.js服務上運行node.js腳本/應用程序。以root身份運行Node.js腳本的彈性beanstore
在sudo啓動後,腳本在本地機器上運行良好。因此,在將其移至AWS彈性beanstalk環境時,它似乎並未以root權限運行。
有沒有辦法設置一個node.js腳本來啓動sudo,或在彈性beanstalk服務器上的root權限?
我嘗試在AWS Elastic beanstalk node.js服務上運行node.js腳本/應用程序。以root身份運行Node.js腳本的彈性beanstore
在sudo啓動後,腳本在本地機器上運行良好。因此,在將其移至AWS彈性beanstalk環境時,它似乎並未以root權限運行。
有沒有辦法設置一個node.js腳本來啓動sudo,或在彈性beanstalk服務器上的root權限?
這是一個非常糟糕的做法,所以我從來沒有試過這樣做。
如果你沒有任何其他的解決辦法,嘗試改變你的啓動腳本中的package.json,像這樣:
"scripts": {
"start": "sudo node index.js"
}
您應該添加用戶的NodeJS如sudo的,也。創建.ebextensions文件夾(位於應用程序根目錄)中的文件rootaccess.config,與此內容:
container_commands:
01_enable_rootaccess:
command: echo Defaults:root \!requiretty >> /etc/sudoers
請記住,你應該使用空格縮進這個config文件,而不是標籤
是否真的有必要嗎?用sudo啓動? –
我與André就此合作。不要以sudo運行你的應用程序。什麼是應用程序在做什麼?我現在投票表決,因爲這是不好的做法。 – Clarkie
@Clarkie - 我是一個有node.js的新手,並且試圖利用一些已經可用的代碼,所以不知道爲什麼它需要以root身份運行。我將重新檢查代碼並嘗試瞭解是否有更好的方法。知道這是不好的做法是很好的反饋。如果你能夠詳細說明爲什麼你認爲這是不好的做法,那將是非常好的嗎? – simon