Pm2 развернуть разрешение отказано для всего - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь развернуть приложение на моем сервере с pm2.Когда я пытаюсь развернуть его, у меня возникают некоторые проблемы с разрешениями.

Например, я не могу установить что-то с npm globaly, я не могу запустить apt-get install, и он даже не может запустить "path", который должен создать «рабочий каталог» проекта ...

Вот мой конфиг с пустой информацией:

{
  "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 не может выполнить ни одного из них.

Когда я пытаюсь установить что-то в "pre-setup", я получаю эту ошибку от npm (событие с sudo):

checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! Linux 4.15.0-22-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "i" "-g" "yarn"
npm ERR! node v8.10.0
npm ERR! npm  v3.5.2
npm ERR! path /usr/local/lib/node_modules/yarn
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access

npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules/yarn'
npm ERR!  { Error: EACCES: permission denied, access '/usr/local/lib/node_modules/yarn'
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules/yarn' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:

И когда я удаляю все, что хочу установить, кроме "path" я понял:

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

1 Ответ

1 голос
/ 03 июня 2019

Вам нужно добавить своего пользователя в группу sudo, чтобы она могла использовать "sudo".

# usermod -aG sudo username

Вам необходимо сделать пользователя владельцем или в группе владельцев "/ var / www".

# chown username /var/www/

и вам нужно исправить разрешения npm , чтобы иметь возможность устанавливать пакеты глобально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...