Node.js Pm2部署权限被拒绝,无法执行所有操作

Node.js Pm2部署权限被拒绝,无法执行所有操作,node.js,pm2,Node.js,Pm2,我正在尝试使用pm2在我的服务器上部署应用程序。 当我尝试部署它时,我遇到了一些权限问题 例如,我不能用npmglobaly安装某些东西,我不能运行apt-get-install,它甚至不能运行“path”,该路径应该创建项目的“workdir” 这是我的配置,其中包含空白信息: { "apps": [ { "name": "app", "script": "scripts/start.js" } ], "deploy": { "pro

我正在尝试使用pm2在我的服务器上部署应用程序。 当我尝试部署它时,我遇到了一些权限问题

例如,我不能用
npm
globaly安装某些东西,我不能运行
apt-get-install
,它甚至不能运行
“path”
,该路径应该创建项目的“workdir”

这是我的配置,其中包含空白信息:

{
  "apps": [
    {
      "name": "app",
      "script": "scripts/start.js"
    }
  ],
  "deploy": {
    "production": {
      "user": "namedUser",
      "host": ["**.**.**.**"],
      "ref": "origin/master",
      "repo": "git@github.com:***",
      "path": "/var/www/production",
      "pre-setup": "sudo apt-get install git nodejs npm; npm i -g yarn; yarn",
      "post-setup": "ls -la",
      "post-deploy": "yarn start"
    }
  }
}
但是pm2不能执行任何这些

当我试图在
的“预设置”中安装某些东西时,我从npm(带有sudo的事件)中得到此错误:

当我删除除
“path”
之外的所有我想安装的东西时,我得到了以下信息:

mkdir: cannot create directory '/var/www': Permission denied

您需要将您的用户添加到sudo组,使其能够使用“sudo”

您需要将用户设置为所有者或在“/var/www”的所有者组中


您需要能够在全球范围内安装软件包。

谢谢您的回答,但现在我似乎有一个新错误
sudo:不存在tty,也没有指定askpass程序,这没有帮助:Edit:我将打开一个新线程。实际上,现在的问题是允许用户在不添加密码的情况下使用sudo。所以是的,它需要一个新的线程。由于这一个是“技术上”回答,我想你现在可以关闭这一个。这是:
mkdir: cannot create directory '/var/www': Permission denied
# usermod -aG sudo username
# chown username /var/www/