Назад | Перейти на главную страницу

Команда «pm2 deploy production setup» завершается неудачно, в доступе отказано (открытый ключ)

Поэтому я полагаю, что pm2 и SSH неправильно настроены для работы друг с другом на моей машине. Я прекрасно могу подключиться к удаленному серверу по SSH вручную, используя ssh user@hostname.

Сервер представляет собой сервер DigitalOcean под управлением Ubuntu 16.04, если это имеет значение (я все еще новичок, поэтому я не уверен, какая информация важна для этого вопроса).

Команда и ошибка:

jon@jon-AllSeries:~/Workspace/forumerly$ sudo pm2 deploy production setup
--> Deploying to production environment

--> on host 162.243.197.96
  ○ hook pre-setup
Permission denied (publickey).
 
  setup paths failed
 
Deploy failed

Мой файл экосистемы.config.js:

module.exports = {
  /**
   * Application configuration section
   * http://pm2.keymetrics.io/docs/usage/application-declaration/
   */
  apps : [

    // First application
    {
      name      : 'forumerly',
      script    : 'app.js',
      env_production : {
        NODE_ENV: 'production'
      }
    },

  ],

  /**
   * Deployment section
   * http://pm2.keymetrics.io/docs/usage/deployment/
   */
  deploy : {
    production : {
      user : 'deploy',
      host : '162.243.197.96',
      ref  : 'origin/master',
      repo : 'https://github.com/jonlove/forumerly.git',
      path : '~/forumerly',
      'post-deploy' : 'nvm install && npm install && pm2 reload ecosystem.config.js --env production'
    },
  }
};

Не могу понять, как это исправить и даже что попробовать. SSH работает безупречно, но pm2 получает отказ в разрешении.

В соответствии с TFM, вам нужно добавить key вход.