Ikhtisar Teknis | Instalasi | Konfigurasi | buruh pelabuhan | Berkontribusi | Lisensi | Bantuan dan Sumber Daya
Dengan JupyterHub Anda dapat membuat Hub multi-pengguna yang memunculkan, mengelola, dan memproksi beberapa instans server notebook Jupyter pengguna tunggal.
Project Jupyter membuat JupyterHub untuk mendukung banyak pengguna. Hub dapat menawarkan server notebook untuk kelas siswa, kelompok kerja ilmu data perusahaan, proyek penelitian ilmiah, atau kelompok komputasi kinerja tinggi.
Tiga aktor utama membentuk JupyterHub:
Prinsip dasar pengoperasiannya adalah:
JupyterHub juga menyediakan REST API untuk administrasi Hub dan penggunanya.
Sistem berbasis Linux/Unix
Python 3.8 atau lebih tinggi
nodejs/npm
Jika Anda menggunakan conda
, dependensi nodejs dan npm akan diinstal untuk Anda oleh conda.
Jika Anda menggunakan pip
, instal versi terbaru (setidaknya 12.0) dari nodejs/npm.
Jika menggunakan PAM Authenticator default, modul otentikasi pluggable (PAM).
Sertifikat TLS dan kunci untuk komunikasi HTTPS
Nama domain
conda
Untuk menginstal JupyterHub beserta dependensinya termasuk nodejs/npm:
conda install -c conda-forge jupyterhub
Jika Anda berencana menjalankan server notebook secara lokal, instal JupyterLab atau notebook Jupyter:
conda install jupyterlab
conda install notebook
pip
JupyterHub dapat diinstal dengan pip
, dan proxy dengan npm
:
npm install -g configurable-http-proxy
python3 -m pip install jupyterhub
Jika Anda berencana menjalankan server notebook secara lokal, Anda perlu menginstal JupyterLab atau notebook Jupyter:
python3 -m pip install --upgrade jupyterlab
python3 -m pip install --upgrade notebook
Untuk memulai server Hub, jalankan perintah:
jupyterhub
Kunjungi http://localhost:8000
di browser Anda, dan masuk dengan nama pengguna dan kata sandi sistem Anda.
Catatan : Untuk mengizinkan banyak pengguna masuk ke server, Anda perlu menjalankan perintah jupyterhub
sebagai pengguna yang memiliki hak istimewa , seperti root. Wiki menjelaskan cara menjalankan server sebagai pengguna yang kurang memiliki hak istimewa , yang memerlukan lebih banyak konfigurasi sistem.
Bagian Memulai pada dokumentasi menjelaskan langkah-langkah umum dalam menyiapkan JupyterHub.
Tutorial JupyterHub menyediakan video mendalam dan contoh konfigurasi JupyterHub.
Untuk menghasilkan file konfigurasi default dengan pengaturan dan deskripsi:
jupyterhub --generate-config
Untuk memulai Hub pada url dan port tertentu 10.0.1.2:443
dengan https :
jupyterhub --ip 10.0.1.2 --port 443 --ssl-key my_ssl.key --ssl-cert my_ssl.cert
Pengautentik | Keterangan |
---|---|
PAMAuthenticator | Default, autentikator bawaan |
OAuthentikator | OAuth + JupyterHub Authenticator = OAuthenticator |
ldapauthenticator | Plugin Otentikator LDAP sederhana untuk JupyterHub |
kerberosathenticator | Plugin Kerberos Authenticator untuk JupyterHub |
pemijahan | Keterangan |
---|---|
Spawner Proses Lokal | Default, spawner bawaan memulai server pengguna tunggal sebagai proses lokal |
buruh pelabuhan | Memunculkan server pengguna tunggal dalam wadah Docker |
kubespawner | Pemijahan Kubernetes untuk JupyterHub |
sudospawner | Memunculkan server pengguna tunggal tanpa menjadi root |
systemdspawner | Memunculkan server notebook pengguna tunggal menggunakan systemd |
batchspawner | Dirancang untuk cluster menggunakan perangkat lunak penjadwalan batch |
pemijahan benang | Memunculkan server notebook pengguna tunggal yang didistribusikan pada cluster Hadoop |
wrapspawner | WrapSpawner dan ProfilesSpawner mengaktifkan konfigurasi runtime dari spawner |
Gambar buruh pelabuhan pemula untuk JupyterHub memberikan penerapan dasar JupyterHub menggunakan Docker.
Penting: Gambar quay.io/jupyterhub/jupyterhub
ini hanya berisi Hub itu sendiri, tanpa konfigurasi. Secara umum, seseorang perlu membuat gambar turunan, dengan setidaknya jupyterhub_config.py
menyiapkan Authenticator dan/atau Spawner. Untuk menjalankan server pengguna tunggal, yang mungkin berada di sistem yang sama dengan Hub atau tidak, Jupyter Notebook versi 4 atau lebih tinggi harus diinstal.
Gambar buruh pelabuhan JupyterHub dapat dimulai dengan perintah berikut:
docker run -p 8000:8000 -d --name jupyterhub quay.io/jupyterhub/jupyterhub jupyterhub
Perintah ini akan membuat wadah bernama jupyterhub
yang dapat Anda hentikan dan lanjutkan dengan docker stop/start
.
Layanan Hub akan mendengarkan di semua antarmuka pada port 8000, menjadikannya pilihan yang baik untuk menguji JupyterHub di desktop atau laptop Anda .
Jika Anda ingin menjalankan buruh pelabuhan di komputer yang memiliki IP publik maka Anda harus (seperti HARUS) mengamankannya dengan ssl dengan menambahkan opsi ssl ke konfigurasi buruh pelabuhan Anda atau dengan menggunakan proxy yang mendukung ssl.
Pemasangan volume akan memungkinkan Anda menyimpan data di luar image buruh pelabuhan (sistem host) sehingga akan tetap ada , bahkan saat Anda memulai image baru.
Perintah docker exec -it jupyterhub bash
akan memunculkan shell root di wadah buruh pelabuhan Anda. Anda dapat menggunakan shell root untuk membuat pengguna sistem di dalam wadah . Akun ini akan digunakan untuk autentikasi dalam konfigurasi default JupyterHub.
Jika Anda ingin berkontribusi pada proyek ini, silakan baca dokumentasi kontributor kami dan CONTRIBUTING.md
. File CONTRIBUTING.md
menjelaskan cara menyiapkan instalasi pengembangan, cara menjalankan rangkaian pengujian, dan cara berkontribusi pada dokumentasi.
Untuk gambaran tingkat tinggi tentang visi dan arah proyek selanjutnya, lihat peta jalan komunitas JupyterHub.
JupyterHub didukung pada sistem berbasis Linux/Unix.
JupyterHub secara resmi tidak mendukung Windows. Anda mungkin dapat menggunakan JupyterHub di Windows jika Anda menggunakan Spawner dan Authenticator yang berfungsi di Windows, namun default JupyterHub tidak. Bug yang dilaporkan di Windows tidak akan diterima, dan rangkaian pengujian tidak akan berjalan di Windows. Namun, patch kecil yang memperbaiki masalah kecil kompatibilitas Windows (seperti instalasi dasar) dapat diterima. Untuk sistem berbasis Windows, kami merekomendasikan menjalankan JupyterHub di container buruh pelabuhan atau VM Linux.
Referensi Tambahan: Dokumentasi Tornado tentang dukungan platform Windows
Kami menggunakan model hak cipta bersama yang memungkinkan semua kontributor mempertahankan hak cipta atas kontribusi mereka.
Semua kode dilisensikan berdasarkan ketentuan lisensi BSD yang direvisi.
Kami mendorong Anda untuk mengajukan pertanyaan dan berbagi ide di forum komunitas Jupyter. Anda juga dapat berbicara dengan kami di saluran JupyterHub Gitter kami.
JupyterHub mengikuti Panduan Komunitas Jupyter.
Ikhtisar Teknis | Instalasi | Konfigurasi | buruh pelabuhan | Berkontribusi | Lisensi | Bantuan dan Sumber Daya