【Jupyterを使っているChromebookユーザ必見!】Jupyter Labをシェルフに追加する方法!
Jupyter Lab。
Pythonをベースとした統合開発環境で、ファイル管理やコーディング、対話的なデータ解析に、シェルの管理などもできてしまう、一度触ったら手放せないツールです。
しかし、このJupyter Lab、デフォルトの設定のまま、Chromebook上で起動しようとすると、わざわざターミナルを立ち上げないと起動することができません...
ということで、今回の記事ではこの問題を解決するために、ChromebookのシェルフにJupyter Labを追加する方法をご紹介します!
(※この記事の内容をご自身のPCで試す場合は自己責任でお願いします)
はじめに
以前の記事でChromebookにJupyter Labを追加する方法をご紹介しました。
そして、この方法でJupyterを使い続けていたのですが...ふと、「Jupyter Labを起動するアイコンがあったらなぁ」って思ってしまいました。
というのも、デフォルトの設定では
Crostini Terminalを立ち上げる
Jupyter Lab
とタイプするJupyetr Labが起動する
という手順で、1と2の手順が面倒に感じるからです。
もし、いきなり3からできて、それだけでJupyterが起動すれば楽じゃないですか?
Ubuntuだったら、こんな感じですね。
そこで、この記事ではJupyter Labをシェルフに追加する方法をご紹介します。
環境
マシン:ASUS Chromebook C223NA
OS:Chrome OS 70.0.3538.110 Official Build 64bit(ただし、Linux(β版)は既に有効化済み)
Jupyter : v4.4.0
LauncherにCrositiniスクリプトの起動アイコンを設置する方法
早速、方法をご紹介しましょう!
Crostiniでシェルスクリプトをシェルフに追加する方法がありましたので、そちらを参考にさせていただきます。
大まかに手順をまとめるのであれば、
の5つのステップです。 順に追っていきましょう!
STEP1:ディレクトリの作成
まずは作業用ディレクトリの作成です。 ターミナルを開きましょう。
そして、ディレクトリを作ります。
$ mkdir jupyter_launcher # ディレクトリ名はお好みで $ cd jupyter_launcher # ディレクトリの移動
もし、ここで隠しディレクトリにしたい(ls
やChromeOS側のファイルエクスプローラに表示させたくない)場合はmkdir .jupyter_launcher
のようにディレクトリ名の前にドットを付ければOKです。ただ、名前の衝突にはお気をつけください)
これで1つ目のSTEPはOK。
STEP2:アイコンの準備
続いて2つ目のSTEP、アイコンの準備です(デフォルトのCrostiniのアイコンでよければここは飛ばしてもOK)。ここはお好みの画像を準備するだけ。例えば、公式のページ
からアイコンを拝借するなり、自分で好きな画像を用意するなりすればOKです。ここでは仮に用意した画像の名前をchromebook-jupyter-icon.pngのようにしておきましょう!そして、その画像を上で作成したディレクトリjupyter_launcher
に入れておきます。
STEP3:desktopファイルの作成
さて、次に3つ目のSTEPに移りましょう!ここからは少し本格的になってきます。
$ vim jupyterlab.desktop
として、.desktop
ファイルを作成します。エディタは別にvim
ではなくても大丈夫ですが、Crostiniのデフォルトではvim
が一番いいのかな?個人的にはemacs
が好きですが...笑
$ emacs jupyterlab.desktop
ただ、Emacsはご自身でご用意くださいませ。参考(1つ目は最新ですが少し手順多い。2つ目は古いですが手順が簡単)↓
そして、エディタを使ってjupyterlab.desktop
に必要事項を書き込みます。
[Desktop Entry] Name=JupyterLab Exec=sh -c "/hoge/hogehoge/jupyter lab --ip ${ご自身のホストのIP}" Type=Application Categories=Application Icon=/home/${ご自身のユーザ名}/jupyter_launcher/chromebook-jupyter-icon.png Terminal=true;
ここで注意事項が3つあります。
注1:
/hoge/hogehoge/jupyter
の部分は絶対パスを入れる必要があります。ターミナル上でwhich jupyter
を使って確認してください注2:${ご自身のホストのIP}は
hostname -I
を使って確認します。注3:ユーザ名は
echo ${USER}
などで確認できますが、ご自身のユーザ名をご記入ください
というわけで、以上で3つ目のSTEPが終了です!
STEP4:パーミッションの変更
続いて4つ目、パーミッションの変更ですね! それは適当に
$ sudo chmod 644 jupyterlab.desktop $ sudo chown root:root jupyterlab.desktop
でOKです。chmod
とchown
の詳細については
で勉強させていただきました。さて、これで4つ目のSTEPが完了です。
STEP5:シンボリックリンク
では最後のSTEP、シンボリックリンクを張ることにしましょう。これはまさにシェルフにJupyter Labを追加する作業になります。
Chromebookのシェルフに自作のスクリプトなどを置く際には、それに該当する.desktop
ファイルを/usr/share/applications/
に置く必要があります。もちろん、ファイル自体をここに入れてもいいのですが、後々のメンテナンスのことを考えると、1つ目のSTEPで作成したディレクトリでメンテナンスもできた方がいいです。ということで、/usr/share/applications/
にリンクを張ることにします。
sudo ln -s /home/${ご自身のユーザ名}/jupyter_launcher/jupyterlab.desktop /usr/share/applications/
でOK。これで/usr/share/applications/
にjupyterlab.desktop
が追加されたはずです。(ls /usr/share/applications/
で確認できます)
さて、お疲れ様でした!以上で作業が完了です。
これでランチャにJupyter Labが追加されたはずです!
ここまで来てしまえばシェルフに追加するのは容易です。ランチャのJupyter Labを2本指クリックして、シェルフに固定するだけ。
これでJupyter Labの起動が楽になりますね!
シェルフから起動したJupyter Labを閉じる際の注意事項
さて、ここで大きな注意点を書いておきます。 Jupyter Labをシェルフから起動できるようになったのはいいのですが、終了する際には1つ注意点があります。
上の方法でシェルフにJupyter Labのアイコンを追加した場合、ターミナルは起動せずにJupyter Serverのみが内部で動いてJupyter LabのChrome Tabが開きます。 すなわち、Jupyter Labを終了する際にタブのみを閉じてしまうとJupyter Serverを終了することができません (タブを閉じた後に、URL欄にJupyter LabのURLを入れると再び開くことができる)
ということで、Jupyter Serverも含めてJupyter Labを終了する際にはちゃんとquitから終了しましょう!
これでJupyter Serverも含めて終了できます。心配な方はJupyter Labを起動した際のポート番号がデフォルトの8888から変わってしまっていないかの確認やターミナル(Jupyter Labのshell)で
$ jupyter notebook list
と叩けば起動しているJupyter Serverを確認することができます。もし、終了できていないサーバが見つかった場合は
$ jupyter notebook stop ${ポート番号}
で停止することもできるので、定期的に確認はしておきましょう。
というわけで、シェルフから起動したJupyter Labを終了する際にはご注意を。
まとめ
今回の記事ではJupyterをたくさん使いたいというChromebookユーザの方に向けて、Jupyter LabをChromebookのシェルフに追加する方法をご紹介しました。
その方法は次のコマンドをCrostini Terminalで順に実行するだけ
$ mkdir jupyter_launcher # ディレクトリの作成 $ cd jupyter_launcher # 移動 $ # 画像chromebook-jupyter-icon.pngの準備 $ vim jupyterlab.desktop # emacs jupyterlab.desktopでも、ChromeOS側からの編集でもOK ######## 以下の内容を記述 ######## # [Desktop Entry] # Name=JupyterLab # Exec=sh -c "${which jupyterで確認した場所}/jupyter lab --ip ${ご自身のホストのIP}" # Type=Application # Categories=Application # Icon=/home/${ご自身のユーザ名}/jupyter_launcher/chromebook-jupyter-icon.png # Terminal=true; ######## ここまで ######## $ sudo chmod 644 jupyterlab.desktop # パーミッションの変更 $ sudo chown root:root jupyterlab.desktop # 所有者の変更 $ sudo ln -s /home/${ご自身のユーザ名}/jupyter_launcher/jupyterlab.desktop /usr/share/applications/ # シンボリックリンク
以上でJupyter Labがランチャに登録されます。 今回の記事でChromebookユーザの方のJupyterライフが捗れば嬉しいです!
なお、私はJupyterを使ってはてなブログを書いてますので非常に捗っています!
ということで、今回はここまで!
間違いのご指摘やご意見・ご質問などございましたら、どんな些細なことでも結構ですので、ぜひコメントのほどお願いします!お待ちしております。