はじめに
VSCode の リモートコンテナ や dev container を使って開発したいときに、遭遇したエラーの対処法を少し
問題 疑問
- リモートSSH機能で VSCode 開くと、terminal でHungする
- リモートコンテナにアタッチしたり、dev container を開くと、
リモートを開いています
から進まない
どちらも、M1 Mac上で OrbStack 上で立ち上げた ArchLinux に接続しているときに発生した
まとめ 結果 解決方法
VSCode から開く Terminal では Tmux は起動しない
以下設定で、VSCode から起動されているかどうかを判定し、Tmux を起動するかどうかを切り替える
is_vscode() { [[ -n $VSCODE_INJECTION ]]; }
拡張機能のシグニチャ検証を無効化、もしくは、ローカルから拡張機能をインストールする設定を有効にする
dev container の場合は、拡張機能のシグニチャ検証を無効化
{ // Configure tool-specific properties. "customizations": { "vscode": { "settings": { // Workaround for x86_64 containers on aarch64(like M1 Mac) hosts // see: https://zenn.dev/tbistr/articles/x86-devcontainer-on-aarch64 "extensions.verifySignature": false, }, }, }, }
コンテナ内の vscode server 設定を追加(.data/back/.vscode-server はホスト側からマウントしている前提)
echo '{ "extensions.verifySignature": false }' >> .data/back/.vscode-server/data/Machine/settings.json
ローカルから拡張機能をインストールする設定を有効化 こちらは有効かどうかあやしい(無効化後、再現確認時に発生せず)
{ "remote.downloadExtensionsLocally": true // For extention install hung if attach container on orb on m1 mac }