web-dev-qa-db-ja.com

IPython Notebookを適切に閉じる方法は?

IPython Notebookを適切に閉じる方法は?

現在、ブラウザのタブを閉じてから、ターミナルでCtrl+Cを使用しています。
残念ながら、exit()Kill kernel upon exitのチェックも役に立たない(彼らはカーネルを殺すが、iPythonは終了しない)。

101
Piotr Migdal

現在のところ、ターミナルでCtrl + Cを使用するよりも良い方法はありません。

明示的にシャットダウンする方法を考えていますが、ノートブックには、ユーザーが自由に停止できるシングルユーザーアプリケーションと、管理者だけができるマルチユーザーサーバーとの間に緊張があります。それを止めるために。違いをどのように処理するかについては、まだ十分に解決していません。

(将来の読者にとって、これは0.12がリリースされ、0.13が開発中の状況です。)

2017年12月に更新

IPython NotebookはJupyter Notebookになりました。最近のバージョンでは、そのシステムで実行されているサーバーをシャットダウンするjupyter notebook stop Shellコマンドが追加されました。デフォルトのポート8888ではない場合、コマンドラインでポート番号を渡すことができます。

nbmanager を使用することもできます。これは、実行中のサーバーを表示してシャットダウンできるデスクトップアプリケーションです。

最後に、次の追加に取り組んでいます:

  • 指定した時間サーバーを使用しない場合にサーバーを自動的にシャットダウンする構成オプション。
  • サーバーをシャットダウンするためのユーザーインターフェイスのボタン。 (この時間がかかったことは少しおかしいと思います。UIの変更は議論の余地があります。)
106
Thomas K

私のようなバックグラウンドでjupyterを実行する場合:

jupyter notebook &> /dev/null &

次に、Ctl-Cの代わりにjupyterを完全に終了するには、エイリアスコマンドを作成します。

echo 'alias quitjupyter="kill $(pgrep jupyter)"' >> ~/.bashrc

ターミナルを再起動します。すべてのjupyterインスタンスを強制終了します。

quitjupyter

注:上記のように、単一引用符の内側に二重引用符を使用します。別の方法では、.bashrcに書き込む前に式を評価します( 'kill 1430'や現在のjupyterインスタンスに関連付けられているプロセス番号ではなく、コマンド自体を記述したい)。もちろん、任意のエイリアスを使用できます。私は実際に「qjup」を使用します:

echo 'alias qjup="kill $(pgrep jupyter)"' >> ~/.bashrc

ターミナルを再起動します。すべてのjupyterインスタンスを強制終了します。

qjup
22

受け入れられた回答は時代遅れで、もう有効ではないと思います。

ファイル項目のWebインターフェイスからjupyterノートブックを終了できます。

enter image description here

「閉じると停止」にマウスカーソルを移動すると、次の説明が表示されます。

enter image description here

「閉じると停止」をクリックすると、ターミナル画面に次のメッセージが表示されます。

enter image description here

18
wasabi

最初のステップは、開いているすべてのノートブックを保存することです。そして、実行中のJupyter Notebookをシャットダウンすることを検討してください。次の簡単なコマンドを使用できます。

$ jupyter notebook stop 
Shutting down server on port 8888 ...

また、引数としてポート番号を使用し、jupyterノートブックを正常にシャットダウンできます。

例えば:

jupyter notebook stop 8889 
Shutting down server on port 8889 ...

さらに、現在実行中のjuypterインスタンスを知るには、以下のコマンドを確認してください。

Shell> juypter notebook list 
Currently running servers:
http://localhost:8888/?token=ef12021898c435f865ec706d7c9af8607a7ba58bbee98632 :: /Users/username/jupyter-notebooks [/code]
5
moronkreacionz

他に機能しない場合は、タスクマネージャーからpythonwプロセスを強制終了してください(Windowsの場合)。

5
fixxxer
Linux (Ubuntu 14.04)

前述のように、最初にipynb/jupyterブラウザーセッションの「実行中」タブに移動して、ipythonノートブックプロセスを適切に終了してから、コンソールで開いているターミナルを確認し、ctrl-cでシャットダウンします。可能であれば、後者は避ける必要があります。

ipython notebook listを実行し、引き続き異なるポートでipythonサーバーの実行を確認する場合は、既存のノートブックが提供されているポートをメモしてください。次に、TCPポートをシャットダウンします。

