web-dev-qa-db-ja.com

LinuxのWindowsサブシステムでJupyterを使用する

Windows 10( インストール手順はこちら )でUbuntu bashターミナルを使用して、Anacondaをインストールし、Jupyterノートブックを問題なく使用しています。残念ながら、Jupyterはサブシステム内から実行可能なブラウザーを見つけることができないため、ターミナルに出力するリンクをコピーして貼り付ける必要がありますが、これは実行可能です。主な問題は、複数のノートブックを開こうとしたときに発生します。通常、Jupyterはポート(8888(デフォルトでは)はすでに使用されており、新しいものを作成していますが、これを検出できないため、生成されたリンクを使用すると、新しいノートブックではなく、最初に開いたノートブックが表示されます。

問題が何であるか考えていますか?そして、そうでない場合、どうすれば手動でこれを回避できますか?

7
Grayscale

ノートブックを起動するときに、手動で別のポート番号を割り当てます。例えば:

jupyter notebook --port=8889

4
Q. Qiao

試してください:

jupyter notebook --no-browser
3
Faymek Feng

私はブラウザで同様の問題がありました、私は得ました

No web browser found: could not locate runnable browser.

WSLU https://github.com/wslutilities/wsl をインストールしました。次に得た

Start : This command cannot be run due to the error: The system cannot find the file specified.
At line:1 char:1
+ Start --h
+ ~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

jupyter-notebookは、wlsviewへのパラメーターとしてURLを提供しません。ファイルへのパスをブラウザに渡します。例えば

file:///home/myhome/.local/share/jupyter/runtime/nbserver-5058-open.html

実際のURL

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="refresh" content="1;url=http://localhost:8888/tree?token=19b5f1fefb13f5fc315b05991175d1f8cb5ada9baaca6804" />
    <title>Opening Jupyter Notebook</title>
</head>
<body>

<p>
    This page should redirect you to Jupyter Notebook. If it doesn't,
    <a href="http://localhost:8888/tree?token=19b5f1fefb13f5fc315b05991175d1f8cb5ada9baaca6804">click here to go to Jupyter</a>.
</p>

</body>
</html>

実際のURLを抽出するコンテンツを含むファイルjupyter-notebook-browserを作成します

#!/bin/bash
file=$(echo "$1" | sed 's/file:\/\///')
url=$(grep -oP 'href="\K([^"]*localhost[^"]+)' "$file")
wslview "$url"

次にjupyter-notebook --browser=jupyter-notebook-browserを実行します

またはBROWSER変数を定義して実行

export BROWSER="jupyter-notebook-browser"
jupyter-notebook
1
Vitek