👋

VS CodeのRemote - SSHでsudo usermod -aG docker $USERしても変更が反映されない時の解決方法

2024/01/20に公開

はじめに

VSCodeのRemote - SSHという拡張機能がある。自分は業務で他マシンにSSHして作業するという機会が多いので、使用頻度の高い拡張機能の1つである。
今回、このRemote - SSHを使っていて、表題にある様なユーザー情報の変更の反映が上手くいかなかったので、その解決方法を記載する。

結論

いきなり結論だが、以下のようにコマンドパレットから、Remote-SSH: Kill VS Code Server on Hostで、接続先のVS Codeのサーバープロセスをkillし、再度接続しなおすと、ユーザー情報の変更が反映される。
※実行すると、SSH接続が切断されるので、再接続が必要

また、自分はまだ遭遇した事はないが、Remote - SSHが正しく動作せずに、ハングアップしてしまったり、無限ループに陥ってしまった場合にも有効なケースがあるらしい。

経緯

毎回sudoをつけてdockerコマンドを叩くのも面倒なので、表題にある様なユーザー情報の更新(Dockerグループへの追加)を実行したが、シェルを起動しなおしたり、一回ウィンドウを落としてみても変更が反映されなかった。
もちろん、接続先の端末を再起動しても良かったのだが、遠隔で接続しているマシンなので、万が一再起動できなかった時の事を考え、調査した所上記の様な解決方法を知ることができた。
また、VS Codeの拡張機能だとユーザー情報の更新が確認できなかったが、sshコマンドからであれば変更の反映が確認できたので、設定の変更自体は上手くいっているという事も問題の切り分けに役に立った。

参考

https://zaki-hmkc.hatenablog.com/entry/2021/01/26/225513
https://zenn.dev/hpp/articles/88ee19f7c3a62e
https://docs.docker.com/engine/install/linux-postinstall/

Discussion