fuser -k 'port#'/tcp 

これを行うことに他のリスクがあるかどうかはわかりません。もしそうなら、私に知らせてください。

3
Soham

これらのコマンドは私のために働いた:

jupyter notebook list # shows the running notebooks and their port-numbers
                      # (for instance: 8080)
lsof -n -i4TCP:[port-number] # shows PID.
kill -9 [PID] # kill the process.

この回答は、 here から採用されました。

3
PatriceG

実際、killまたはtask managerを使用してプロセスを強制終了するよりもクリーンな方法があると思います。

Jupyter Notebookダッシュボード(「jupyter Notebook」を最初に起動したときに表示されるブラウザーインターフェイス)で、ブラウザーで閉じたがカーネルがまだ実行されている可能性があるノートブックファイルの場所を参照します。

iPython Notebookファイルには、ブックアイコンが表示されます。カーネルが実行されている場合は緑色で、カーネルが実行されていない場合は灰色で表示されます。

実行中のファイルの横にあるチェックボックスを選択し、その上に表示される[シャットダウン]ボタンをクリックするだけです。

これにより、その特定のノートブックに関連付けられているカーネルが適切にシャットダウンされます。

2
Andrew Medlin

環境


私のOSはUbuntu 16.04であり、jupyterは4.3.0です。

方法


まず、ブラウザのホームページでjupyterからログアウトしました(ログアウトボタンは右上にあります)

次に、ターミナルにCtrl + Cと入力すると、以下が表示されます。

[I 15:59:48.407 NotebookApp] interrupted Serving notebooks from local directory:/ home/Username 0 active kernels

Jupyterノートブックは次で実行されています: http:// localhost:8888 /?token = a572c743dfb73eee28538f9a181bf4d9ad412b19fbb96c82

このノートブックサーバーをシャットダウンしますか(y/[n])?

最後のステップで、5秒以内にyと入力し、表示される場合:

[C 15:59:50.407 NotebookApp]シャットダウンの確認
[I 15:59:50.408 NotebookApp]カーネルのシャットダウン

おめでとうございます! jupyterを正常に閉じます。

2
WY Hsu

ブラウザセッションでは、Kernelに移動し、Restart and Clear Outputをクリックすることもできます。

0
Susanna Maier

手順1-シェルでcontrol + z(control + c)を実行します手順2 _ Webブラウザを閉じます

0
Reihan_amn

2018年2月13日にリリースされたJupyter/IPython Notebookクイックスタートガイドドキュメントからコピーペーストしています。 http://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/execute.html

1.3.3ノートブックを閉じる:カーネルのシャットダウンノートブックを開くと、その「計算エンジン」(カーネルと呼ばれる)が自動的に開始されます。ノートブックのブラウザタブを閉じても、カーネルはシャットダウンされません。代わりに、明示的にシャットダウンされるまでカーネルは実行され続けます。カーネルをシャットダウンするには、関連するノートブックに移動し、[ファイル]-> [閉じる]および[停止]メニューをクリックします。別の方法として、ノートブックダッシュボードには、実行中のすべてのノートブック(つまりカーネル)を表示し、(シャットダウンボタンをクリックして)シャットダウンできるようにするRunningという名前のタブがあります。

要約:最初に実行中のノートブックを閉じて停止します。

1.3.2 Jupyter Notebookアプリをシャットダウンするブラウザー(またはタブ)を閉じてもJupyter Notebookアプリは閉じません。完全にシャットダウンするには、関連する端末を閉じる必要があります。より詳細には、Jupyter Notebookアプリは、ブラウザーのデフォルトアドレス( http:// localhost:8888 )に表示されるサーバーです。ブラウザを閉じてもサーバーはシャットダウンしません。以前のアドレスを再度開くと、Jupyter Notebookアプリが再表示されます。 Jupyter Notebook Appの多くのコピーを実行でき、それらは同様のアドレスに表示されます(新しいコピーごとにポートである「:」の後の数字のみが増加します)。単一のJupyter Notebookアプリで既に多くのノートブックを開くことができるため、Jupyter Notebookアプリの複数のコピーを実行することはお勧めしません。

要約:次に、Jupyterを起動した端末を終了します。