Port 8888 is the default Jupyter Notebook and JupyterLab port. Jupyter runs a local web server that serves notebooks via the browser. The server generates a random token on startup for authentication. Port 8888 should never be publicly exposed – Jupyter notebooks execute arbitrary code on the host machine. Use SSH tunneling for remote access.
Port Number
8888
Protocol
TCP
Service
Jupyter Notebook / JupyterLab
Range
IANA Registered (1024–49151)
Show running Jupyter servers with their URLs and tokens
jupyter notebook listCheck what process owns port 8888 and its bind address
ss -tnlp sport = :8888Count active kernels (running code environments)
curl -s http://localhost:8888/api/kernels -H 'Authorization: token TOKEN' | jq lengthjupyter notebook --port 8888
jupyter lab --no-browser --port 8888
ssh -L 8888:localhost:8888 user@gpu-serverIPython Notebook was created by Fernando Perez in 2011. It was renamed Jupyter (Julia + Python + R) in 2014 as it became language-agnostic. JupyterLab (2018) provided a full IDE-like interface. Port 8888 was the arbitrary default chosen because 8080 was too commonly taken.
Is JupyterHub safer than Jupyter Notebook?
JupyterHub adds multi-user authentication (OAuth, LDAP, PAM), per-user process isolation, and centralized management. Single-user Jupyter Notebook relies only on a token. For any team or classroom setting, use JupyterHub with containerized spawners.
How do I access Jupyter on a remote GPU server?
SSH tunnel: ssh -L 8888:localhost:8888 user@gpu-server, then open http://localhost:8888 in your local browser. The traffic travels encrypted through SSH. Never open port 8888 in the cloud firewall.