Windows で VSCode Remote Container で gpg forwarding

公開:2020/09/21
更新:2020/09/21
1 min読了の目安(約800字TECH技術記事

VSCode Remote Container 拡張を使っていると、各コンテナ上に開発環境を作ることとなる。
セットアップの自動化はできるものの、gpg 鍵をどうしたものか悩ましかった。

VSCode Remote Container 拡張は gpg forwarding ができるが、使うためにはコツが必要だったので備忘録に書いておく。

  1. [Windows 上] Gpg4win のインストール

    https://www.gpg4win.org/

    GUI で動く pinentry が欲しいだけ。WSL2 側で pinentry-qt 動かすでもいいと思われるが、X とか入れるの面倒だったのでこれで済ませた。

  2. [WSL2 上] socat と gpg のインストール

    sudo apt install socat gpg

    socat は VSCode がコンテナとホストで通信するのに使っている?
    なんかダイアログがでたので入れている

  3. [WSL2 上] pinentry-program として pinentry.exe を使うようにする

echo pinentry-program /mnt/c/Program\ Files\ \(x86\)/Gpg4win/bin/pinentry.exe > ~/.gnupg/gpg-agent.conf
gpg-connect-agent reloadagent /bye

以上の手順を済ませば gpg 鍵を作るなり、import するなりすれば、それをコンテナ上でも使えるようになる。