なにこれ
CircleCIでcapistranoを使った自動デプロイで、
Errno::ETIMEDOUT: Connection timed out - connect(2) for IPアドレス
というエラーにハマりかけたので、対処法を残しておきます。
前提条件
CircleCIにSSH認証済み
結論
AWSのセキュリティグループのインバウンドルールを編集で、
タイプ【SSH】のソースをカスタムで【0.0.0.0/0】にする。以上
エラー文
CircleCI.
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as ********@13.114.24.148: Net::SSH::ConnectionTimeout
Caused by:
Net::SSH::ConnectionTimeout: Net::SSH::ConnectionTimeout
Caused by:
Errno::ETIMEDOUT: Connection timed out - connect(2) for IPアドレス
Tasks: TOP => rbenv:validate
(See full trace by running task with --trace)
Exited with code exit status 1
推察
SSH認証エラーじゃなくて、Connection timed out
なのね。
IPアドレスに繋がらない??
CircleCIからAWSにSSH接続をしてるわけなので、AWSのセキュリティグループを確認してみる。
SSHがマイIPになってるやん!
以下の画像のように、
マイIPから全てのIPを許可するように変更
もう1回CircleCIを走らせます。
通りました!良かった〜
RDS導入のときにもハマりかけたので
インバウンドルールは気をつけないとですね。