Come installare JupyterLab su Rocky Linux 9
Jupyter è un'applicazione Web gratuita e open source per l'informatica interattiva e la scienza dei dati.
Jupyter supporta tutti i linguaggi di programmazione e fornisce più software, come JupyetrLab, che fornisce un ambiente di editing multi-notebook ricco di funzionalità e a schede, Notebook come creazione di notebook leggera e semplificata, Qtconsole e molti altri.
In questa guida ti mostreremo istruzioni passo passo su come installare JupyterLab sul server Rocky Linux 9. Installerai JupyterLab, abiliterai l'autenticazione JupyterLab e quindi configurerai Nginx come proxy inverso.
Prerequisiti
Per completare questa guida, assicurati di avere quanto segue:
- Un server Rocky Linux 9.
- Un utente non root con privilegi sudo.
- Un SELinux con status permissivo.
Installa le dipendenze
Prima di installare JupyterLab, devi installare le dipendenze sul tuo server Rocky Linux. Ciò include Pip, Node.js e strumenti di sviluppo. Oltre a ciò, installerai anche Nginx per il proxy inverso.
Per iniziare, esegui il comando seguente per installare i pacchetti di sviluppo sul tuo sistema.
sudo dnf -y groupinstall development
Quindi, installa Pip, Node.js e Nginx utilizzando il seguente comando.
sudo dnf install -y python3-pip nodejs nginx
Una volta completata l'installazione, passare al passaggio successivo.
Configurazione dell'ambiente virtuale Python
In questo esempio, installerai ed eseguirai JupyterLab con un utente normale. Quindi assicurati di aver preparato il tuo utente con i privilegi sudo.
Accedi al tuo utente utilizzando il comando seguente.
su - user
Crea una nuova directory ~/project e spostati al suo interno. quindi, crea un nuovo ambiente virtuale Python venv.
mkdir -p ~/project; cd ~/project
python3 -m venv venv
Una volta creato l'ambiente virtuale venv, puoi attivarlo utilizzando il comando seguente.
source venv/bin/activate
Qui, il tuo prompt dovrebbe diventare come (venv) alice@hostname, il che significa che il tuo ambiente virtuale Python è attivo.
Installazione di JupyterLab
Ora che hai creato un ambiente virtuale Python, sei pronto per installare JupyterLab. In questa sezione installerai JupyterLab, genererai la configurazione di JupyterLab, imposterai l'autenticazione con password e quindi verificherai JupyterLab.
Per installare JupyterLab, esegui il comando pip3 di seguito.
pip3 install jupyter
Una volta iniziata l'installazione, dovresti ottenere un output come questo:
Al termine dell'installazione, esegui il comando seguente per individuare il file binario Jupyter e verificare la versione JupterLab.
which jupyter
jupyter --version
Dovresti ottenere il file binario JupyterLab situato nel tuo ambiente virtuale Python. E la versione di JupyterLab è 4.1.1.
Successivamente, esegui il comando Jupyter riportato di seguito per generare la configurazione del server Jupyter e impostare l'autenticazione della password.
jupyter server --generate-config
jupyter server password
Quando ti viene richiesta la password, inserisci la nuova password e ripeti.
Successivamente, esegui il comando seguente per generare JupyterLab e inserisci y quando ti viene chiesto di sovrascrivere. Quindi, verifica la configurazione di JupyterLab.
jupyter lab --generate-config
jupyter lab --show-config
Come puoi vedere di seguito, l'autenticazione della password è sottoposta ad hashing e la posizione del percorso del tuo JupyterLab dovrebbe essere accessibile.
Ora puoi eseguire il comando seguente per aprire la porta 8888 per JupyterLab. Quindi, avvia JupyterLab sull'IP locale 192.168.5.120 e assicurati di modificare l'indirizzo IP.
sudo firewall-cmd --add-port=8888/tcp
jupyter lab --ip 192.168.5.120
Una volta avviato, dovresti ottenere un output simile a questo:
Ora apri il tuo browser web e visita il tuo indirizzo IP locale con la porta 8888, http://192.168.5.120:8888/. Ti verrà richiesta la pagina di accesso di JupyterLab.
Inserisci la tua password e premi Accedi.
In caso di successo, dovresti ottenere la dashboard di JupyterLab come la seguente:
Infine, torna al terminale e premi Ctrl+c per terminare il processo JupyterLab. Nel passaggio successivo, configurerai JupyterLab come servizio systemd.
Esecuzione di JupyterLab come servizio Systemd
Con JupyterLab installato, ora creerai un nuovo servizio systemd per JupyterLab. Ciò consente di gestire facilmente JupyterLab tramite l'utilità di sistema. Inoltre, puoi avviare JupyterLab all'avvio abilitando il servizio.
Ora esegui il seguente comando dell'editor nano per creare un nuovo servizio jupyterlab /etc/systemd/system/jupyterlab.service.
sudo nano /etc/systemd/system/jupyterlab.service
Aggiungi la configurazione seguente al file e assicurati di modificare i dettagli dell'utente con il tuo utente. Ciò include il percorso binario del programma Jupyter e la configurazione generata.
[Unit]
Description=JupyterLab Service
[Service]
Type=simple
PIDFile=/run/jupyter.pid
ExecStart=/home/alice/project/venv/bin/jupyter lab --config=/home/alice/.jupyter/jupyter_lab_config.py
User=alice
Group=alice
WorkingDirectory=/home/alice/project
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
Una volta terminato, salva ed esci dal file.
Successivamente, esegui il comando seguente per ricaricare il gestore systemd e applicare le modifiche systemd.
sudo systemctl daemon-reload
Quindi, avvia e abilita il servizio jupyterlab con il seguente comando.
sudo systemctl start jupyterlab
sudo systemctl enable jupyterlab
Una volta avviato, esegui il comando seguente per verificare il tuo servizio jupyterlab.
sudo systemctl status jupyterlab
Se il servizio jupyterlab è in esecuzione, dovresti ottenere un output come il seguente:
Configurazione dell'accesso remoto per JupyterLab
Per eseguire JupyterLab dietro un proxy inverso, è necessario abilitare l'accesso remoto sull'installazione di JupyterLab. È necessario modificare lo script di configurazione JupyterLab predefinito e abilitare l'accesso remoto da lì.
Esegui il seguente comando dell'editor nano per aprire lo script di configurazione JupyterLab ~/.jupyter/jupyter_lab_config.py.
nano ~/.jupyter/jupyter_lab_config.py
Rimuovere il commento dal parametro c.ServerApp.allow_remote_access e modificare il valore in True. Ciò consentirà l'accesso remoto per il proxy inverso nell'installazione di JupyterLab.
c.ServerApp.allow_remote_access = True
Al termine, salva ed esci dal file.
Successivamente, esegui il comando seguente per riavviare il servizio JupyterLab e verificare il token generato. questo token verrà utilizzato per accedere a JupyterLab con il proxy inverso.
sudo systemctl restart jupyterlab
sudo systemctl status jupyterlab
Nella parte inferiore del registro del servizio, puoi vedere il token JupyterLab.
Configurazione del proxy inverso Nginx
Ora che hai consentito l'accesso remoto a JupyterLab, sei pronto per configurare Nginx come proxy inverso per la tua installazione JupyterLab.
Innanzitutto, esegui il seguente comando dell'editor nano per creare una nuova configurazione Nginx /etc/nginx/conf.d/jupyterlab.conf.
sudo nano /etc/nginx/conf.d/jupyterlab.conf
Inserisci la configurazione di seguito e assicurati di modificare il nome del dominio con l'installazione locale di JupyterLab.
server {
listen 80;
server_name jupyterlab.hwdomain.io;
access_log /var/log/nginx/hwdomain.io.access.log;
error_log /var/log/nginx/hwdomain.io.error.log;
location / {
proxy_pass http://127.0.0.1:8888;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
}
Salvare e uscire dal file una volta terminato.
Ora esegui il comando seguente per verificare la tua sintassi Nginx. In caso di successo, dovresti ottenere un output "la sintassi è ok - il test ha avuto successo".
sudo nginx -t
Successivamente, avvia e abilita il servizio Nginx utilizzando il seguente comando.
sudo systemctl start nginx
sudo systemctl enable nginx
Una volta avviato Nginx, verifica il servizio con il comando seguente. Assicurati che il servizio Nginx sia in esecuzione.
sudo systemctl status nginx
Infine, esegui il comando seguente per aprire la porta HTTP sul tuo sistema e consentire il traffico verso la tua installazione JupyterLab.
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
Con questo, la tua installazione JupyterLab dovrebbe essere accessibile tramite proxy inverso.
Accesso a JupyterLab
Apri una nuova scheda nel tuo browser web e visita il nome di dominio della tua installazione JupyterLab, ad esempio http://jupyterlab.hwdomain.io/. Se l'installazione ha esito positivo, ti verrà richiesta la pagina di accesso di JupyterLab.
scorri fino alla pagina inferiore e incolla il tuo token JupyterLab. quindi, inserisci la nuova password per l'installazione di JupyterLab, premi Accedi e imposta la nuova password.
se hai il token corretto, dovresti ottenere la dashboard di JupyterLab e anche la tua password dovrebbe essere cambiata.
Conclusione
Congratulazioni! Hai installato con successo JupyterLab su Rocky Linux 9. Hai installato JupyterLab, configurato l'autenticazione JupyterLab e anche configurato Nginx come proxy inverso per l'installazione di JupyterLab.