Cómo instalar JupyterLab en Rocky Linux 9
Jupyter es una aplicación web gratuita y de código abierto para la informática interactiva y la ciencia de datos.
Jupyter es compatible con todos los lenguajes de programación y proporciona múltiples programas, como JupyetrLab, que proporciona un entorno de edición multi-notebook rico en funciones y con pestañas, Notebook como creación de cuadernos ligera y simplificada, Qtconsole, y muchos más.
En esta guía, te mostraremos instrucciones paso a paso sobre cómo instalar JupyterLab en el servidor Rocky Linux 9. Instalarás JupyterLab, habilitarás la autenticación de JupyterLab y luego configurarás Nginx como proxy inverso.
Requisitos previos
Para completar esta guía, asegúrate de que tienes lo siguiente:
- Un servidor Rocky Linux 9.
- Un usuario no root con privilegios sudo.
- Un SELinux con estado permisivo.
Instalar dependencias
Antes de instalar JupyterLab, debes instalar las dependencias en tu servidor Rocky Linux. Esto incluye Pip, Node.js y herramientas de desarrollo. Además, también instalarás Nginx para el proxy inverso.
Para empezar, ejecuta el siguiente comando para instalar paquetes de desarrollo en tu sistema.
sudo dnf -y groupinstall development
A continuación, instala Pip, Node.js y Nginx utilizando el siguiente comando.
sudo dnf install -y python3-pip nodejs nginx
Una vez completada la instalación, pasa al siguiente paso.
Configurar el entorno virtual de Python
En este ejemplo, instalarás y ejecutarás JupyterLab con un usuario normal. Así que asegúrate de que has preparado tu usuario con privilegios sudo.
Inicia sesión con tu usuario utilizando el comando que se indica a continuación.
su - user
Crea un nuevo directorio ~/proyecto y desplázate a él. A continuación, crea un nuevo entorno virtual Python venv.
mkdir -p ~/project; cd ~/project python3 -m venv venv
Una vez creado el entorno virtual venv, puedes activarlo utilizando el comando que aparece a continuación.
source venv/bin/activate
Aquí, tu prompt debería ser como (venv) alice@hostname, lo que significa que tu entorno virtual Python está activo.
Instalar JupyterLab
Ahora que has creado un entorno virtual Python, estás preparado para instalar JupyterLab. En esta sección, instalarás JupyterLab, generarás la configuración de JupyterLab, establecerás la autenticación de la contraseña y, a continuación, verificarás JupyterLab.
Para instalar JupyterLab, ejecuta el siguiente comando pip3.
pip3 install jupyter
Una vez que comience la instalación, deberías obtener una salida como ésta:
Una vez finalizada la instalación, ejecuta el siguiente comando para localizar el archivo binario de Jupyter y comprobar la versión de JupterLab.
which jupyter jupyter --version
Deberías obtener el archivo binario de JupyterLab ubicado en tu entorno virtual de Python. Y la versión de JupyterLab es la 4.1.1.
A continuación, ejecuta el siguiente comando Jupyter para generar la configuración del servidor Jupyter y establecer la autenticación por contraseña.
jupyter server --generate-config jupyter server password
Cuando te pida la contraseña, introduce tu nueva contraseña y repite.
A continuación, ejecuta el siguiente comando para generar JupyterLab e introduce y cuando se te pida sobrescribir. A continuación, verifica la configuración de tu JupyterLab.
jupyter lab --generate-config jupyter lab --show-config
Como puedes ver a continuación, la contraseña de autenticación es hash y la ubicación de la ruta de tu JupyterLab debería ser accesible.
Ahora puedes ejecutar el siguiente comando para abrir el puerto 8888 para JupyterLab. A continuación, inicia tu JupyterLab en la IP local 192.168.5.120, y asegúrate de cambiar la dirección IP.
sudo firewall-cmd --add-port=8888/tcp jupyter lab --ip 192.168.5.120
Una vez iniciado, deberías obtener una salida similar a ésta:
Ahora abre tu navegador web y visita tu dirección IP local con el puerto 8888, http://192.168.5.120:8888/. Te aparecerá la página de inicio de sesión de JupyterLab.
Introduce tu contraseña y pulsa Iniciar sesión.
Si tienes éxito, deberías obtener el panel de control de JupyterLab como el siguiente:
Por último, vuelve a tu terminal y pulsa Ctrl+c para finalizar el proceso de JupyterLab. En el siguiente paso, configurarás JupyterLab como un servicio systemd.
Ejecutar JupyterLab como servicio Systemd
Con JupyterLab instalado, ahora crearás un nuevo servicio systemd para JupyterLab. Esto te permitirá gestionar JupyterLab fácilmente a través de la utilidad del sistema. Además, puedes iniciar JupyterLab en el arranque activando el servicio.
Ahora ejecuta el siguiente comando del editor nano para crear un nuevo servicio jupyterlab /etc/systemd/system/jupyterlab.service.
sudo nano /etc/systemd/system/jupyterlab.service
Añade la siguiente configuración al archivo y asegúrate de cambiar el usuario detallado por tu usuario. Incluye la ruta binaria del programa Jupyter y la configuración generada.
[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
Cuando hayas terminado, guarda y sal del archivo.
A continuación, ejecuta el siguiente comando para recargar el gestor systemd y aplicar los cambios de systemd.
sudo systemctl daemon-reload
A continuación, inicia y habilita el servicio jupyterlab con el siguiente comando.
sudo systemctl start jupyterlab sudo systemctl enable jupyterlab
Una vez iniciado, ejecuta el comando siguiente para verificar tu servicio jupyterlab.
sudo systemctl status jupyterlab
Si el servicio jupyterlab se está ejecutando, deberías obtener una salida como la siguiente:
Configurar el acceso remoto para JupyterLab
Para ejecutar JupyterLab detrás de un proxy inverso, debes habilitar el acceso remoto en tu instalación de JupyterLab. Tienes que modificar el script de configuración por defecto de JupyterLab y habilitar el acceso remoto desde ahí.
Ejecuta el siguiente comando del editor nano para abrir el script de configuración de JupyterLab ~/.jupyter/jupyter_lab_config.py.
nano ~/.jupyter/jupyter_lab_config.py
Descomenta el parámetro c.ServerApp.allow_remote_access y cambia el valor a True. Esto habilitará el acceso remoto para el proxy inverso en la instalación de JupyterLab.
c.ServerApp.allow_remote_access = True
Cuando hayas terminado, guarda y sal del archivo.
A continuación, ejecuta el siguiente comando para reiniciar el servicio de JupyterLab y verificar el token generado. este token se utilizará para iniciar sesión en JupyterLab bajo el proxy inverso.
sudo systemctl restart jupyterlab sudo systemctl status jupyterlab
En la parte inferior del registro del servicio, podrás ver el token de JupyterLab.
Configuración del proxy inverso Nginx
Ahora que has permitido el acceso remoto en JupyterLab, estás listo para configurar Nginx como proxy inverso para tu instalación de JupyterLab.
En primer lugar, ejecuta el siguiente comando del editor nano para crear una nueva configuración de Nginx /etc/nginx/conf.d/jupyterlab.conf.
sudo nano /etc/nginx/conf.d/jupyterlab.conf
Introduce la configuración que aparece a continuación y asegúrate de cambiar el nombre de dominio con tu instalación local de 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; } }
Guarda y sal del archivo cuando hayas terminado.
Ahora ejecuta el siguiente comando para verificar la sintaxis de tu Nginx. Si se realiza correctamente, deberías obtener una salida ‘syntax is ok – test is successful’.
sudo nginx -t
A continuación, inicia y activa el servicio Nginx con el siguiente comando.
sudo systemctl start nginx sudo systemctl enable nginx
Una vez iniciado Nginx, verifica el servicio con el siguiente comando. Asegúrate de que el servicio Nginx se está ejecutando.
sudo systemctl status nginx
Por último, ejecuta el siguiente comando para abrir el puerto HTTP en tu sistema y permitir el tráfico a tu instalación de JupyterLab.
sudo firewall-cmd --add-service={http,https} --permanent sudo firewall-cmd --reload
Con esto, tu instalación de JupyterLab debería ser accesible a través de un proxy inverso.
Iniciar sesión en JupyterLab
Abre una nueva pestaña en tu navegador web y visita el nombre de dominio de tu instalación de JupyterLab, como http://jupyterlab.hwdomain.io/. Si la instalación se ha realizado correctamente, aparecerá la página de inicio de sesión de JupyterLab.
desplázate hasta la parte inferior de la página y pega tu token de JupyterLab. a continuación, introduce la nueva contraseña de tu instalación de JupyterLab pulsa Iniciar sesión y configura la nueva contraseña.
si tienes el token correcto, deberías obtener el panel de JupyterLab y tu contraseña también debería haber cambiado.
Conclusión
¡Enhorabuena! Has instalado con éxito JupyterLab en Rocky Linux 9. Has instalado JupyterLab, configurado la autenticación de JupyetrLab y también has configurado Nginx como proxy inverso para tu instalación de JupyterLab.