Recherche de site Web

Comment configurer Jupyter Notebook pour Python 3 sur Ubuntu 22.04


Vous n'utilisez pas Ubuntu 22.04 ? Choisissez une version ou une distribution différente.

Introduction

Jupyter Notebook offre un shell de commande pour le calcul interactif en tant qu'application web. L'outil peut être utilisé avec plusieurs langages, y compris Python, Julia, R, Haskell et Ruby. Il est souvent utilisé pour travailler avec des données, la modélisation statistique et l'apprentissage automatique.

Ce tutoriel vous guidera à travers la configuration de Jupyter Notebook pour l'exécuter localement ou à partir d'un serveur Ubuntu 22.04, ainsi qu'à vous enseigner comment vous connecter et utiliser le notebook. Les notebooks Jupyter (ou simplement notebooks) sont des documents produits par l'application Jupyter Notebook qui contiennent à la fois du code informatique et des éléments de texte enrichi (paragraphes, équations, figures, liens, etc.) qui aident à présenter et partager des recherches reproductibles.

À la fin de ce guide, vous serez en mesure d'exécuter du code Python 3 en utilisant Jupyter Notebook sur une machine locale ou un serveur distant.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin d'un environnement de programmation Python 3 et du module Python venv, soit

  • sur votre machine locale, ou
  • sur un serveur Ubuntu.

Toutes les commandes de ce tutoriel doivent être exécutées en tant qu'utilisateur non-root. Si l'accès root est requis pour la commande, il sera précédé de sudo. La configuration initiale du serveur avec Ubuntu 22.04 explique comment ajouter des utilisateurs et leur donner un accès sudo.

Étape 1 — Installer Jupyter Notebook

Dans cette section, nous allons installer Jupyter Notebook avec pip.

Activez l'environnement de programmation Python 3 dans lequel vous souhaitez installer Jupyter Notebook. Dans notre exemple, nous allons l'installer dans my_env, donc nous allons nous assurer que nous sommes dans le répertoire de cet environnement et l'activer comme suit :

  1. cd ~/environments
  2. . my_env/bin/activate

Ensuite, nous pouvons nous assurer que pip est mis à jour vers la version la plus récente :

  1. pip install --upgrade pip

Maintenant, nous pouvons installer Jupyter Notebook avec la commande suivante :

  1. pip install jupyter

À ce stade, Jupyter Notebook est installé dans l'environnement de programmation actuel.

La prochaine étape facultative est destinée à ceux qui connectent une installation serveur de l'interface web en utilisant le tunneling SSH.

Étape 2 (Optionnelle) — Utiliser le tunnel SSH pour se connecter à une installation de serveur

Si vous avez installé Jupyter Notebook sur un serveur distant, vous devrez vous connecter à l'interface web de Jupyter Notebook en utilisant un tunnel SSH. Jupyter Notebook exécute son interface de navigateur sur un port spécifique de votre serveur distant (tel que :8888, :8889, etc.), qui n'est pas exposé au web en général par défaut. Le tunnel SSH vous permet de vous connecter en toute sécurité aux ports du serveur distant, que vous pouvez ensuite accéder via un navigateur web local.

Notez que ces instructions sont conçues pour être exécutées à partir d'une fenêtre de terminal locale, c'est-à-dire pas celle avec laquelle vous vous êtes connecté au serveur.

Tunneling SSH

Si vous utilisez Windows, vous devrez installer une version d'OpenSSH afin de pouvoir utiliser ssh depuis un terminal. Si vous préférez travailler dans PowerShell, vous pouvez suivre la documentation de Microsoft pour ajouter OpenSSH à PowerShell. Si vous préférez avoir un environnement Linux complet disponible, vous pouvez configurer WSL, le Sous-système Windows pour Linux, qui inclura ssh par défaut. Enfin, comme troisième option légère, vous pouvez installer Git pour Windows, qui fournit un environnement de terminal bash natif pour Windows incluant la commande ssh. Chacune de ces options est bien supportée et celle que vous choisissez dépendra de votre préférence.

Si vous utilisez un Mac ou Linux, vous aurez déjà la commande ssh disponible dans votre terminal.

Les étapes pour créer un tunnel SSH sont similaires à celles du guide Comment se connecter aux Droplets avec SSH, sauf qu'il y a des paramètres supplémentaires ajoutés dans la commande ssh. Cette sous-section décrira les paramètres supplémentaires nécessaires dans la commande ssh pour tunneler avec succès.

Le tunneling SSH peut être effectué en exécutant la commande SSH suivante dans une nouvelle fenêtre de terminal local :

  1. ssh -L 8888:localhost:8888 your_server_username@your_server_ip

La commande ssh ouvre une connexion SSH, mais -L spécifie que le port donné sur l'hôte local (client) doit être transféré vers l'hôte et le port donnés sur le côté distant (serveur). Cela signifie que tout ce qui fonctionne sur le deuxième numéro de port (par exemple 8888) sur le serveur apparaîtra sur le premier numéro de port (par exemple 8888) sur votre ordinateur local.

Si vous recevez un message indiquant que le port 8888 est indisponible, vous pouvez le changer pour un autre numéro de port arbitraire inférieur à 65535. Le port 8888 n'a pas de signification significative mais est souvent utilisé pour des démonstrations comme celle-ci.

