PyCharm 2023.2 Help

Manage Jupyter notebook servers

In PyCharm, you can execute code cells using:

  • Managed server – a Jupyter server that is automatically launched by PyCharm for the current project. It will be terminated when you close PyCharm.

  • Configured server – any Jupyter server that you connect to by specifying its URL and token.

Launch a local Jupyter server

  • To run a Jupyter server just execute any code cell. When you initiate cell execution, PyCharm launches a Jupyter server on the local host using any available port (by default, it is the 8888 port). You can switch to the Jupyter Server tool window to preview server's configuration details.

Jupyter server is running. Jupyter tool window

Once the server is launched, it is shown as a managed server in the list of the servers in the Jupyter toolbar. You can also see the automatically created server kernel in the list of kernels. This kernel is based on the Python interpreter configured for the project.

Jupyter notebook toolbar; Managed server is connected

Connect to a Jupyter server

  1. Go to Tools | Add Jupyter Connection.

  2. In the New Jupyter Connection dialog, select the connection type:

    • Start a local Jupyter server: run a Jupyter server in a local directory that will be attached to your workspace.

    • Connect to Jupyter server using URL: establish a connection to a remote Jupyter server. The target URL should contain a server name or its address, and the access token.

    Add a remote connection to a Jupyter server
    Once the connection has been established, the server and its structure are shown in the Workspace tool window.
    Remote Jupyter server in the Project tool window

Stop the Jupyter server

  • To stop any running server, switch to the Jupyter Server tool window and click the the Stop button icon. Preview the status in the Server Log window.

Stopping the server

Once you have shut down the server, the current session is terminated. When you start the server next time using the Run server icon icon, execution results for all previous sessions and all notebooks will be lost.

Restart the kernel

  • You might want to refresh your calculations without shutting down the entire server and affecting any other notebooks. To restart the currently running kernel, click Kernels on the Jupyter notebook toolbar. You can then view the kernel status in the Server Log window:

    Restarting the current kernel

You can execute your notebook code cells on a specific Jupyter server.

When you launch any managed server, by default it uses the current Python interpreter and the automatically selected port. However, you can select any other interpreter available in your PyCharm instance and specify an alternative port. You can also connect to any configured server if you know its URL and token.

Configure a Jupyter server

  1. Select Configure Jupyter Server in the list of the Jupyter servers.

    Configure a Jupyter server

  2. Then select Use Managed Server. By default, the server will use the project Python interpreter. If necessary, select another local interpreter from the list.

    Select an interpreter for the managed server

  3. In the Command line arguments field, you can do the following:

    • Include a custom working directory

    • Make the server accessible on the local network

    • Run the server as root

    • Set a password to access to the server

    • Run JupyterLab instead of Jupyter Notebook

    • Change the automatically detected port.

    For example, use the following command-line arguments to run the Jupyter Notebook server at port 9090 without opening a browser:

    Entries in Command line arguments fields in the managed server
  4. Environment variables can be set by creating different variables and assigning values to them.

    Create environment variables and assign values
  5. Once done with configuring, click Apply and OK.

  6. Then execute any code cell to run the managed server.

Connect to a Jupyter server

  1. Select Configure Jupyter Server in the list of the Jupyter servers.

    Configure a Jupyter server

  2. Then select Configured Server and add the server's path. It consists of a URL and a token.

    Configure a Jupyter server. Settings dialog

  3. Once done with configuring, click Apply and OK.

  4. Then execute any code cell to connect to the running configured server.

Resolving kernel mismatch error of configured server

  • If you see the following warning, the kernel of the newly configured server doesn't match your current Python interpreter. For example, it might have a different set of the installed packages.

    Warning requesting to register interpreter as a kernel

    You can register your Python interpreter as a kernel on the configured server by clicking the corresponding link. After that you can see it in the list of the kernels for the configured server.

    Two kernels are registered for the configured server
Last modified: 12 September 2023