Web-оболочка Jupyter Notebook

Posted by

Разворачиваем Jupyter Notebook на Ubuntu Trusty DesktopСегодня я попытаюсь познакомиться со средой веб-оболочки применительно к интерактивному интерпретатору ipython. Данная среда именуется, как Ipython Notebook, вроде как с ее помощью можно писать код и в тоже время удобно его отображать для просмотра, как для для демонстрации.

Я не претендую на 100% подачу материала, меня привлекло название и я попробовал разобрать в меру своих возможностей что есть что.

Что же посмотрим так ли это на самом деле и что у меня получится.

ekzorchik@desktop:~$ uname -a && lsb_release -a

Linux desktop 4.4.0-62-generic #83~14.04.1-Ubuntu SMP Wed Jan 18 18:10:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

No LSB modules are available.

Distributor ID: Ubuntu

Description: .5 LTS

Release: 14.04

Codename: trusty

ekzorchik@desktop:~$ sudo apt-get install python2.7 python-pip python-dev -y

ekzorchik@desktop:~$ python --version

Python 2.7.6

ekzorchik@desktop:~$ pip --version

pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)

ekzorchik@desktop:~$ curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"

ekzorchik@desktop:~$ sudo python get-pip.py

ekzorchik@desktop:~$ pip --version

pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

ekzorchik@desktop:~$ sudo apt-get install ipython ipython-notebook -y

ekzorchik@desktop:~$ sudo pip install jupyter

Запускаю :

ekzorchik@desktop:~$ whereis jupyter

jupyter: /usr/local/bin/jupyter

ekzorchik@desktop:~$ sudo jupyter notebook

Copy/paste this URL into your browser when you connect for the first time,

to login with a token:

http://localhost:8888/?token=4e8deafa3f6a873639594dfabe2cfe17efd5152d7a174c91

Копирую после чего данную гиперссылку в браузер Mozilla Firefox и вот она записная книжка:

И вот она записная книжка Jupyter Notebook

Отобразить от имени кого запущена записная книжка и какой идентификатор авторизации:

ekzorchik@desktop:~$ jupyter notebook list

Currently running servers:

http://localhost:8888/?token=b68b70673ca317f8555794fb7d2565777bca3dbb25c47e29 :: /home/ekzorchik

Но вот только доступ в записную книжку возможен лишь локально на этой рабочей станции, а чтобы получить доступ с других систем, то нужно чтобы серверная часть была запущена с применением этого ключа:

ekzorchik@desktop:~$ jupyter notebook --ip='*'

А закрыть предыдущую открытую записную книжку можно по сочетанию клавиш Ctrl + C в том открытом окне командной строки.

Пробую подключить с другой системы к этой, а в ответ окно авторизации и какой же пароль нужно указывать:

Авторизация в Web-оснастке Jupyter Notebook через Toten (Токен)

А пароль получается из вывода выше команды: jupyter notebook list

Вот к примеру уже две записной книжке можно запустить:

ekzorchik@desktop:~$ jupyter notebook list

Currently running servers:

http://localhost:8889/?token=84013de600c817e6cd27a4339d713f529448a80ae50b3c54 :: /home/ekzorchik

http://localhost:8888/?token=b68b70673ca317f8555794fb7d2565777bca3dbb25c47e29 :: /home/ekzorchik

Выключаю одну:

Ctrl + C

Serving notebooks from local directory: /home/ekzorchik

0 active kernels

The Jupyter Notebook is running at: http://[all ip addresses on your system]:8889/?token=84013de600c817e6cd27a4339d713f529448a80ae50b3c54

Shutdown this notebook server (y/[n])? y

[C 15:34:50.057 NotebookApp] Shutdown confirmed

[I 15:34:50.058 NotebookApp] Shutting down kernels

Создаю в первом окне python скрипт:

New — Text File

#!/usr/bin/env python

import subprocess

print "Uname"
def uname_function():

uname = "uname"

uname_args = "-a"

print "Information about system\n"

subprocess.call([uname,uname_args])

uname_function()

Сохраняю: File — Save

Открываю консоль командной строки, да прямо из Webинтерфейса:

New — Terminal

ekzorchik@desktop:~$ pwd

/home/ekzorchik

ekzorchik@desktop:~$ ls

Desktop Documents Downloads examples.desktop Music Pictures Public Templates test.py Videos

ekzorchik@desktop:~$

ekzorchik@desktop:~$ chmod +x test.py

ekzorchik@desktop:~$ ./test.py

Uname

Information about system
Linux desktop 4.4.0-62-generic #83~14.04.1-Ubuntu SMP Wed Jan 18 18:10:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

Но я если честно не догнал, как я могу использовать данную записную книжку именуемую как Jupyter. А нет, спустя некоторое время я осознал что это не так. Я могу писать код, сохранять его в рабочем каталоге и одновременно тестировать его работу, плюс могу показать как и что я делаю в Web-ориентированном представлении. Ну как-то так. Хотя есть такое высказывание: если непонятно, зачем она, то скорее всего она вам не нужна. Вот это как раз и про меня. А потому закругляюсь, с уважением автор блога Олло Александр aka ekzorchik.