LoginSignup
2
4

More than 1 year has passed since last update.

WSL2 に Anaconda をインストールして JupyterLab を使う

Last updated at Posted at 2021-06-18

はじめに

データ視覚化、機械学習、データマイニング用ツールとして JupyterLab を使用するため Anaconda をインストールする。ローカルの Windows 環境にインストールすることもできるが、できるだけローカル環境を汚したくない、かつ Docker で環境を作成するのはめんどくさそうだったため、WSL2 (Ubuntu-18.04) に Anaconda をインストールしてそこから JupyterLab を使用することとした。

(2021/7/8 修正)
~/.jupytetr/jupyter_lab_config.py にて c.LabApp.open_browser = False をコメントアウトして c.LabApp.use_redirect_file = False を追記。これで $ jupyter lab 実行時に自動でウィンドウが立ち上がる。

Anaconda インストーラのダウンロード

適当なディレクトリで以下コマンドを実行し、インストーラをダウンロードする。URL はここの Anaconda Installers から調べる。

$ wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh

Anaconda のインストール

上記コマンドでシェルスクリプトがダウンロードされたので、以下で実行する。

$ bash Anaconda3-2021.05-Linux-x86_64.sh

上記実行後に [Enter] を押すと、規約が表示される(q でスキップ可能)ので [yes] と打ち込んで同意する。その後インストール先が聞かれるが、デフォルトのままで進める。最後の conda init の実行をするかどうか聞かれるので、[yes] を選択すると .bashrc 末尾に各種設定がされる。設定を反映させるために source ~/.bashrc を実行すると、(base) [user name]:~$ のような画面になる。

Jupyter Lab の実行

この状況で、$ jupyter lab を実行しても一瞬なにか表示がされるがその後なにも起きない。調べたところ、以下のような環境設定を行う必要があるとのこと。

1. jupyter_lab_config.py の作成

$ jupyter lab --generate-config を実行すると、 ~/.jupyter/jupyter_lab_config.py が作成される。

2. c.LabApp.open_browser = False を追記

設定ファイルである ~/.jupyter/jupyter_lab_config.py の末尾に c.LabApp.open_browser = False を追記すると、$ jupyter lab 実行で表示される http://localhost:8888/lab?token=xxxxxxxxxx のような URL にアクセスすることで JupyterLab を使用できる。

token が毎回生成されてそれを指定してアクセスするのはめんどくさいので、jupyter labをリモートから使うを参考にして、以下設定も合わせて実行。

3. パスワードのハッシュ値を生成

以下を実行し、パスワードのハッシュ値 ('sha1:xxxxxxxxxx') をコピーして、テキストファイルなどに保存する。

$ ipython
In  [1]: from IPython.lib import passwd
In  [2]: passwd()
Out [2]: 'sha1:xxxxxxxxxx'
In  [3]: exit()

~/.jupyter/jupyter_lab_config.py の末尾に c.LabApp.password ='sha1:xxxxxxxxxx' を追記すると、$ jupyter lab 実行で表示される http://localhost:8888/lab のようにトークンなしの URL で JupyterLab にアクセスできるようになる。

4. (2021/7/8 追記) c.LabApp.use_redirect_file = False を追記

設定ファイルである ~/.jupyter/jupyter_lab_config.py の末尾に c.LabApp.use_redirect_file = False を追記すると、$ jupyter lab 実行で自動でウィンドウが立ち上がる。

(2021/6/21 追記) conda install が成功しない場合の対応

WSL2 ターミナル上で、$ conda install [package] を実行するも以下エラーが繰り返され、インストールができない。

$ conda install [package]
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.

conda updateで「Solving environment: failed」となった時の解決法に従って、以下コマンドを実行するとインストールできるようになった。

$ conda install anaconda
$ conda update --all

またパッケージによっては、PackagesNotFoundError: The following packages are not available from current channels: というエラーが出るものもあるので、$ conda config --append channels conda-forge でレポジトリリストを追加しておく。(この例は conda-forge を追加しただけで、その他レポジトリリストも同様に追加できる。)
すでに追加されているレポジトリリストを確認するには $ conda config --get channels、レポジトリリストを削除するには $ conda config --remove channels conda-forge を実行すればよい。

(2021/6/21 追記) JupyterLab 拡張機能

JupyterLabのすゝめを参考に拡張機能を入れる。以下コマンドで nodejs をインストールし、アップデートする。

$ conda install nodejs
$ conda list | grep nodejs
nodejs                    6.13.1                        0    conda-forge
$ conda update nodejs
nodejs                    15.14.0              h92b4a50_0    conda-forge

上記で拡張機能を入れる前準備ができる。

おわりに

意外と時間がかかったが、WSL2 で JupyterLab を扱えるようになった。いちいち localhost:8888/lab にアクセスするのが手間なので、そのあたりなんとかできないかなあ。

2
4
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
2
4