VS Code Remote Development、3種の違い
大晦日ですが、ブログ書いてますw
Visual Studio大好きマンなので、ArduinoのコーディングでもVisual Studioで書いて、Arduino IDEでコンパイルという使い方をしています。
VS Codeは使い慣れていないので、それほど使用しないのですが、、、VS CodeのRemote Development拡張だけは便利すぎて、メッチャ多用しています。
これ、Remote-SSH, Remote-Containers, Remote-WSLの3つがパックになった拡張なのですが、それぞれの使い分けが少しわかりにくいので図を書きました。
これがRemote Developmentの図だ!
Remote-SSHは、SSHトンネルを経由してリモートマシンの中を操作できます。
Remote-WSLは、WSLのディストリビューションの中を操作できます。これはローカルマシンの~になります。
Remote-Containersは、Dockerコンテナの中を操作できます。ローカルマシンだけでなく、リモートマシンのDockerコンテナも接続できるようです。(わたし自身は、リモートマシンのDockerコンテナへの接続はやったことがないです。→参考)
余談
わたしがメッチャよく使うのは、Remote-SSH。
Azure VMを操作するときとか、宅内LANに接続したRaspberry Piを操作するときなど。VS Codeを使ってRaspberry Piで実行しているPythonコードのデバッギング(一時停止して変数見る)なんかは、マジで神機能です。
次に使うのは、Remote-Containersで、ローカルのDockerコンテナを使った開発環境の安定化。これはRemote-ContainersのContainer Configuration(devcontainer.json)を使う用法です。(これに関しては別の機会に紹介したいと思います。)