1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

bundle exec cap production deployで起きるあるあるエラー

Last updated at Posted at 2020-03-12

自分がよくデプロイする時に起きるエラーをまとめます。

またそのエラーの解決方法も紹介してきます。

##動作環境

  • OS:Mac
  • エディタ:VScode
  • Ruby2.5.1
  • Ruby on Rail:5.2.1
  • Git:2.21

##まず最初にやっておくこと

ターミナル
$bundle install

これをやらないと、あるあるデプロイエラー④のエラーが出ることがあるので最初にやっておきましょう。

##あるあるデプロイエラー①

ターミナル
$ bundle exec cap production deploy
##エラー文
upported if ED25519 is available (NotImplementedError)
net-ssh requires the following gems for ed25519 support:
 * ed25519 (>= 1.2, < 2.0)
 * bcrypt_pbkdf (>= 1.0, < 2.0)
See https://github.com/net-ssh/net-ssh/issues/565 for more information
Gem::LoadError : "ed25519 is not part of the bundle. Add it to your Gemfile."
(Backtrace restricted to imported tasks)
cap aborted!
NotImplementedError: OpenSSH keys only supported if ED25519 is available
net-ssh requires the following gems for ed25519 support:
 * ed25519 (>= 1.2, < 2.0)
 * bcrypt_pbkdf (>= 1.0, < 2.0)
See https://github.com/net-ssh/net-ssh/issues/565 for more information
Gem::LoadError : "ed25519 is not part of the bundle. Add it to your Gemfile."

Tasks: TOP => rbenv:validate
(See full trace by running task with --trace)

###解決方法
gemfileに"ed25519","bcrypt_pbkdf"に追加する。

gemfile

# Deployment
group :deployment do
  #他のgem
  gem 'unicorn'
  gem 'ed25519' #追加
  gem 'bcrypt_pbkdf' #追加
end

##あるあるデプロイエラー②

$ bundle exec cap production deploy

#エラー文
: Exception while executing on host refoma-web07: git exit status: 128 (SSHKit::Runner::ExecuteError)
git stdout: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
git stderr: Nothing written
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing on host refoma-web07: git exit status: 128
git stdout: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
git stderr: Nothing written


Caused by:
SSHKit::Command::Failed: git exit status: 128
git stdout: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
git stderr: Nothing written

Tasks: TOP => git:check
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing on host refoma-web07: git exit status: 128
git stdout: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
git stderr: Nothing written
  INFO Notifying Slack of deploy failed

###解決策

localの自分のアプリのディレクトリで以下のコマンドを実行する

ターミナル
ssh-add ~/.ssh/id_rsa   <ーこの鍵はGithubのssh接続で使ってるやつ

最初からつながってない方はconfig/deploy.rbの設定を見てください。

##あるあるデプロイエラー③

ターミナル
$ bundle install
##エラー文
Could not find fog-vsphere-3.2.3 in any of the sources

そもそもbundle installできない。

###解決策
Gemfile.lock で指定されているgemのバージョンがyank(削除)されてしまっているため。

対象のgemをupdateする。

ターミナル
$ bundle update fog-vsphere

##あるあるデプロイエラー④

ターミナル
$ bundle exec cap production deploy
##エラー文
bundler: failed to load command: cap(/Users/tanaka/Desktop/GitHub/web-app/vendor/bundle/ruby/2.5.0/bin/cap)

うまくいったと思ったらエラー。
非常に不愉快。

###解決方法

$ bundle install

bundle exec cap production deployをする前に、bundle installをしないとおこるので、事前にbundle installをしておきましょう。

##あるあるデプロイエラー⑤


エラーがでないで途中で止まる ##目安:10分以上

サーバーとやりとり中に通信が遮断されると起きる

###解決策


Control + c ##強制終了

待つのが面倒く際ので、実行を終了させてもう一度デプロイしましょう。

##参考文献

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?