Python VScode

VSCodeから外部のJupyterへ接続する

投稿日:

目的

自端末の計算リソースが乏しい場合などに、リソースの豊富な計算機のJupyterを使用したいシーンがあります。ブラウザでJupyterを開けばいいだけの話ですが、エディタとして優れたVSCodeを使用したままJupyterも利用したい、というわがままな要求を満たすための方法についてまとめます。

環境

Jupyter サーバ (Windows10,Anaconda3 python3.7.6)

VSCodeクライアント version 1.46.0
python拡張機能

Step1 : Jupyterのconfig設定

VSCodeから外部のJupyterを使用する場合、VSCodeの拡張機能を使用することができますが、この拡張機能ではURLにtokenを埋め込んでアクセスする櫃ようがあります。そのため、Jupyterをパスワード認証ではなく、token認証方式にしておく必要があります。通常、tokenはJupyterサーバを起動するたびに生成されますが、今回は固定tokenを設定する方法について記載します。セキュリティ的には難ありなので注意。

ということで、まずはHOMEディレクトリの.jupyterフォルダにある、jupyter_notebook_config.pyを開きます。

ない場合は、以下を参考に作成してください。

jupyter_notebook_configファイルを開いたら、一番下に以下のようにtoken認証の記述を追加します。’ ‘の中に設定したいtokenの文字列を記載します。

c.NotebookApp.token = '<設定したいtoken>'

その後、Jupyter Notebookを再立ち上げします。再立ち上げの方法は一旦、サーバーの動作しているプロンプトの画面を閉じ、WindowsのスタートメニューのなかのAnaconda3 → Jupyter Notebookの順に開けばOkです。

以上で、Jupyter側の設定は終了です。

Step2 : VSCodeからの接続

VSCodeからの接続にはPythonの拡張機能を使用します。もしなければextensionからインストールします。

Pythonの拡張機能がインストールできている状態でF1キーを押し、表示されたサーチボックスの中にpythonと入力します。検索候補の中から

Python:Specify local or remote Jupyter server for connectionsをクリックします。

次にPick how to connect to Jupyterの選択がでますので、Existingを選択します。

するとEnter the URI of the running Jupyter serverと表示されます。

ここでtokenを埋め込んだJupyterサーバーのURIを以下のように入力します。

http://<hostname or IP>:8888/?token=<your_token>

下記例ではポートが8080となっていますが、通常Jupyterのデフォルトは8888になっているはずです。

以上でJupyterとの接続設定は完了です。

Step3 : Jupyterを使用して確認

最後に正しく接続できているかを確認します。

F1キーを押し、Python: Create New Blank Jupyter Notebookを選択します。

するとNotebookのセルが立ち上がるかと思います。この段階では右上にJupyter Server Not Startedと表示されているかもしれませんが、気にしなくても大丈夫です。

セルの中にと入力し、Shift + Enterを押します。

print("Hello World!")

すると、自動的にリモート先のJupyter serverと接続され、Hello worldと表示されます。右上の表示も相手先のJupyterのURIに変わりました。

無事にVSCodeからリモートのJupyterを使用することができました。

まとめ

リモートのリソースをVSCodeから使用できるメリットは個人的にはかなり大きいため、今後もこの環境を利用していきたいと思います。

-Python, VScode

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【Python】標準偏差と分散の計算

Contents1 目的2 標準偏差3 Pythonによる標準偏差の計算4 分散 目的 以前の記事で四分位偏差によりデータの分散度の計算を行いましたが、四分位偏差ではデータの代表値である四分位数のみを …

VSCodeでJupytreNotebookを使う

Contents1 目的2 環境3 Step1 : pythonプラグインインストール4 Step2 : JupyterNotebookの立ち上げ5 Step : 3 使ってみる6 まとめ 目的 VS …

Python formatの基本的な使い方

Contents1 目的2 文字列整形3 型指定 目的 python3系の文字列操作のメソッドであるformatの基本的な使い方について勉強する。 文字列整形 formatの引数に文字列等(intやf …

【Python】dtreeviz使用時にExecutableNotFound: … ,make sure the Graphviz executables are on your systems’ PATHが出たときの対処

Contents1 概要2 症状2.1 結果3 対処その13.1 結果4 対処その24.1 結果5 まとめ 概要 Pythonの決定木の可視化でビジュアルに優れたdtreevizパッケージのメソッドを …

【Python】標準変化量と変異係数計算

Contents1 目的2 データの「まれ」さ3 標準変化量4 Pythonによる標準変化量の計算5 変異係数 目的 以前にデータの分散度を測る標準偏差という指標についてpythonで求めてみました。 …

言語切り替え

カテゴリー