softasap.sa-jupyterhub

sa-jupyterhub

Status Budowy

Dodaj użytkowników pracujących z JupyterHub do grupy jupyter

sudo usermod -a -G jupyter nazwaUżytkownika

# np.
sudo usermod -a -G jupyter vagrant
sudo usermod -a -G jupyter ubuntu

jeśli użytkownik nie ma pozwolenia na korzystanie z JupyterHub, system nie będzie mógł uruchomić sesji dla tego użytkownika, chociaż komunikat o błędzie może być mylący, na przykład 'Anaconda Error in Authenticator.pre_spawn_start: ValueError substring not found'

Przykład użycia:

Prosty

     - {
         rola: "sa-jupyterhub"
       }

Zaawansowany

     - {
         rola: "sa-jupyterhub",

         opcja_instalacja_python2: True,
         opcja_instalacja_python3: True,
         opcja_instalacja_anaconda: True,

         opcja_instalacja_git: True,

         jupyterhub_python: "anaconda",  # python3 / anaconda
         opcja_instalacja_nodejs_legacy: True,

         właściwości_jupyterhub:
           - {regexp: "^c.Authenticator.admin_users*", linia: "c.Authenticator.admin_users = {'jupyter'}"}
           - {regexp: "^c.LocalAuthenticator.create_system_users*", linia: "c.LocalAuthenticator.create_system_users = True"}
           - {regexp: "^c.JupyterHub.confirm_no_ssl*", linia: "c.JupyterHub.confirm_no_ssl = True"}

         jupyterhub_ip: "{{ansible_default_ipv4.address}}",

         # ANACONDA
         wersja_anaconda: '5.1.0',
         python_anaconda: 3, # 2|3

         opcja_anaconda_dodaj_do_profilu: False,
         opcja_anaconda_aktualizuj_pakiety: True,

         anaconda_baza_dir: /usr/local,
         anaconda_dodatkowe_pakiety: [],
         # /ANACONDA
         # PYTHON 3

         wersja_python: "3.6.4"

         # /PYTHON 3

       }

Podziękowania:

Jeśli zainstalujesz anacondę z myślą o pythonie 3, używana jest zewnętrzna biblioteka do zarządzania pakietami:

moduł conda dla Pythona: https://github.com/UDST/ansible-conda , zobacz Licencję dla modułu w library/License.txt

Instalacja niestandardowych rdzeni

  1. Zaloguj się jako użytkownik jupyter
$ whoami
jupyter
  1. Wyświetl dostępne rdzenie
jupyter kernelspec list

3.1 Utwórz nowy rdzeń używając conda

Uwaga: może być konieczne przygotowanie shella do użycia z condą, wykonując

conda init <NAZWA_SHELLA>
/usr/local/anaconda/bin/conda search "^python$"
...
python                         3.8.2      h191fe78_0  pkgs/main
python                         3.8.2      hcf32534_0  pkgs/main

wybierz wersję pythona i utwórz wirtualne środowisko

/usr/local/anaconda/bin/conda create -n Anaconda3.6 python=3.6 anaconda

po utworzeniu, aktywuj wcześniej utworzone środowisko

conda activate Anaconda3.6

upewnij się, że środowisko jest aktywowane i zainstaluj ipykernel

(Anaconda3.6) jupyter@bionic:~$ pip install ipykernel

Zarejestruj Anaconda3.6 do użycia w swoich notatnikach jupyter:

python -m ipykernel install --user --name Anaconda3.6 --display-name  "Python 3.6 - anaconda venv"
Zainstalowany rdzeń Anaconda3.6 w /home/jupyter/.local/share/jupyter/kernels/anaconda3.6

gotowe:

 jupyter kernelspec list
Dostępne rdzenie:
  anaconda3.6    /home/jupyter/.local/share/jupyter/kernels/anaconda3.6
  python3        /usr/local/share/jupyter/kernels/python3

Uwaga, że rejestracja rdzenia to nic innego jak plik json cat /home/vagrant/.local/share/jupyter/kernels/anaconda3.6/kernel.json

{
 "argv": [
  "/home/vagrant/.conda/envs/Anaconda3.6/bin/python",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "Python 3.6 - anaconda venv",
 "language": "python"
}

możesz mieć rdzenie zainstalowane dla własnego użytkownika lub dla wszystkich użytkowników, wtedy definicja powinna trafić do /usr/local/share/jupyter/kernels/ i powinieneś odpowiednio ustalić prawa (np. zapisu dla grupy jupyter)

3.2 Zainstaluj rdzeń ansible

pip install ansible-kernel
python -m ansible_kernel.install

lub

pip install ansible-kernel
python -m ansible_kernel.install --sys-prefix

Użycie w przepływie pracy ansible galaxy

Jeśli zainstalowałeś rolę sa-jupyterhub za pomocą polecenia

ansible-galaxy install softasap.sa-jupyterhub

rola będzie dostępna w folderze library/softasap.sa-jupyterhub Proszę dostosować ścieżkę odpowiednio.

     - {
         rola: "softasap.sa-jupyterhub"
       }

Kod jest podwójnie licencjonowany na podstawie [BSD 3 clause] (https://opensource.org/licenses/BSD-3-Clause) oraz [MIT License] (http://opensource.org/licenses/MIT). Wybierz ten, który najlepiej Ci odpowiada.

Skontaktuj się z nami:

Subskrybuj aktualizacje ról na [FB] (https://www.facebook.com/SoftAsap/)

Dołącz do kanału dyskusyjnego gitter na Gitter

Odkryj inne role na http://www.softasap.com/roles/registry_generated.html

odwiedź naszego bloga na http://www.softasap.com/blog/archive.html

Zainstaluj
ansible-galaxy install softasap.sa-jupyterhub
Licencja
Unknown
Pobrania
72
Właściciel
Get your application deployed in a robust way