Aller au contenu

Jupyter

Pour ouvrir jupyter, il faut tout d'abord charger le module anaconda:

module load anaconda

Si l'environement de base n'est pas activé

conda activate

Si vous créer votre propre environement conda, vous devez y installer le package jupyter

conda install jupyter

Installation julia

Installez d'abord jupyterlab dans python, ensuite dans julia vous devez ajouter le module IJulia.

add IJulia

Lorsque vous allez démarrer jupyter, vous pourrez avoir des notebook en julia ou python.

Mot de passe

On créé un mot de passe. Cela évite l'utilisation de la clé générée aléatoirement.

jupyter lab password

Pour notebook, on peut faire la commande

jupyter notebook password

Configuration sécurisée

Il est préférable de sécuriser votre jupyterlab avec un certificat ssl pour que la communication soit cryptée.

Comme ce certificat est auto-signé, il ne sera pas automatiquement reconnu par les navigateurs mais, il fonctionne. Voici la commande pour le créer.

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout $HOME/.jupyter/mykey.key -out $HOME/.jupyter/mycert.pem

Maintenant que nous avons un certificat, nous configurons jupyter pour l'utiliser.

lab

echo "c.ServerApp.certfile = u'$HOME/.jupyter/mycert.pem'" >> $HOME/.jupyter/jupyter_lab_config.py
echo "c.ServerApp.keyfile = u'$HOME/.jupyter/mykey.key'" >> $HOME/.jupyter/jupyter_lab_config.py

notebook

echo "c.NotebookApp.certfile = u'$HOME/.jupyter/mycert.pem'" >> $HOME/.jupyter/jupyter_notebook_config.py
echo "c.NotebookApp.keyfile = u'$HOME/.jupyter/mykey.key'" >> $HOME/.jupyter/jupyter_notebook_config.py

Démarrage

Maintenant que la configuration est terminée, on peut démarrer le programme sans démarrer le programme web et s'y connecter nous même.

jupyter notebook --no-browser

ou

jupyter lab --no-browser

Accès distant

Si vous souhaitez démarrer un serveur lab sur une machine et y accéder à distance, démarrez le comme à l'habitude et prenez en note le numéro de port utilisé puisque vous en aurez besoin lors de la création du tunnel ssh.

ssh monpostedetravail -L8889:localhost:8889

Dans cet exemple, le port 8889 a été alloué à notre jupyter. Vous pouvez maintenant y accéder à l'adresse https://localhost:8889.

De cette façon, vous pourrez accéder à un notebook démarré sur une machine du CIRRELT/GERAD à partir de la maison lorsque vous êtes connectés au VPN.

Exécuter un notebook

Pour exécuter un notebook en mode non-interactif sur la ligne de commande, vous pouvez utiliser la commande suivante:

jupyter nbconvert --to notebook --inplace --execute notebook.ipynb