Как принимать соединения для ipython с других компьютеров?
Я запускаю ipython 0.12.1 на Ubuntu 12.04. Вы можете запустить его в браузере с помощью интерфейса ноутбука, выполнив:
ipython notebook --pylab
Конфигурационные файлы можно найти в ~/.config/ipython/profile_default/
. Кажется, что параметры подключения для каждого ядра помещаются в ~/.config/ipython/profile_default/security/kernel-4e424cf4-ba44-441a-824c-c6bce727e585.json
. Вот содержание этого файла (новые файлы создаются при запуске новых ядер):
{
"stdin_port": 54204,
"ip": "127.0.0.1",
"hb_port": 58090,
"key": "2a105dd9-26c5-40c6-901f-a72254d59876",
"shell_port": 52155,
"iopub_port": 42228
}
Это довольно самоочевидно, но как я могу установить сервер, который будет иметь постоянную конфигурацию, поэтому я могу использовать интерфейс ноутбука с других компьютеров в локальной сети?
Ответы
Ответ 1
Соответствующий раздел документации IPython
Сервер Notebook по умолчанию прослушивает локальный хост. Если вы хотите, чтобы он был видимым для всех компьютеров вашей локальной сети, просто попросите его прослушать все интерфейсы:
ipython notebook --ip='*'
Или конкретный IP, видимый для других машин:
ipython notebook --ip=192.168.0.123
В зависимости от вашей среды, вероятно, рекомендуется включить HTTPS и пароль при прослушивании внешних интерфейсов.
Если вы планируете публично публиковать много, то также неплохо создать профиль IPython (например, ipython profile create nbserver
) и отредактировать конфигурацию соответственно, поэтому вам нужно всего лишь:
ipython notebook --profile nbserver
Чтобы загрузить все ваши настройки ip/port/ssl/password.