web-dev-qa-db-fra.com

Comment exécuter `jupyter notebook` en arrière-plan? Pas besoin de garder un terminal pour cela

Souvent, nous exécutons jupyter notebook pour faire apparaître une page du navigateur afin d’utiliser Notebook. Cependant, le terminal ouvrant le serveur y reste. Existe-t-il un moyen de fermer ce terminal en laissant le serveur à l'arrière?

10
Xingdong

Vous pouvez mettre le processus en arrière-plan en utilisant jupyter notebook &. Vous pouvez ensuite fermer le terminal et le processus sera toujours en cours.

9
pgrosslicht

Tmux est une bonne option disponible pour exécuter votre ordinateur portable Jupyter en arrière-plan.

J'utilise mon ordinateur portable Jupyter sur une instance VM avec une OS sur une plate-forme cloud Google: Ubuntu 16.0. Où

  1. Je dois démarrer le terminal SSH
  2. Puis exécutez la commande: jupyter-notebook --no-browser --port=5000. Il lancera le bloc-notes Jupyter sur le port numéro 5000 sur cette instance VM.
  3. Ensuite, j'ouvre mon navigateur et le typeur ip_addrees_of_mon_instance: numéro_port qui est 5000. Il ouvrira mon bloc-notes dans le navigateur.

Maintenant, tout va bien. Mais attendez si la connexion avec mon terminal SSH est interrompue, le Jupyter Notebook s’arrête immédiatement et je dois donc le réexécuter une fois de plus lorsque le terminal ssh est redémarré ou depuis le nouveau terminal ssh. 

Pour éviter cela, tmux est une très bonne option.

Le multiplexeur de terminal (tmux) pour conserver les sessions SSH en arrière-plan après la fermeture du terminal ssh:

  1. Démarrer le terminal ssh
  2. Tapez tmux. Cela ouvrira une fenêtre dans le même terminal. 
  3. Donne la commande pour démarrer Jupyter Notebook ici. Ouvrez le cahier.

Maintenant, si le terminal SSH est fermé/terminé, il continuera à exécuter votre ordinateur portable sur l’instance. 

Si la connexion est terminée, alors:

  1. reconnectez ou ouvrez un nouveau terminal ssh. Pour voir ce bloc-notes (qui continue à fonctionner en arrière-plan), tapez: tmux attach commande. 

Vous voulez mettre fin à la session tmux:

  1. Fermez le cahier. Puis tapez exit dans tmux-terminal-window. (mise à jour: si nous fermons le portable et utilisons la commande tmux detach: il sortira de la fenêtre/du terminal de session tmux sans mettre fin/arrêter les sessions de tmux) 

Pour plus de détails, veuillez vous reporter à cet article: https://www.tecmint.com/keep-remote-ssh-sessions-running-after-disconnection/

8
Yogesh

Vous pouvez démarrer le bloc-notes dans une session screen ou tmux. Permet de vérifier facilement les messages d'erreur, etc.

2
Nick Crawford

Sous * nix, le meilleur moyen d’exécuter un programme en évitant de s’arrêter en fermant le terminal est d’utiliser Nohup (pas de raccrochage).

Nohup jupyter notebook & Nohup jupyter notebook

Nohup met en tant que parent du processus init (0), de sorte qu'il ne recevra pas le signal de "raccrochage" à la fermeture du terminal. Toutes les sorties (sortie standard et erreur standard) sont redirigées vers le fichier Nohup.out Nohup existe à la fois en tant que programme et en tant que commande Shell. Si vous avez bash, consultez la page de manuel de bash pour obtenir plus de détails.

0
SkZ

Vous pouvez utiliser screen pour l'exécuter.

screen -A -m -d -S anyscreenname jupyter notebook --no-browser

Jupyter démarre dans un écran et vous pouvez accéder à l'écran à l'aide des commandes d'écran. 

0
redcode