Ich starte ipython 0.12.1 unter Ubuntu 12.04. Sie können es im Browser über die Notebook-Oberfläche ausführen, indem Sie Folgendes ausführen:
ipython notebook --pylab
Konfigurationsdateien finden Sie in ~/.config/ipython/profile_default/
. Es scheint, dass die Verbindungsparameter für jeden Kernel in ~/.config/ipython/profile_default/security/kernel-4e424cf4-ba44-441a-824c-c6bce727e585.json
Stehen. Hier ist der Inhalt dieser Datei (neue Dateien werden erstellt, wenn Sie neue Kernel starten):
{
"stdin_port": 54204,
"ip": "127.0.0.1",
"hb_port": 58090,
"key": "2a105dd9-26c5-40c6-901f-a72254d59876",
"Shell_port": 52155,
"iopub_port": 42228
}
Es ist ziemlich selbsterklärend, aber wie kann ich einen Server mit einer permanenten Konfiguration einrichten, damit ich die Notebook-Schnittstelle von anderen Computern im LAN verwenden kann?
Wenn Sie eine alte Version des Notebooks verwenden, kann Folgendes weiterhin zutreffen. Neue Versionen finden Sie in den anderen Antworten unten.
Relevanter Abschnitt der IPython-Dokumentation
Der Notebook-Server überwacht standardmäßig localhost. Wenn es für alle Computer in Ihrem LAN sichtbar sein soll, weisen Sie es einfach an, alle Schnittstellen abzuhören:
ipython notebook --ip='*'
Oder eine bestimmte IP-Adresse, die für andere Computer sichtbar ist:
ipython notebook --ip=192.168.0.123
Abhängig von Ihrer Umgebung ist es wahrscheinlich eine gute Idee, HTTPS und ein Passwort zu aktivieren , wenn Sie auf externen Schnittstellen lauschen.
Wenn Sie vorhaben, häufig öffentlich zu dienen, ist es auch eine gute Idee, ein IPython-Profil zu erstellen (z. B. ipython profile create nbserver
) und bearbeite die Konfiguration entsprechend. Alles was du tun musst ist:
ipython notebook --profile nbserver
So laden Sie alle Ihre Einstellungen für IP/Port/SSL/Kennwort.
Generieren Sie zunächst eine Konfigurationsdatei, falls Sie diese noch nicht haben:
jupyter notebook --generate-config
Beachten Sie die Ausgabe dieses Befehls, da sie Ihnen sagen würde, wo das jupyter_notebook_config.py
Datei wurde generiert. Oder wenn Sie es bereits haben, werden Sie gefragt, ob Sie es mit der Standardkonfiguration überschreiben möchten. Bearbeiten Sie die folgende Zeile:
## The IP address the notebook server will listen on.
c.NotebookApp.ip = '0.0.0.0' # Any ip
Geben Sie für zusätzliche Sicherheit eine Python/IPython-Shell ein:
from notebook.auth import passwd; passwd()
Sie werden aufgefordert, eine Kennwortzeichenfolge einzugeben und zu bestätigen. Kopieren Sie den Inhalt des Strings, der vom Formulartyp sein sollte: salt: hashed-password. Suchen und bearbeiten Sie die Zeilen wie folgt:
## Hashed password to use for web authentication.
#
# To generate, type in a python/IPython Shell:
#
# from notebook.auth import passwd; passwd()
#
# The string should be of the form type:salt:hashed-password.
c.NotebookApp.password = 'type:salt:the-hashed-password-you-have-generated'
## Forces users to use a password for the Notebook server. This is useful in a
# multi user environment, for instance when everybody in the LAN can access each
# other's machine through ssh.
#
# In such a case, server the notebook server on localhost is not secure since
# any user can connect to the notebook server via ssh.
c.NotebookApp.password_required = True
## Set the Access-Control-Allow-Origin header
#
# Use '*' to allow any Origin to access your server.
#
# Takes precedence over allow_Origin_pat.
c.NotebookApp.allow_Origin = '*'
Starte dein Jupyter-Notizbuch (neu), voila!