Jupyterは、プログラミング、数学、データサイエンス向けの人気のあるブラウザベースのインタラクティブノートブックです。これは、ライブコード、方程式、視覚化、およびナラティブテキストを含むドキュメントを作成および共有できるようにするWebアプリケーションです。 Python、Ruby、Haskell、R、Scala、Juliaなど、プラグイン(「カーネル」)を介して多くの言語をサポートします。このチュートリアルでは、LinuxVPSホスティングサービスの1つであるUbuntu18.04にJupyterをインストールする方法を紹介します。
JupyterNotebookWebアプリケーションの主な機能のいくつかは次のとおりです。
- 自動構文ハイライト、インデント、タブ補完/イントロスペクションを使用したブラウザー内コード編集。
- お気に入りのウェブブラウザから簡単にコードを実行できます
- HTML、LaTeX、PNG、SVGなどのリッチメディア表現を使用して計算結果を表示します。たとえば、matplotlibライブラリによってレンダリングされた出版品質の図をインラインで含めることができます。
- コードの解説を提供できるMarkdownマークアップ言語を使用したリッチテキストのブラウザ内編集は、プレーンテキストに限定されません。
- LaTeXを使用してマークダウンセル内に数学表記を簡単に含めることができ、MathJaxによってネイティブにレンダリングされます。
前提条件:
- 2GB以上のメモリを搭載したUbuntu18.04
- Python 3
- Nginx
- root権限でのSSHアクセス
1。 SSH経由でログインし、システムを更新します
rootユーザーとしてSSHを使用してUbuntu18.04VPSにログインします:
# ssh root@IP_Address -p Port_number
次のコマンドを使用して、サーバーに適切なUbuntuバージョンがインストールされているかどうかを確認できます。
lsb_release -a
次の出力が得られるはずです:
Distributor ID: Ubuntu Description: Ubuntu 18.04.1 LTS Release: 18.04 Codename: bionic
次に、次のコマンドを実行して、サーバーにインストールされているすべてのパッケージが利用可能な最新バージョンに更新されていることを確認します。
# apt update && apt upgrade
Jupyter Notebookをインストールするためのsudoerを作成し、プロンプトに従い、ユーザーの強力なパスワードを使用してみましょう。
# adduser jupyter
それでは、新しいユーザーをsudoグループに追加しましょう:
# usermod -aG sudo jupyter
追加すると、jupyterとしてログインし、インストールを実行できます:
su - jupyter
$ sudo apt install python3-pip python3-dev
2。 Jupyter用のPython仮想環境を作成する
$ virtualenv jnotebook
$ source jnotebook/bin/activate
これで、Python仮想環境になり、JupyterNotebookをインストールする準備が整いました。
3。 JupyterNotebookをインストールする
(jnotebook) jupyter@ubuntu-jan2019:~$ pip instal jupyter
注: このコマンドに注意してください。Python3を使用している場合でも、Python仮想環境では、「pip3」ではなく「pip」コマンドを使用してください。これは、使用するPythonのバージョンに関係なく、仮想環境ツールの名前が常にpipであるためです。
4。 JupyterNotebookを実行する
終わった!これで、JupyterNotebookを実行できます。実際に起動(実行)するには、次のコマンドを入力します。
(jnotebook) jupyter@ubuntu-jan2019:~$ jupyter notebook
デフォルトでは、Jupyter Notebookはローカルホストとポート8888で実行するように構成されています。特定のIPアドレスで開始するには、次のコマンドを実行できます。
(jnotebook) jupyter@ubuntu-jan2019:~$ jupyter notebook --ip='1.2.3.4'
1.2.3.4をサーバーのIPアドレスに変更します。
お気に入りのWebブラウザーを使用して、Jupyterの実行時に提供されるリンクに移動できます。
この時点で、トークンを使用してJupyterNotebookにアクセスしています。 Notebookバージョン5.3以降、Webインターフェイスまたはコマンドラインからパスワードを作成できます。
パスワードを作成する前に、まず構成ファイルを生成する必要があります。次のコマンドを実行できます:
(jnotebook) jupyter@ubuntu-jan2019:~$ jupyter notebook --generage-config
上記のコマンドは、jupyter_notebook_config.pyファイルを作成します。このチュートリアルでは、ファイルは/home/jupyter/.jupyter/jupyter_notebook_config.pyとして保存されます。
最初のログイン時にパスワードを作成する機能が無効になっている可能性があるため、/ home /jupyter/を編集して有効にする必要があります。 .jupyter/jupyter_notebook_config.py。 68行目に移動し、「NotebookApp.allow_password_change」を編集します。値をFalseからTrueに変更し、行のコメントを外すことを忘れないでください。次に、ファイルを保存します。
これで、次のコマンドを実行してパスワードを作成してから、JupyterNotebookを再度実行できます。
(jnotebook) jupyter@ubuntu-jan2019:~$ jupyter notebook password
(jnotebook) jupyter@ubuntu-jan2019:~$ jupyter notebook --ip='1.2.3.4'
5。サービスとして実行するようにJupyterNotebookを構成する
SSHで「Jupyternotebook」コマンドを実行すると、SSHセッションから切断されたときにアプリケーションが閉じられます。
これを回避するには、スクリーンセッションでコマンドを実行するか、systemdファイルを作成します。このチュートリアルでは、systemdファイルを作成して、Jupyterノートブックをサービスとして実行できるようにします。
$ sudo nano /etc/systemd/system/jupyter.service
次に、次の行を貼り付けて、ファイルを保存します。
[Unit] Description=Jupyter Notebook [Service] Type=simple PIDFile=/run/jupyter.pid ExecStart=/home/jupyter/jupyter/bin/jupyter-notebook --config=/home/jupyter/.jupyter/jupyter_notebook_config.py User=jupyter Group=jupyter WorkingDirectory=/home/jupyter/jnotebook Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
保存したら、サービスを有効にして開始する必要があります。
$ sudo systemctl daemon-reload $ sudo systemctl enable jupyter $ sudo systemctl start jupyter
6。 NginxWebサーバーをインストールしてリバースプロキシを構成する
現在、JupyterNotebookはローカルホストでのみリッスンしています。ドメインまたはサブドメインを使用して、Webブラウザーにポート番号を入力せずにアクセスできるようにするには、Nginxをリバースプロキシとして構成する必要があります。
$ sudo nano /etc/nginx/sites-enabled/yourdomain.com.conf
次の行をファイルに挿入します。 「yourdomain.com」を、JupyterNotebookへのアクセスに使用する実際のドメイン名に変更します。
upstream jupyter { server 127.0.0.1:8888; } server { listen 80 default; server_name yourdomain.com; access_log /var/log/nginx/yourdomain.com.access.log; error_log /var/log/nginx/yourdomain.com.error.log; location / { proxy_pass http://localhost:8888; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_http_version 1.1; proxy_redirect off; proxy_buffering off; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 86400; } }
新しく作成した構成ファイルを保存することを忘れないでください。
Nginxの構成を確認し、問題がなければ再起動します。
$ sudo nginx -t $ sudo systemctl restart nginx
次に、Jupyter構成ファイルを編集して、Nginxをリバースプロキシとして使用してアクセスできるようにする必要があります。
$ sudo nano /home/jupyter/.jupyter/jupyter_notebook_config.py
「NotebookApp.allow_remote_access」を見つけて、値をFalseからTrueに変更します。行のコメントを外すことを忘れないでください。
次に、Jupyterを再起動します:
$ sudo systemctl restart jupyter
この時点で、http://yourdomain.comでドメイン名を使用してJupyterにアクセスできるようになります。 Jupyter、その機能、および構成の詳細については、Jupyterの公式ドキュメントを確認してください。
もちろん、Ubuntu VPSホスティングを管理している場合は、Ubuntu18.04にJupyterをインストールする方法を知る必要はありません。サポートチームにUbuntu18.04にJupyter10をインストールするよう依頼するだけです。これらは24時間年中無休で利用可能であり、Ubuntu18.04へのJupyter10のインストールを支援することができます。
すでにUbuntu20.04に切り替えている場合は、Ubuntu20.04にJupyterNotebookをインストールする方法に関する完璧なチュートリアルがあります。
PS 。 Ubuntu18.04にJupyterをインストールする方法に関するこのブログ投稿をお楽しみください。 、以下のショートカットを使用してソーシャルネットワークで自由に共有するか、コメントを残してください。