Как запустить IPython notebook удаленно?
Следуя этим инструкциям (запуск сервера ноутбуков и удаленный доступ к записным книжкам IPython ) Я поступаю следующим образом:
На удаленном сервере:
1) Настройка NotebookApp.password ()
In [1]: from IPython.lib import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
2) создать профиль
user@remote_host$ ipython profile create
3) редактировать ~/.ipython/profile_default/ipython_notebook_config.py
# Password to use for web authentication
c = get_config()
c.NotebookApp.password =
u'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
4) запустите ноутбук на порту 8889
user@remote_host$ ipython notebook --no-browser --port=8889
И блокнот начинает работать.
[I 16: 08: 10.012 NotebookApp] использование MathJax из CDN: https://cdn.mathjax.org/mathjax/latest/MathJax.js
[W 16:08:10.131 NotebookApp] терминалы недоступны (ошибка отсутствует модуль с именем 'terminado')
[я 16:08:NotebookApp 10.132] обслуживает ноутбуки из локального каталога: /кластера/главная/пользователя
[I 16: 08:10.132 NotebookApp] 0 активных ядер
[I 16: 08: 10.132 NotebookApp] ноутбук IPython работает по адресу: http://localhost:8889/
[I 16: 08: 10.132 NotebookApp] используйте Control-C для остановки этого сервера и завершения работы всех ядер (дважды, чтобы пропустить подтверждение).
На моей локальной машине
5) SSH туннелирование
user@local$ ssh -N -f -L localhost:8888:127.0.0.1:8889 username@remote_host
На удаленном хосте (/etc/hosts
) вы найдете
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
6) наконец, я пытаюсь открыть localhost:8888
в моем браузере, и я получаю:
Канал 2: не удалось открыть: не удалось подключиться: отказано в подключении
Канал 2: не удалось открыть: не удалось подключиться: отказано в подключении
Канал 2: открыт ошибка: не удалось подключиться: отказано в подключении
Канал 2: не удалось открыть: не удалось подключиться: отказано в подключении
Канал 2: не удалось открыть: не удалось подключиться: отказано в подключении
Все эти шаги работают на одном сервере, но терпят неудачу на другом.
Я попытался связаться с администратором и сказал следующее:Я предполагаю, что вы используете два отдельных SSH-соединения: одно из который вы запускаете ipython и который вы используете, чтобы сделать порт пересылка. Нет никакой гарантии, что эти два соединения приведут вас на землю. тот же узел входа. В случае, когда оба соединения включены различные хосты, вы испытаете точный сбой у вас есть встречающийся. Поэтому вы должны настроить переадресацию портов в соединение, которое вы используете для запуска ipython.
Как настроить переадресацию портов в соединении, которое я использую для запуска ipython?
Я попытался использовать свой ip-адрес, но это не сработало
$ ssh -N -f -L local_ip_address:8888:127.0.0.1:8889 user@remote_host
2 ответа:
Наконец, вот как была решена проблема:
# Login to the server from your local workstation and in the same connection do the port forwarding. user@local$ ssh -L 8888:localhost:8889 username@remote_host user@remote_host$ ipython notebook --no-browser --port=8889
Просто следуйте этой инструкции.
Https://coderwall.com/p/ohk6cg/remote-access-to-ipython-notebooks-via-ssh