CircleCIでSSHデバッグ


1. はじめに

CircleCIを利用していると、手元のローカルPCでは動作するのに、CircleCIで待たした途端に停止するなど、デバッグに困る場面に遭遇する事があります。そんな時用にCircleCIにはSSHでdockerへログインする機能があります。

2.利用方法

2-1. SSH public keyをGitアカウントに追加する

Linux/WSLの場合は、利用しているshellでkeyペアを確認する。もし作成していない場合は作成する

// キーペアが存在するか確認
$ ls ~/.ssh/id_rsa.pub;
// キーペアを作成
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): (Enter)
Enter passphrase (empty for no passphrase): (Enter)
Enter same passphrase again: (Enter)
Your identification has been saved in
~
// public keyの内容を確認
$ cat ~/.ssh/id_rsa.pub;

githubアカウントにpublic keyを追加する。(Github -> Settings -> SSH and GPG keys -> )にSSH keyとして、先ほど確認したpublic keyの内容を追加する。
https://github.com/settings/keys

2-2. SSH 接続

アクセスしたいjobをCircleCIで選択し、[Rerun]のボタンから、[Rerun Job with SSH]を選択して実行する。

“Enable SSH”というstepが走るので、stepを開き、中に記載されている接続情報でSSH接続する

2-3. エラーメッセージ

SSH接続を試行した際に、”Permission denied (publickey).”というメッセージが出力された場合は、SSHクライアントが利用する公開鍵情報がGithubに登録されていない。

3. 参考URL

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る