LoginSignup
1
2

JupyterLabをリモートで使う方法

Last updated at Posted at 2023-05-19

問題

ワークステーションにリモートで入りプログラミングをするとき,「ターミナルを立ち上げ,sshでワークステーションに入りEmacsやVimでソースコードを書き,実行する」,という手順をとる場合があります.しかし,学生などの初学者はターミナル上で作業すること自体が難しいです.Google Colabolatoryのようにブラウザ上でインタラクティブにプログラミングしたほうが彼らには馴染みやすいでしょう.そこで,Google Colabolatoryのようなブラウザ上でのプログラミングを実現するJupyterLabをワークステーションに導入します.

方法

JupyterLabインストール

まずJupyterLabを動かすLinuxマシンにログインします.次に,venvがインストールされていない場合は,次のコマンドでインストールします.

sudo apt install python3-venv

次に,作業ディレクトリを作ります.ここではホームディレクトリにjupyterという名前で作成します.そして,jupyterディレクトリに移動します.

mkdir ~/jupyter
cd jupyter

ただし,jupyterディレクトリでjupyterを起動すると上のディレクトリが見えなくなります(初期ディレクトリがjupyterになり,その上のファイルは見えません.実行コマンドや設定ファイルを変えれば回避できます.).面倒なら上記の2つのコマンドを実行しせず,ホームディレクトリで作業したほうが良いかもしれません.
つぎに,virtualenvでJupyterLab用の仮想環境を作ります.

python3 -m venv jupyter

作ったJupyterLab用の仮想環境を起動します.

source jupyter/bin/activate

仮想環境を起動した状態でpipでJupyterLabをインストールします.プロンプトの前に仮想環境名(ここではjupyter)が表示されていれば,仮想環境が起動されています.ここで機械学習用なので,それに関連するライブラリもインストールします.必要に応じインストールするライブラリを変えます.

python3 -m pip install jupyterlab
python3 -m pip install numpy scipy matplotlib networkx scikit-learn
python3 -m pip install torch torchvision torchaudio

ここで間違ってjupyterlabをjupyterにしないことが重要です.jupyterlabはjupyterの後継ですので,新しい方を使ったほうが良いです.jupyterをインストールしてもそれなりに使えてしまうので間違いに気付きにくいです.インストール時に注意しましょう.
以上でインストールは完了でです.

インストールが済んだので,仮想環境を次のコマンドで終了させます.

deactivate

最後にワークステーションからログアウトしましょう.

exit

ブラウザでJupyterLabを使う.

まずブラウザからJupyterLabを使ってみましょう.

まずターミナルを立ち上げ,次のコマンドを打ち,sshを使いポートフォワーディングをします.

ssh -L 8888:localhost:8888 接続先

コマンドを実行すると,sshでワークステーションに入ったままになっています.次にJupyterLab用の仮想環境を起動します.次のコマンドでJupyterLabの仮想環境がある場所に移動します.

cd jupyter

次のコマンドで仮想環境を起動します.

source jupyter/bin/activate

仮想環境が起動したらJupyterLabを起動します.

jupyter lab

JupyterLabを起動したときにURL(localhost:8888/lab?token=...)が表示されます.これをブラウザに貼り付ければ,JupyterLabの画面が表示されブラウザ上でプログラミング出来るようになります(もしかしたらURLをクリックするだけでブラウザが開くかもしれません).

JupyterLabを終了するときは,JupyterLabを起動しているターミナルの画面でCtrl+Cを押します.そうすると終了するかと聞かれるのでyを押します.
次のコマンドでvertualenvを終了します.

deactivate

ワークステーションからログアウトします.

exit

この方法は手順が決まっていますしsshのクライアントが動く限り環境に依存しませんので,研究室などで使えると思います.クライアントがWindowsでも問題ありません.

Visual Sutudio CodeでJupyterを使う.

Visual Studio CodeでJupyterを使ったほうが色々便利です.ターミナルの操作もいりませんし,補完などVisual Studio Codeの機能も使えます.ただし,環境によってエラーが出て使えません(学生のWindowsマシンでは動きませんでした).

  • Visual Studio Codeをインストールします.
  • Visual Studio CodeにRemote SSHのプラグインをインストールします.
  • .ssh/configにサーバ情報を記述します.
    • WindowsではC:\User\ユーザ名,MacとLinuxでは/home/ユーザ名の中に作る.
  • Visual Studio Codeでワークステーション上のjupyterの作業ディレクトリを開きます.Visual Studio Codoでのsshの使い方は他のサイトを参考にしてください.
  • プログラムのコード(ノートブック)を開きます.
  • ノートブックを実行するときにどの環境で動かすか聞いてくるので,virtualenvのjupyterを選べばプログラムが動きます.

古いやり方

Debian11のやり方を書いておきます.

JupyterLabインストール

環境を汚さないため,virtualenvで仮想のPython環境でJupyterLabを動かします.そのために,まずvirtualenvをインストールします.

sudo pip install virtualenv

pipが入っていない場合は,事前にpipをインストールしましょう.
次に,作業ディレクトリを作ります.ここではホームディレクトリにjupyterという名前で作成します.そして,jupyterディレクトリに移動します.

mkdir ~/jupyter
cd jupyter

ただし,jupyterディレクトリでjupyterを起動すると上のディレクトリが見えなくなります(初期ディレクトリがjupyterになり,その上のファイルは見えません.実行コマンドや設定ファイルを変えれば回避できます.).面倒なら上記の2つのコマンドを実行しせず,ホームディレクトリで作業したほうが良いかもしれません.
次に,virtualenvでJupyterLab用の仮想環境を作ります.

virtualenv jupyter

作ったJupyterLab用の仮想環境を起動します.

source jupyter/bin/activate

仮想環境を起動した状態でpipでJupyterLabをインストールします.プロンプトの前に仮想環境名(ここではjupyter)が表示されていれば,仮想環境が起動されています.ここで機械学習用なので,それに関連するライブラリもインストールします.必要に応じインストールするライブラリを変えます.

pip install jupyterlab
pip install numpy scipy matplotlib networkx scikit-learn
pip install torch torchvision torchaudio

ここで間違ってjupyterlabをjupyterにしないことが重要です.jupyterlabはjupyterの後継ですので,新しい方を使ったほうが良いです.jupyterをインストールしてもそれなりに使えてしまうので間違いに気付きにくいです.インストール時に注意しましょう.
以上でインストールは完了でです.

インストールが済んだので,仮想環境を次のコマンドで終了させます.

deactivate

最後にワークステーションからログアウトしましょう.

exit
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2