Ubuntu20.04でPython3を使用してJupyterNotebookをセットアップする方法
序章
Jupyter Notebook は、インタラクティブなコードや視覚化などを作成して共有できるオープンソースのWebアプリケーションです。 このツールは、Python、Julia、R、Haskell、Rubyなどのいくつかのプログラミング言語で使用できます。 多くの場合、データの操作、統計モデリング、機械学習に使用されます。
Jupyter Notebook(または単に「ノートブック」)は、Jupyter Notebookアプリによって作成されたドキュメントであり、コンピューターコードと、再現可能な調査の提示と共有に役立つリッチテキスト要素(段落、方程式、図、リンクなど)の両方が含まれています。 したがって、これらは、データ駆動型またはプログラミングベースのプレゼンテーションに使用したり、教育ツールとして使用したりするための優れたツールになります。
このチュートリアルでは、Ubuntu20.04サーバーから実行するようにJupyterNotebookを設定する方法と、トンネリングを介してローカルマシンからノートブックに接続して使用する方法を示します。 このガイドの終わりまでに、リモートサーバーで実行されているJupyterNotebookを使用してPython3コードを実行できるようになります。
前提条件
このガイドを完了するには、基本的なファイアウォールを備えた新しいUbuntu 20.04サーバーインスタンスと、sudo権限が構成された非rootユーザーが必要です。 初期サーバーセットアップチュートリアルを実行することで、これをセットアップする方法を学ぶことができます。
ステップ1—Pythonを設定する
プロセスを開始するには、Pythonプログラミング環境に必要な依存関係をUbuntuリポジトリからインストールします。 Ubuntu20.04にはPython3がプリインストールされています。 Pythonパッケージマネージャーのpipを使用して、少し後で追加のコンポーネントをインストールします。
最初にローカルを更新する必要があります apt
パッケージインデックスを作成し、パッケージをダウンロードしてインストールします。
- sudo apt update
次に、Jupyterの依存関係の一部で使用されるpipとPythonヘッダーファイルをインストールします。
- sudo apt install python3-pip python3-dev
これで、JupyterをインストールするPython仮想環境のセットアップに進むことができます。
ステップ2—Jupyter用のPython仮想環境を作成する
Python 3、そのヘッダーファイル、およびpipの準備ができたので、プロジェクトを管理するためのPython仮想環境を作成できます。 この仮想環境にJupyterをインストールします。
これを行うには、最初ににアクセスする必要があります virtualenv
pipでインストールできるコマンド。
pipをアップグレードし、次のように入力してパッケージをインストールします。
- sudo -H pip3 install --upgrade pip
- sudo -H pip3 install virtualenv
The -H
フラグは、セキュリティポリシーが home
ターゲットユーザーのホームディレクトリへの環境変数。
と virtualenv
インストールすると、環境の形成を開始できます。 プロジェクトファイルを保存できるディレクトリを作成して移動します。 これを呼びます my_project_dir
、ただし、自分と作業内容に意味のある名前を使用する必要があります。
- mkdir ~/my_project_dir
- cd ~/my_project_dir
プロジェクトディレクトリ内に、Python仮想環境を作成します。 このチュートリアルでは、これを呼び出します。 my_project_env
しかし、あなたはそれをあなたのプロジェクトに関連する何かと呼ぶべきです。
- virtualenv my_project_env
これにより、というディレクトリが作成されます my_project_env
あなたの中で my_project_dir
ディレクトリ。 内部には、ローカルバージョンのPythonとローカルバージョンのpipがインストールされます。 これを使用して、Jupyter用の分離されたPython環境をインストールおよび構成できます。
Jupyterをインストールする前に、仮想環境をアクティブ化する必要があります。 次のように入力すると、次のように入力できます。
- source my_project_env/bin/activate
プロンプトが変化して、Python仮想環境内で操作していることを示します。 コマンドプロンプトは次のようになります。 (my_project_env)user@host:~/my_project_dir$
.
この時点で、Jupyterをこの仮想環境にインストールする準備が整いました。
ステップ3—Jupyterをインストールします
仮想環境をアクティブにして、pipのローカルインスタンスを使用してJupyterをインストールします。
注:仮想環境がアクティブ化されたとき(プロンプトが (my_project_env)
その前に)、使用する pip
それ以外の pip3
、Python3を使用している場合でも。 ツールの仮想環境のコピーには常に名前が付けられます pip
、Pythonのバージョンに関係なく。
- pip install jupyter
この時点で、Jupyterの実行に必要なすべてのソフトウェアが正常にインストールされています。 これで、Notebookサーバーを起動できます。
ステップ4—JupyterNotebookを実行する
これで、JupyterNotebookを実行するために必要なものがすべて揃いました。 実行するには、次のコマンドを実行します。
- jupyter notebook
JupyterNotebookのアクティビティのログが端末に印刷されます。 Jupyter Notebookを実行すると、特定のポート番号で実行されます。 最初に実行するノートブックは通常、ポートを使用します 8888
. Jupyter Notebookが実行されている特定のポート番号を確認するには、JupyterNotebookを起動するために使用したコマンドの出力を参照してください。
Output[I 21:23:21.198 NotebookApp] Writing notebook server cookie secret to /run/user/1001/jupyter/notebook_cookie_secret
[I 21:23:21.361 NotebookApp] Serving notebooks from local directory: /home/sammy/my_project_dir
[I 21:23:21.361 NotebookApp] The Jupyter Notebook is running at:
[I 21:23:21.361 NotebookApp] http://localhost:8888/?token=1fefa6ab49a498a3f37c959404f7baf16b9a2eda3eaa6d72
[I 21:23:21.361 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 21:23:21.361 NotebookApp] No web browser found: could not locate runnable browser.
[C 21:23:21.361 NotebookApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://localhost:8888/?token=1fefa6ab49a498a3f37c959404f7baf16b9a2eda3eaa6d72
サーバーではなくローカルコンピューターでJupyterNotebookを実行している場合は、表示されたURLに移動してJupyterNotebookに接続できます。 サーバーでJupyterNotebookを実行している場合は、次のセクションで概説するように、SSHトンネリングを使用してサーバーに接続する必要があります。
この時点で、SSH接続を開いたままにしてJupyter Notebookを実行し続けるか、SSHトンネリングを設定したらアプリを終了して再実行することができます。 JupyterNotebookプロセスを停止することを選択しましょう。 SSHトンネリングを設定したら、再度実行します。 Jupyter Notebookプロセスを停止するには、を押します CTRL+C
、 タイプ Y
、 その後 ENTER
確認するために。 次の出力が表示されます。
Output[C 21:28:28.512 NotebookApp] Shutdown confirmed
[I 21:28:28.512 NotebookApp] Shutting down 0 kernels
次に、ノートブックにアクセスできるようにSSHトンネルを設定します。
ステップ5—SSHトンネリングを使用してサーバーに接続する
このセクションでは、SSHトンネリングを使用してJupyterNotebookWebインターフェースに接続する方法を示します。 Jupyter Notebookはサーバー上の特定のポート( :8888
, :8889
など)、SSHトンネリングを使用すると、サーバーのポートに安全に接続できます。
次の2つのサブセクションでは、1)MacまたはLinux、または2)WindowsからSSHトンネルを作成する方法について説明します。 ローカルコンピュータのサブセクションを参照してください。
MacまたはLinuxでのSSHトンネリング
MacまたはLinuxローカルコンピューターを使用している場合、SSHトンネルを作成する手順は、SSHを使用してリモートサーバーにログインする手順と似ていますが、 ssh
指図。 このサブセクションでは、 ssh
正常にトンネリングするコマンド。
SSHトンネリングは、新しいローカルターミナルウィンドウで次のSSHコマンドを実行することで実行できます。
- ssh -L 8888:localhost:8888 your_server_username@your_server_ip
The ssh
コマンドはSSH接続を開きますが、 -L
ローカル(クライアント)ホストの指定されたポートが、リモート側(サーバー)の指定されたホストおよびポートに転送されることを指定します。 これは、2番目のポート番号で実行されているものはすべて(例: 8888
)サーバー上で最初のポート番号に表示されます(例: 8888
)ローカルコンピュータ上。
オプションでポートを変更します 8888
別のプロセスですでに使用されているポートの使用を避けるために選択したものの1つに。
server_username
あなたのユーザー名です(例: 作成したサーバー上のsammy)と your_server_ip
サーバーのIPアドレスです。
たとえば、ユーザー名の場合 sammy
およびサーバーアドレス 203.0.113.0
、コマンドは次のようになります。
- ssh -L 8888:localhost:8888 sammy@203.0.113.0
実行後にエラーが表示されない場合 ssh -L
コマンドを使用すると、プログラミング環境に移動してJupyterNotebookを実行できます。
- jupyter notebook
URL付きの出力を受け取ります。 ローカルマシンのWebブラウザから、JupyterNotebookWebインターフェイスを次のURLで開きます。 http://localhost:8888
. トークン番号が含まれていることを確認するか、プロンプトが表示されたらトークン番号の文字列を入力します http://localhost:8888
.
WindowsとPuttyを使用したSSHトンネリング
Windowsを使用している場合は、Puttyを使用してSSHトンネルを作成できます。
まず、次のように、ホスト名としてサーバーのURLまたはIPアドレスを入力します。
次に、左ペインの下部にある SSH をクリックしてメニューを展開し、トンネルをクリックします。 ローカルマシンでJupyterにアクセスするために使用するローカルポート番号を入力します。 選ぶ 8000
他のサービスによって使用されるポートを回避し、宛先を次のように設定するには、またはそれ以上 localhost:8888
どこ :8888
JupyterNotebookが実行されているポートの番号です。
次に、追加ボタンをクリックすると、ポートが転送ポートリストに表示されます。
最後に、 Open ボタンをクリックして、SSH経由でサーバーに接続し、目的のポートをトンネリングします。 案内する http://localhost:8000
サーバー上で実行されているJupyterNotebookに接続するためのWebブラウザー(または選択したポート)。 トークン番号が含まれていることを確認するか、プロンプトが表示されたらトークン番号の文字列を入力します http://localhost:8000
.
ステップ6—JupyterNotebookを使用する
このセクションでは、JupyterNotebookの使用の基本について説明します。 現在JupyterNotebookを実行していない場合は、 jupyter notebook
指図。
これで、Webブラウザを使用して接続する必要があります。 Jupyter Notebookは、多くの機能を備えた非常に強力なツールです。 このセクションでは、ノートブックの使用を開始するためのいくつかの基本的な機能の概要を説明します。 Jupyter Notebookは、実行元のディレクトリ内のすべてのファイルとフォルダーを表示するため、プロジェクトで作業しているときは、必ずプロジェクトディレクトリから開始してください。
新しいノートブックファイルを作成するには、右上のプルダウンメニューから New > Python3を選択します。
これにより、ノートブックが開きます。 これで、セルでPythonコードを実行したり、セルをマークダウンに変更したりできます。 たとえば、上部のナビゲーションバーからセル>セルタイプ>マークダウンをクリックして、最初のセルを変更してマークダウンを受け入れます。 Markdownを使用してメモを記述できるようになりました。また、 LaTeX で記述された方程式を、 $$
シンボル。 たとえば、セルをマークダウンに変更した後、セルに次のように入力します。
# First Equation
Let us now implement the following equation:
$$ y = x^2$$
where $x = 2$
マークダウンをリッチテキストに変換するには、 CTRL
と ENTER
キー。 次のような出力が表示されます。
マークダウンセルを使用して、メモを作成し、コードを文書化できます。 その方程式を実装して、結果を出力してみましょう。 一番上のセルをクリックしてから、 ALT
と ENTER
一緒にキーを押して、その下にセルを追加します。 新しいセルに次のコードを入力します。
x = 2
y = x**2
print(y)
コードを実行するには、を押します CTRL+ENTER
. 次の結果が表示されます。
これで、モジュールをインポートして、他のPython開発環境と同じようにノートブックを使用できるようになりました。
結論
おめでとう! これで、Jupyter Notebookを使用して、再現可能なPythonコードとメモをMarkdownで記述できるようになります。 インターフェイス内からJupyterNotebookのクイックツアーを取得するには、上部のナビゲーションメニューからヘルプ>ユーザーインターフェイスツアーを選択して詳細を確認してください。
ここから、Python3でパンダとJupyterNotebookを使用したデータ分析と視覚化を読むことでデータ分析と視覚化プロジェクトを開始できます。