💨
Macを再起動するとVS Code Dev ContainerでSSH認証情報の共有が切れる
先日こちらの記事で開発環境を丸ごとコンテナ内に収めて開発する方法を整理しました。
上記記事の手順でとりあえず開発できるようになったのですが、Macを再起動するとローカルのSSH認証情報の共有が切れてしまい、GitHubへのpush時にpermission denied
のエラーが発生してしまいました。
.zshrc
を修正することでこの問題を解消できました。
修正後の.zshrc
# 前略
if [ -z "$SSH_AUTH_SOCK" ]; then
# Check for a currently running instance of the agent
RUNNING_AGENT="`ps -ax | grep 'ssh-agent -s' | grep -v grep | wc -l | tr -d '[:space:]'`"
if [ "$RUNNING_AGENT" = "0" ]; then
# Launch a new instance of the agent
ssh-agent -s &> $HOME/.ssh/ssh-agent
fi
eval `cat $HOME/.ssh/ssh-agent`
fi
ssh-add --apple-use-keychain ~/.ssh/id_ed25519 # この行を追記
元々.zshrc
にはssh-agentを起動するための記述(if文の部分)を含めていました。
この部分についてはDev Containerの公式Docの記載に準拠しています。
これに加え、ssh-add
の実行を追加したら問題が解消されました🙌
Discussion