VSCodeのRemoteSSHが便利。

各環境でも使いたいのですが、ネットに接続できない環境だと使えない。

サーバ・クライアント共にネットに接続できない環境でどうにか使いたい。

その時のやり方。

参考


資源の準備

VSCode本体のオフラインインストーラー。

あと、下記の拡張機能のVSIX

日本語化

RemoteSSH

Editing Configuration Files

Remote Explorer

VSCodeサーバ

これがネット無し環境だとDL出来なくて繋げない。なので先に手動でDLしておく。

DLの仕方は参考の記事を参照。

対象サーバへVSCodeサーバの資源をコピー

# こんな感じで
scp vscode-server-linux-x64.tar.gz user@server /tmp/

拡張機能のJS書き換え

上記までは参考にした記事の話。

最近のVSCodeのRemoteSSHのソースだと上記だけだと無理でした。

コードの書き換えで下記の内容が必要。

コードの場所。

C:\Users\[USERNAME]\.vscode\extensions\ms-vscode-remote.remote-ssh-*\out\extension.js

下記変える内容。

wget --version > /dev/null\nif [ $? -eq 0 ]\nthen\n\twget --connect-timeout=7 --tries=1 --dns-timeout=7 -q ${r} -O - ${e}

↑を↓に

wget --version > /dev/null\nif [ 0 -eq 0 ]\nthen\n\tcp /tmp/vscode-server-linux-x64.tar.gz vscode-server.tar.gz
wget --version &> /dev/null\n\tif (( $? == 0 ))\n\tthen\n\t\techo "Downloading with wget"\n\t\tWGET_ERRORS=$(2>&1 wget ${b=y,"off"!==b?"--tries=1":""} --connect-timeout=7 --dns-timeout=7 -nv -O vscode-server.tar.gz $DOWNLOAD_URL)

↑を↓に

wget --version &> /dev/null\n\tif (( 0 == 0 ))\n\tthen\n\t\techo "Downloading with wget"\n\t\tWGET_ERRORS=$(2>&1 cp /tmp/vscode-server-linux-x64.tar.gz vscode-server.tar.gz)

どうも、wget使えない場合はcurlでも試すみたいな変更が入ってるようで、その辺調整しないとダメっぽい。