server_username est votre nom d'utilisateur (par exemple, sammy) sur le serveur que vous avez créé et your_server_ip est l'adresse IP de votre serveur.

Par exemple, pour le nom d'utilisateur sammy et l'adresse du serveur your_server_ip, la commande serait :

  1. ssh -L 8888:localhost:8888 sammy@your_server_ip

Si aucune erreur n'est affichée après avoir exécuté la commande ssh -L, vous pouvez vous rendre dans votre environnement de programmation et exécuter Jupyter Notebook :

  1. jupyter notebook

Vous recevrez une sortie avec une URL. Depuis un navigateur web sur votre machine locale, ouvrez l'interface web du Jupyter Notebook avec l'URL qui commence par http://localhost:8888. Assurez-vous que le numéro de jeton est inclus, ou saisissez le numéro de jeton lorsque cela vous est demandé à http://localhost:8888.

Étape 3 — Exécution de Jupyter Notebook

Avec Jupyter Notebook installé, vous pouvez l'exécuter dans votre terminal. Pour ce faire, exécutez la commande suivante :

  1. jupyter notebook

Un journal des activités du Jupyter Notebook sera imprimé dans le terminal. Lorsque vous exécutez Jupyter Notebook, il fonctionne sur un numéro de port spécifique. Le premier notebook que vous exécutez fonctionnera généralement sur le port 8888. Pour vérifier le numéro de port spécifique sur lequel Jupyter Notebook fonctionne, référez-vous à la sortie de la commande utilisée pour le démarrer :

[I NotebookApp] Serving notebooks from local directory: /home/sammy
[I NotebookApp] 0 active kernels 
[I NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
[I NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
...

Si vous exécutez Jupyter Notebook sur un ordinateur local (et non sur un serveur), votre navigateur par défaut devrait avoir ouvert l'application web Jupyter Notebook. Si ce n'est pas le cas, ou si vous fermez la fenêtre, vous pouvez naviguer vers l'URL fournie dans la sortie, ou naviguer vers localhost:8888 pour vous connecter.

Chaque fois que vous souhaitez arrêter le processus Jupyter Notebook, appuyez sur Ctrl+C, tapez Y lorsqu'on vous le demande, puis appuyez sur Entrée pour confirmer.

Vous recevrez la sortie suivante :

[C 12:32:23.792 NotebookApp] Shutdown confirmed
[I 12:32:23.794 NotebookApp] Shutting down kernels

Jupyter Notebook ne fonctionne plus maintenant.

Étape 4 — Utiliser Jupyter Notebook

cette section aborde les bases de l'utilisation de Jupyter Notebook. Si vous n'avez pas actuellement Jupyter Notebook en cours d'exécution, lancez-le avec la commande jupyter notebook.

Vous devriez maintenant y être connecté à l'aide d'un navigateur web. Jupyter Notebook est très puissant et dispose de nombreuses fonctionnalités. Cette section va décrire quelques-unes des fonctionnalités de base pour vous aider à commencer à utiliser le notebook. Jupyter Notebook affichera tous les fichiers et dossiers dans le répertoire à partir duquel il est exécuté, donc lorsque vous travaillez sur un projet, assurez-vous de le commencer à partir du répertoire du projet.

Pour créer un nouveau fichier de carnet, sélectionnez Nouveau > Python 3 dans le menu déroulant en haut à droite :

Cela ouvrira un carnet. Nous pouvons maintenant exécuter du code Python dans la cellule ou changer la cellule en markdown. Par exemple, changez la première cellule pour accepter le Markdown en cliquant sur Cellule > Type de cellule > Markdown dans la barre de navigation supérieure. Nous pouvons maintenant écrire des notes en utilisant Markdown et même inclure des équations écrites en LaTeX en les mettant entre les symboles $$. Par exemple, tapez ce qui suit dans la cellule après l'avoir changée en markdown:

Simple Equation

Let us now implement the following equation:
$$ y = x^2$$

where $x = 2$

Pour convertir le markdown en texte enrichi, appuyez sur Ctrl+Entrée, et les résultats suivants devraient apparaître :

Vous pouvez utiliser les cellules markdown pour prendre des notes et documenter votre code. Implémentons cette simple équation et affichons le résultat. Cliquez sur la cellule du haut, puis appuyez sur Alt+Entrée pour ajouter une cellule en dessous. Saisissez le code suivant dans la nouvelle cellule.

x = 2
y = x**2
print(y)

Pour exécuter le code, appuyez sur Ctrl+Entrée. Vous recevrez les résultats suivants :

Vous avez maintenant la possibilité d'importer des modules et d'utiliser le notebook comme vous le feriez avec n'importe quel autre environnement de développement Python !

Pour fermer le serveur Jupyter, revenez à la fenêtre de terminal à partir de laquelle vous l'avez lancé et appuyez sur Ctrl+C. C'est un raccourci standard pour terminer les processus du terminal et Jupyter vous invitera à sauvegarder avant de quitter.

Conclusion

Félicitations ! Vous devriez maintenant être en mesure d'écrire du code Python reproductible et des notes en Markdown en utilisant Jupyter Notebook. Pour obtenir un aperçu rapide de Jupyter Notebook depuis l'interface, sélectionnez Aide > Visite de l'interface utilisateur dans le menu de navigation supérieur pour en savoir plus.

À partir d'ici, vous pourriez être intéressé à lire notre série sur la visualisation et la prévision des séries temporelles.