teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

コメントとssh-agentの実行例を修正

2020/02/13 22:59

投稿

shgtkshruch
shgtkshruch

スコア665

answer CHANGED
@@ -15,7 +15,7 @@
15
15
 
16
16
  ではどうするかというと、mattoさんも調べていただいた、`ssh-add ~/.ssh/key`を使います。
17
17
  これはSSHのエージェント転送という機能で、`ssh-add`を実行した環境にあるSSHキーを、SSHの接続先(今の例ですとEC2)で使用するようにする・引き継ぐやり方です。
18
- この機能を使うと、手元のPCにあるGitHubのSSHキーを使って、EC2からGitHubのソースコードを取得できます。
18
+ この機能を使うと、手元のPCにあるGitHubに登録済みのSSHキーを使って、EC2でもGitHubのソースコードを取得できます。
19
19
 
20
20
  やることは2つです。
21
21
  まず、CapistranoでSSHのエージェント転送機能を使えるようにします。
@@ -28,11 +28,12 @@
28
28
 
29
29
  ```
30
30
 
31
- 次に、デプロイもとのサーバーでsshエージェントを起動して、GitHubの秘密鍵を登録します。
31
+ 次に、デプロイもとのサーバーでsshエージェントを起動して、GitHubのデプロイキーを登録します。
32
32
 
33
33
  ```sh
34
+ eval `ssh-agent`
34
- ssh-add ~/.ssh/github_rsa # GitHubの秘密鍵のパスを指定してください
35
+ ssh-add ~/.ssh/github_rsa # GitHubのデプロイキーのパスを指定してください
35
-
36
+ ssh-add -l # 鍵が登録されていることを確認
36
37
  ```
37
38
 
38
39
  この設定をしてからCapistranoでデプロイするとうまくいくと思うですが、いかがでしょうか。

1

コメントを修正

2020/02/13 22:59

投稿

shgtkshruch
shgtkshruch

スコア665

answer CHANGED
@@ -3,8 +3,8 @@
3
3
  2. EC2からGitHubにアクセスしてソースコードを取得
4
4
 
5
5
  今回は、2の段階でエラーが発生しています。
6
- なぜ2でエラーが起こるかというと、EC2にはGitHubに接続できるSSHキーが無いからす。
6
+ なぜ2でエラーが起こるかというと、おそらくEC2にはGitHubに接続できるSSHキーが無いからだと思います。
7
- ので、書いていただいたようなエラーメッセージが表示されます。
7
+ ですので、書いていただいたようなエラーメッセージが表示されていると考えられます。
8
8
 
9
9
  ```
10
10
  git stderr: Permission denied (publickey).