Skip to content

JupyterLab をインストールし、サービスとして起動する

JupyterLab は Jupyter Notebook の後継の位置付けにある OSS です。 今回は Ubuntu 22.04LTS へ JupyterLab を pip でインストールし、サービスとして起動させる手順をメモしておきます。 尚、今回は検証環境での利用を想定しており、セキュリティには配慮していません。

検証環境

対象 バージョン
Ubuntu 22.04.04LTS
Python 3.12.2
JupyterLab 4.1.2

インストール

pip でインストールします。 今回は仮想環境を作成せず、OS 全体にインストールします。

1
python3 -m pip install jupyterlab

asdf 環境の場合は asdf 環境の Python に pip で追加したコマンドが使えない場合の対処 の内容を参考に、reshim しておきます。

1
asdf reshim python

ノートブック保存用ディレクトリの作成

今回は JupyterLab で作成するノートブックを /root/labs に保存します。 このディレクトリを作成しておきます。

1
mkdir /root/notebooks/

サービスとして登録

JupyterLab をサービスとして登録する為、systemd 用のユニットファイルを作成します。 ファイルパスは /etc/systemd/system/jupyter.service にします。 尚、「asdf を利用している」「していない」で Jupyter 関連コマンドのファイルパスが変わる為、「シンボリックリンクを利用する」か、または「愚直にファイルパスを書き分ける」などの工夫が必要です。 今回は環境に応じてファイルパスを書き分けることにしました。

JupyterLab が Listen するポートは TCP/80 を指定しています。

asdf を利用していない場合

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Unit]
Desctiption = JupyterLab
After = syslog.target

[Service]
Type = simple
WorkingDirectory = /root/notebooks/
Restart = always
ExecStart = /usr/local/bin/jupyter-lab --allow-root --ip='0.0.0.0' --port='80' --NotebookApp.token='' --NotebookApp.password=''
User = root
Group = root

[Install]
WantedBy = multi-user.target

asdf を利用している場合

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Unit]
Desctiption = JupyterLab
After = syslog.target

[Service]
Type = simple
WorkingDirectory = /root/notebooks/
Restart = always
ExecStart = /root/.asdf/shims/jupyter-lab --allow-root --ip='0.0.0.0' --port='80' --NotebookApp.token='' --NotebookApp.password=''
User = root
Group = root

[Install]
WantedBy = multi-user.target

ユニットファイルを新規作成したら systemctl daemon-reload しておきます。

1
systemctl daemon-reload

サービスの起動

サービスの起動、及び自動起動設定を行います。

1
2
systemctl start jupyter.service
systemctl enable jupyter.service

Web ブラウザでのアクセス

Web ブラウザで http://ADDRESS へアクセスすると以下のように表示されるはずです。

file

これで JupyterLab が起動出来ました。