Everytime I try to shut them down with thi following command : JupyterHub brings the power of notebooks to groups of users. JupyterHub has pre-built Docker images that we can utilize to spawn a single notebook on a whim, with little to no overhead in technical complexity. To add a cherry on top, it can be managed and sustained through Docker allowing for isolated development environments. #!/bin/bash ports=jupyter notebook list | awk -F[:/] '{print $5}'for port in $ports do PORT=$(echo $port | xargs) if [ "$PORT" != "8888" ]; then kill -9 $(lsof -n -i4TCP:$port | cut -f 2 -d " ") else echo "Notebooks on port '$PORT' are still running ..." fi done. You can message me on twitter or e-mail me at sidhuashton@gmail.com. Since notebook 5.1 you can use a new tag: raises-exception This will indicate that exception in the specific cell is expected and jupyter will not stop the execution. I found that ipython must be running for jupyter notebook to execute. Lastly, we install additional packages to spawn JupyterLab instances via Docker. In fact, you now to have to confirm shutdown after pressing Ctrl-C. Ensure `cull_idle_servers.py` is in the same folder as the Dockerfile. To access it on other devices on your network such asva laptop, an iPad, etc, identify the IP of the host machine by running ifconfig on Unix machines & ipconfig on Windows. To access it on other devices on your network such asva laptop, an iPad, etc, identify the IP of the host machine by running ifconfig on Unix machines & ipconfig on Windows. Will this perform a full clean up—deleting temporary files, etc.? JupyterHub has services that can run along side it and one of them being jupyterhub-idle-culler. Instead, run your Jupyter Notebook as a stand alone web app. Some might “daemonize” the process and then use nohup to detach it from their terminal, but that’s not the most elegant and maintainable solution. 1) Find the JupyterLab container ID: docker ps -a, 2) “SSH” into the container: docker exec -it $YOUR_CONTAINER_ID bash, 3) Create a user and follow the terminal prompts to create a password: useradd $YOUR_USERNAME. Jupyter Notebook, however, is supposed to run as a local instance, on a single node, by a single developer. To control the network name we use a little hack: we pass an environment variable COMPOSE_PROJECT_NAME to Docker Compose, and the network name is obtained by appending _default to it. For such an integral tool, the out of the box start up is not the best. Have a question about this project? It perfectly worked !!! That is, until now. If you tear down or rebuild the container you will have to recreate users. Unfortunately, there was no middle ground to have the usability and scalability of JupyterHub and the simplicity of running a local Jupyter Notebook. Some even consider it a powerful development when combining it with NBDev. In the next release (5.5), there will be an option to display a "Quit" button in the dashboard, allowing users without terminal/SSH access to stop a notebook server (#3004). tox@lrndsvm:$ jupyter --version I just submitted a PR that introduces a new server option that will add a "shutdown" button next to the "logout" button: #3004. first, run jupyter notebook list to get jupyter used port-number. Jupyter Notebook, however, is supposed to run as a local instance, on a single node, by a single developer. (though that's most likely a different problem, I guess). To find out more about JupyterHub services, check out their official documentation on them. Each use requires starting the Jupyter web application from the command line and entering your token or password.