はじめに
Lima等のCUIしかない仮想環境上でコードを書くときに、VSCodeのRemoteDevelopmentはとても便利ですね。
でも私普段からAndroid Studioを使っていることもあり、Jetbrainsのエディターも試してみたくなりました。
IntelliJIDEAでVSCodeのRemoteDevelopmentみたいなのができないか調査した結果です。
環境
Intel macでOSはSonoma 14.1、IntelliJIDEAのバージョンはIntelliJ IDEA 2023.3 (Ultimate Edition)です。
やり方
SSHの設定
LimaのSSHの設定は~/.lima/{lima上の環境名}/ssh.configに書かれています。
(lima上の環境名はlimactl listで確認できます。)
ターミナルから以下のコマンドを実行してください。
vi ~/.lima/lima/ssh.config
ここで出てきた情報はあとで使うのでターミナルは開いたままにしておいてください。
多分こんな感じのが出ているはず
# This SSH config file can be passed to 'ssh -F'.
# This file is created by Lima, but not used by Lima itself currently.
# Modifications to this file will be lost on restarting the Lima instance.
Host lima-rocky-9
IdentityFile "/Users/user/.lima/_config/user"
IdentityFile "/Users/user/.ssh/hogehoge"
IdentityFile "/Users/user/.ssh/hugahuga"
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
NoHostAuthenticationForLocalhost yes
GSSAPIAuthentication no
PreferredAuthentications publickey
Compression no
BatchMode yes
IdentitiesOnly yes
Ciphers "hogehogehugahuga.com"
User user
ControlMaster auto
ControlPath "/Users/user/.lima/hoge.sock"
ControlPersist yes
Hostname 111.111.111.111
Port 123456
IntelliJ IDEA側の設定
まずはIntelliJ IDEAを開いて、左側のタブからリモート開発を選びます。
その後SSH接続の下に書いてある新規接続をクリックします。
次に接続の一番右側にある歯車マークを押してSSH構成の設定画面に飛びます。
この画面に、先ほどのターミナルで確認した情報を入力していきます。
- ホストには
Host
の後ろに書いてあるlimaの環境名を入力します。 - ユーザー名には
User
の後ろに書いてあるユーザー名を入力します。 - 認証タイプはキーペアを選択します。
- 秘密鍵ファイルには
IdentityFile
の後ろに書いてあるパスのうち、ファイル名がidで始まるものを入力します。 - パスフレーズは適当に入力します。(あとで使うので覚えといてください。)
全て入力し終わったら接続のテストを押して確認してください。
「正常に接続されました!」と出ればOKです。
右下のOKボタンを押してSSH構成のダイアログを閉じてください。
戻ってきた画面で接続
の欄に先ほど作った接続設定が入っています(もし入っていなかったらプルダウンから選択してください)
接続を確認して続行
を押してください。
SSH接続が完了したら、IDEのバージョンとプロジェクトディレクトリを選ぶ画面が出てきます。
IDEのバージョンは適当で良いのですが、プロジェクトディレクトリは下の画像の矢印のところを押して選んでください。
これ適当にするとプロジェクトとして認識してくれないので注意してください。
IDEを起動して接続
を押してください。
Jetbrains Gatewayが開きます。
先ほど入力したパスフレーズを入力してください。
以上で完了です。