Postępuję a Samouczek do obsługi aplikacji Szyny 6 na AWS za pomocą Capistrano3, Puma serwer WWW i nginx. Jestem w końcowych etapach, ale uścisnij uwierzytelnianie Niepowodzenie błędu , gdy próbuję wdrażać mój ruby na aplikację Rails za pomocą Capistrano. Polecenie, którego używam jest cap production deploy. Stworzyłem parę kluczy SSH, dodałem klucz publiczny do mojego Github Repo zawierający kod aplikacji i dodałem ścieżkę pliku klucza prywatnego do poniższego fragmentu w pliku: /Users/edward/Project/EdwardBlog/blog/config/deploy/production.rb

set :ssh_options, { 
  forward_agent: true, 
  auth_methods: %w[publickey],
  keys: %w[/Users/edward/.ssh/id_rsa]
}

Mogę ssh w Github tak, jak ssh -T git@github.com i podwójnie sprawdziłem para kluczowa pasuje do publicznego klawisza SSH dodałem do mojego konta GitHub. Dodałem również klucz prywatny do ssh-agenta za pomocą ssh-add -l

Próbowałem również wdrożyć aplikację za pomocą mojego hasła, ale nadal nie miałem szczęścia, gdy wszedłem do mojego hasła konta GitHub w monicie:

set :ssh_options, {
   keys: %w(/Users/edward/.ssh/id_rsa),
   forward_agent: true,
   auth_methods: %w(password)
 }

Nie wiem, dlaczego nie jest uwierzytelniający przy użyciu lokalnych poświadczeń. Doceniłoby wszelkie możliwe rozwiązania lub obejścia.

Oto moja wiadomość podczas uruchamiania wdrażania produkcji CAP CACK:

#<Thread:0x00007f9b70963d00@/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:10 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
    12: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute'
    11: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in `run'
    10: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in `instance_exec'
     9: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/capistrano-3.11.2/lib/capistrano/scm/tasks/git.rake:8:in `block (3 levels) in eval_rakefile'
     8: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:80:in `execute'
     7: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `create_command_and_execute'
     6: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `tap'
     5: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `block in create_command_and_execute'
     4: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netssh.rb:130:in `execute_command'
     3: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netssh.rb:177:in `with_ssh'
     2: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in `with'
     1: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in `call'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/net-ssh-5.2.0/lib/net/ssh.rb:263:in `start': Authentication failed for user ubuntu@18.191.247.244 (Net::SSH::AuthenticationFailed)
    1: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:11:in `block (2 levels) in execute'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:15:in `rescue in block (2 levels) in execute': Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244 (SSHKit::Runner::ExecuteError)
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244


Caused by:
Net::SSH::AuthenticationFailed: Authentication failed for user ubuntu@18.191.247.244

Tasks: TOP => deploy:check => git:check => git:wrapper
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244


** DEPLOY FAILED
** Refer to log/capistrano.log for details. Here are the last 20 lines:


Please make sure you have the correct access rights

and the repository exists.

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 13:58:01 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [ca90e3ef] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [ca90e3ef] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 13:58:35 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [cd0c878a] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [cd0c878a] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 14:28:49 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [a745cde8] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [a745cde8] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )
0
I Like 2 styczeń 2020, 02:21

1 odpowiedź

Najlepsza odpowiedź

Uwierzytelnianie nie powiodło się dla użytkownika Ubuntu@18.191.247.244

Ten problem jest w ostrzaniu do celu wdrażania jako ubuntu, nie jest w związku z GitHub. Upewnij się, że możesz skłonić do tego IP z użytkownikiem ubuntu, a jeśli tak, spróbuj dodać swój klawisz SSH do agenta ({x2}} lub cokolwiek), aby zapewnić, że Capistrano może ustanowić połączenie SSH z Twoim Wdrażaj docelową maszynę.

2
Chris Heald 1 styczeń 2020, 23:28