codespaces少し触った所感
May 13, 2020
codespaces各プランを触ってみての感想と、ローカルでのVSCodeとの比較
OS
vsonline:~/workspace$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
VERSION_CODENAME=stretch
ID=debian
extensionをプラグインを使って同期すると入らない場合がある
- vscode-syncingを使って設定の同期をしているが拡張、設定など全く入らなかった
- インストールすると~/.vscode/extensionsに入るが、~/.vscode-remote/extensionsに入らないため、拡張が効かない
- シンボリックリンクをはるか、ローカルのVSCodeからリモート環境に差分インストールするしかない
- 他のプラグインは動作するか不明
ブラウザ版のVSCodeだとキーバインドがブラウザ用に調整されている
- ネイティブアプリでのキーバインド設定が流用できるか不明
self-hosted環境
- cloud9で試した
- vsoコマンドで立ち上げるヘッドレスVSCodeみたいなプロセスが、再起動時にうまく動いていないようだった
- systemctlへの登録などをミスったのかもしれない
- self-hostedを利用するとMS以外の環境でもCodespacesを利用できるが、remote developmentプラグインを使ってSSHでのリモート開発ができるなら、そちらの方が環境トラブルに悩まされずに済そう
port forward
-
ローカルのVSCodeからCodespacesを使っている場合、リモート環境上で立ち上げたサーバーにlocalhostでそのままアクセスが可能
- これはlive shareと同じようなイメージ
- ブラウザ上で操作してサーバーを立ち上げると、エラーが発生して接続できなかった
- ネイティブのVSCodeとブラウザ上でのVSCodeでこの辺の挙動が違う様子
感想
ローカル環境の依存が少なくなり、ネットワークもリモートの方が明らかに強かったので、できればリモート開発にシフトしたいと思った。(少なくとも個人開発においては) OS的な問題で、Dockerを扱う場合はMacだとかなり遅くなるケースがあるので、この面でもメリットがある印象。 ブラウザ上でのVSCodeはまだ未知数(バギーかも)。 Codespacesを使うなら現状はまだ、ローカルのVSCodeから接続した方が良いのかもしれない。