Подготовка виртуального окружения для запуска jupyter notebook приложений в изолированной среде в Ubuntu 20.04 LTS


$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.3 LTS
Release:	20.04
Codename:	focal


$ sudo apt update && sudo apt upgrade -y
$ sudo apt install -y python3-dev python3-pip
$ sudo apt install -y virtualenv


$ python3 --version
Python 3.8.10
$ ls -ls /usr/bin/python*


Запуск jupyter notebook и стандартных библиотек

$ mkdir -p ~/projects/dev/ml
$ cd ~/projects/dev/ml

$ export PROJECT_NAME=<MY_NEW_PROJECT_NAME>

$ mkdir ${PROJECT_NAME} && cd ${PROJECT_NAME}

$ virtualenv --system-site-packages -p python ${PROJECT_NAME}-env

$ source ${PROJECT_NAME}-env/bin/activate


$ python --version
Python 3.8.10

$ pip install --upgrade pip

$ pip --version
pip 21.1.3


Если нужна специфическая версия (Какая-то старая)

Найду поэлегантней решение, обязательно напишу.


Инсталляция brew / homebrew в ubuntu


$ sudo apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev

$ brew install pyenv
$ pyenv install --list
$ pyenv install 3.6.9


$ /home/marley/.pyenv/versions/3.6.9/bin/python --version
Python 3.6.9


$ virtualenv --system-site-packages --python=/home/marley/.pyenv/versions/3.6.9/bin/python ${PROJECT_NAME}-env --no-pip

$ source ${PROJECT_NAME}-env/bin/activate


$ python --version
Python 3.6.9


Как-то хреново pip работал.


Установка нужных пакетов

$ {
    pip install --upgrade jupyter
    pip install --upgrade matplotlib
    pip install --upgrade numpy
    pip install --upgrade pandas
    pip install --upgrade scipy
    pip install --upgrade scikit-learn
    pip install --upgrade seaborn
}


$ jupyter notebook --ip 0.0.0.0 --port 8888


import matplotlib
import numpy
import pandas
import scipy
import sklearn


print('matplotlib',  matplotlib.__version__)
print('numpy', numpy.__version__)
print('pandas', pandas.__version__)
print('scipy', scipy.__version__)
print('sklearn', sklearn.__version__)


matplotlib 3.3.4
numpy 1.19.5
pandas 1.2.1
scipy 1.6.0
sklearn 0.24.1


Проверка версии python и библиотеки tensorflow

from platform import python_version
print('python: ' + python_version())

import tensorflow as tf
print('tf: ' + tf.__version__)