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

Ошибка подключения при развертывании PHP-приложения в Linode с помощью Capistrano

Я пытаюсь развернуть приложение PHP на сервере Linode с помощью Capistrano. Я установил Ruby и Capistrano и настроил deploy.rb файл (возможно, неправильно).

Однако когда я бегу cap deploy Я получаю такую ​​ошибку:

[deploy:update_code] exception while rolling back: Capistrano::ConnectionError, connection failed for: myusername@lish-atlanta.linode.com (Net::SSH::AuthenticationFailed: myusername) connection failed for: myusername@lish-atlanta.linode.com (Net::SSH::AuthenticationFailed: myusername)

Вот мой deploy.rb файл:

set :application, "App name"
set :repository,  "https://github.com/MyProject/Main.git"
set :user, "root"
set :password, "sshpassword"
set :scm, :git
set :deploy_to, "/srv/www/myproject.com/htdocs"

set :deploy_via, :remote_cache
set :use_sudo, false
set :copy_exclude, [".git", ".DS_Store", ".gitignore", ".gitmodules", "Capfile", "config/deploy.rb"]

set :ssh_options, {:forward_agent => true}

server "myusername@lish-atlanta.linode.com", :app

Я проверил, что имя пользователя и пароль работают для SSH (я вошел в SSH с терминала с этими учетными данными).

Любые идеи? Любая помощь будет принята с благодарностью! При необходимости могу уточнить вопрос :)

Проблема может заключаться в том, что вы установили: user как «root», но затем вы используете SSH на сервере как «myusername». Вы правы, установив для use_sudo значение false, но должен быть пользователь, предназначенный для развертываний. Создайте пользователя для развертывания приложения и убедитесь, что /srv/www/myproject.com/htdocs принадлежит этому пользователю. Вы бы хотели, чтобы ваши пользовательские настройки были примерно такими:

set :user, "deployer"
set :group, "deployer"
set :password, "sshpassword"

server "deployer@lish-atlanta.linode.com", :app