---
description: What is Jupyter Notebook? A Jupyter notebook is a web application that allows the user to write codes and rich text elements. Inside the Notebooks, you can write paragraph, equations, title, add links
title: "Jupyter Notebook Tutorial: How to Install &#038; use Jupyter?"
image: https://www.guru99.com/images/jupyter-notebook-install-use.png
---

[Skip to content](#main)

**⚡ Smart Summary**

Jupyter Notebook is an open-source web application that combines live code, equations, visualizations and narrative text in one shareable document, and it runs equally well on a laptop or an AWS server.

- 🔘 **Core idea:** Code cells, Markdown cells and their output live in one .ipynb file.
- ☑️ **Kernel model:** Each notebook binds to a kernel, the process that executes every cell.
- ✅ **Local start:** The jupyter notebook command opens the dashboard, where New and Python 3 create a notebook.
- 🧪 **Run and edit:** Green means edit mode, blue means command mode, Alt+Enter runs a cell and adds one.
- 🛠️ **Cloud path:** An EC2 key pair, a security group on port 8888 and a Docker image move it to AWS.
- 🔒 **Stay safe:** Close and Halt frees the kernel; stopping the instance ends AWS billing.

Read More

![Jupyter Notebook install and use](https://www.guru99.com/images/jupyter-notebook-install-use.png)

## What is Jupyter Notebook?

**Jupyter Notebook** is an open-source web application for writing and sharing live codes, equations, visualizations with rich text elements. It provides a convenient way to write paragraph, equations, titles, links and figures to run data analysis. It is also useful for sharing interactive algorithms with your audience for teaching or demonstrating purpose.

## Introduction to Jupyter Notebook App

The Jupyter Notebook App is the interface where you can write your scripts and codes through your web browser. The app can be used locally, meaning you don’t need internet access, or a remote server.

[![Jupyter Notebook App interface running in a web browser]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt1.png)

Each computation is done via a kernel. A new kernel is created each time you launch a Jupyter Notebook.

Current installs ship **Notebook 7**, built on JupyterLab. `jupyter notebook` still works, and both read the same `.ipynb` file.

## How to use Jupyter Notebook

In the session below, you will learn how to use Jupyter Notebook. You will write a simple line of code to get familiar with the environment of Jupyter.

**Step 1)** You add a folder inside the working directory that will contain all the notebooks you will create during the tutorials about [TensorFlow](https://www.guru99.com/tensorflow-tutorial.html).

If Jupyter is missing, run `pip install notebook` first, as the [TensorFlow install guide](https://www.guru99.com/download-install-tensorflow.html) does. Then open the Terminal and write

```
mkdir jupyter_tf
jupyter notebook
```

Code Explanation

- mkdir jupyter\_tf: Create a folder named jupyter\_tf
- jupyter notebook: Open Jupyter web-app

[![Terminal output after running mkdir jupyter\_tf and jupyter notebook]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt2.png)

**Step 2)** You can see the new folder inside the environment. Click on the folder jupyter\_tf.

[![Jupyter dashboard showing the new jupyter\_tf folder]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt3.png)

**Step 3)** Inside this folder, you will create your first notebook. Click on the button **New** and **[Python 3](https://www.guru99.com/python-2-vs-python-3.html)**.

[![Jupyter New menu with the Python 3 kernel option]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt4.png)

**Step 4)** You are inside the Jupyter environment. So far, your notebook is called Untitled.ipynb. This is the default name given by Jupyter. Let’s rename it by clicking on **File** and **Rename**

[![Jupyter File menu with the Rename command highlighted]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt5.png)

You can rename it Introduction\_jupyter

[![Rename Notebook dialog with the name Introduction\_jupyter]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt6.png)

Inside the Jupyter Notebook interface, you write code, annotation or text inside cells.

[![Empty Jupyter notebook cell ready for code or text]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt7.png)

Inside a cell, you can write a single line of code.

[![Jupyter cell containing a single line of code]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt8.png)

or multiple lines. Jupyter reads the code one line after another.

[![Jupyter cell containing multiple lines of code]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt9.png)

For instance, if you write following code inside a cell.

[![Example code typed inside a Jupyter code cell]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt10.png)

It will produce this output.

[![Output printed underneath the executed Jupyter cell]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt11.png)

**Step 5)** You are ready to write your first line of code. You can notice the cell has two colors. The green color means you are in the **editing mode**.

[![Green cell border indicating Jupyter edit mode]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt12.png)

The blue color, however, indicates you are in **executing mode**.

[![Blue cell border indicating Jupyter command mode]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt13.png)

Your first line of code will print Guru99!. Inside the cell, you can write

```
print("Guru99!")
```

There are two ways to run a code in Jupyter:

- **Click and Run**
- **Keyboard Shortcuts**

To run the code, you can click on **Cell** and then **Run Cells and Select Below**

[![Jupyter Cell menu with Run Cells and Select Below]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt14.png)

You can see the code is printed below the cell and a new cell has appeared right after the output.

[![Guru99 output printed below the cell with a new empty cell added]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt15.png)

A faster way to run a code is to use the **Keyboard Shortcuts**. To access the Keyboard Shortcuts, go to **Help** and **Keyboard Shortcuts**

[![Jupyter Help menu with the Keyboard Shortcuts entry]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt16.png)

Below the list of shortcuts for a MacOS keyboard. You can edit the shortcuts in the editor.

[![Jupyter keyboard shortcut list for macOS]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt17.png)

Following are shortcuts for Windows

[![Jupyter keyboard shortcut list for Windows]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt18.png)

Write this line

```
print("Hello world!")
```

and try the keyboard shortcut. Alt+Enter executes the cell and inserts a new empty cell below.

[![Hello world output produced with the Alt+Enter shortcut]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt19.png)

**Step 6)** It is time to close the Notebook. Go to **File** and click on **Close and Halt**

[![Jupyter File menu with the Close and Halt command]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt20.png)

**Note**: Jupyter automatically saves the notebook with checkpoint. If you have the following message:

[![Jupyter warning that the notebook has unsaved changes]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt21.png)

It means Jupyter didn’t save the file since the last checkpoint. You can manually save the notebook

[![Manually saving a Jupyter notebook checkpoint]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt22.png)

You will be redirected to the main panel. You can see your notebook has been saved a minute ago. You can safely logout.

[![Jupyter main panel listing the saved notebook]()](https://www.guru99.com/images/1/080418_1223_WhatisJupyt23.png)

**Don't Miss:**

- [PySpark Tutorial for Beginners: Learn with EXAMPLES](https://www.guru99.com/pyspark-tutorial.html)
- [Scikit-Learn Tutorial: How to Install & Scikit-Learn Examples](https://www.guru99.com/scikit-learn-tutorial.html)
- [Keras Tutorial](https://www.guru99.com/keras-tutorial.html)
- [TensorFlow vs Keras: Key Difference Between Them](https://www.guru99.com/tensorflow-vs-keras.html)

## Install Jupyter Notebook with AWS

When a dataset outgrows local memory, move the notebook to a cloud server. Below is a step by step process to install and run Jupyter Notebook on [AWS](https://www.guru99.com/what-is-aws.html):

If you do not have an account at AWS, create a free account [here](https://aws.amazon.com/free/).

We will proceed as follow

- [Part 1: Set up a key pair](#part-1-set-up-a-key-pair)
- [Part 2: Set up a security group](#part-2-set-up-a-security-group)
- [Part 3: Launch instance](#part-3-launch-instance)
- [Part 4: Install Docker](#part-4-install-docker)
- [Part 5: Install Jupyter](#part-5-install-jupyter)
- [Part 6: Close connection](#part-6-close-connection)

## Part 1: Set up a key pair

**Step 1)** Go to **Services** and find **EC2**

[![AWS Services menu with the EC2 entry selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup1.png)

**Step 2)** In the panel and click on **Key Pairs**

[![EC2 left navigation panel with Key Pairs selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup2.png)

**Step 3)** Click Create Key Pair

[![EC2 Create Key Pair button]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup3.png)

1. You can call it Docker key
2. Click Create

[![Create Key Pair dialog with the name Docker key]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup4.png)

A file named Docker\_key.pem downloads.

[![Browser download of the Docker\_key.pem private key file]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup5.png)

**Step 4)** Copy and paste it into the folder key. We will need it soon.

**For Mac OS users only**

This step concerns Mac OS users only. Windows and Linux users can jump ahead to Part 2.

You need to set a working directory that will contain the file key

First of all, create a folder named key. For us, it is located inside the main folder Docker. Then, you set this path as your working directory

```
mkdir Docker/key
cd Docker/key
```

[![Terminal creating and entering the Docker/key working directory]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup6.png)

## Part 2: Set up a security group

**Step 1)** You need to configure a security group. You can access it with the panel

[![EC2 navigation panel with Security Groups selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup7.png)

**Step 2)** Click on Create Security Group

[![EC2 Create Security Group button]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup8.png)

**Step 3)** In the next Screen

1. Enter the Security group name “jupyter\_docker” and the description Security Group for Docker.
2. Add the four inbound rules listed below:
   - ssh: port range 22, source Anywhere
   - http: port range 80, source Anywhere
   - https: port range 443, source Anywhere
   - Custom TCP: port range 8888, source Anywhere
3. Click Create.

[![Security group jupyter\_docker with SSH, HTTP, HTTPS and TCP 8888 rules]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup9.png)

**Step 4)** The newly created Security Group will be listed

[![EC2 list showing the newly created jupyter\_docker security group]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup10.png)

## Part 3: Launch instance

You are finally ready to create the instance

[![EC2 navigation panel with Instances selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup11.png)

**Step 1)** Click on Launch Instance

[![EC2 Launch Instance button]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup12.png)

The default server is enough. Choose the Amazon Linux AMI. Screenshots show image 2018.03.0; current consoles offer **Amazon Linux 2023**, so match labels, not pixels.

AMI stands for Amazon Machine Image. It contains the information required to start an instance that runs on a virtual server in the cloud.

[![Amazon Linux AMI selection screen in the launch wizard]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup13.png)

Note that AWS has a server dedicated to deep learning such as:

- **Deep Learning AMI (Ubuntu)**
- **Deep Learning AMI**
- **Deep Learning Base AMI (Ubuntu)**

All of them come with recent binaries of deep learning frameworks pre-installed in separate virtual environments:

- TensorFlow,
- Caffe
- [PyTorch](https://www.guru99.com/pytorch-tutorial.html),
- [Keras](https://www.guru99.com/keras-tutorial.html),
- Theano
- CNTK.

Each image is fully configured with NVIDIA CUDA, cuDNN and NCCL as well as Intel MKL-DNN.

**Step 2)** Choose **t2.micro**. It is a free tier server. AWS offers for free this virtual machine equipped with 1 vCPU and 1 GB of memory. This server provides a good tradeoff between computation, memory and network performance. It suits small and medium workloads.

[![Instance type screen with t2.micro chosen]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup14.png)

**Step 3)** Keep settings default in next screen and click Next: Add Storage

[![Instance configuration screen left at default values]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup15.png)

**Step 4)** Increase storage to 10GB and click Next

[![Storage screen with the root volume increased to 10 GB]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup16.png)

**Step 5)** Keep settings default and click Next: Configure Security Group

[![Tags screen left at default values]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup17.png)

**Step 6)** Choose the security group you created before, which is **jupyter\_docker**

[![Security group screen with jupyter\_docker selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup18.png)

**Step 7)** Review your settings and Click the launch button

[![Review screen before launching the EC2 instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup19.png)

**Step 8)** The last step is to link the key pair to the instance.

[![Key pair selection dialog linking Docker key to the instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup20.png)

**Step 9)** Instance will launch

[![Launch status page confirming the instance is starting]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup21.png)

**Step 10)** Below is a summary of the instances currently in use. Note the public IP

[![EC2 instance list showing the public IP address]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup22.png)

**Step 11)** Click on Connect

[![EC2 Connect button for the running instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup23.png)

You will find the connection details

[![Connect dialog listing the SSH connection details]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup24.png)

## Launch your instance (Mac OS users)

First, point the terminal working directory at the folder holding the key-pair file.

run the code

```
chmod 400 docker.pem
```

Open the connection with this code.

There are two commands. Sometimes the first one stops Jupyter opening the notebook.

In this case, use the second one to force the connection in Jupyter Notebook on EC2.

```
# If able to launch Jupyter
ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com
# If not able to launch Jupyter
ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com -L 8888:127.0.0.1:8888
```

The first time, you are prompted to accept the connection

[![Terminal prompt asking to accept the SSH host fingerprint]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup25.png)

## Launch your instance (Windows users)

**Step 1)** Go to this website to download PuTTY and PuTTYgen [PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)

You need to download

- PuTTY: launch the instance
- PuTTYgen: convert the pem file to ppk

[![PuTTY download page listing PuTTY and PuTTYgen]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup26.png)

Now that both programs are installed, you need to convert the .pem file to .ppk. PuTTY can only read .ppk. The pem file contains the unique key created by AWS.

**Step 2)** Open PuTTYgen and click on Load. Browse the folder where the .pem file is located.

[![PuTTYgen Load dialog browsing for the .pem file]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup27.png)

**Step 3)** After you loaded the file, you should get a notice informing you that the key has been successfully imported. Click on OK

[![PuTTYgen notice confirming the key was imported]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup28.png)

**Step 4)** Then click on Save private key. You are asked if you want to save this key without a passphrase. Click on yes.

[![PuTTYgen prompt to save the private key without a passphrase]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup29.png)

**Step 5)** Save the Key

[![Saving the converted .ppk private key file]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup30.png)

**Step 6)** Go to AWS and copy the public DNS

[![AWS console showing the public DNS name of the instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup31.png)

Open PuTTY and paste the Public DNS in the Host Name

[![PuTTY session screen with the public DNS in Host Name]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup32.png)

**Step 7)**

1. On the left panel, unfold SSH and open Auth
2. Browse the Private Key. You should select the .ppk
3. Click on Open.

[![PuTTY SSH Auth screen with the .ppk private key selected]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup33.png)

**Step 8)**

When this step is done, a new window will be opened. Click Yes if you see this pop-up

[![PuTTY security alert accepting the server host key]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup34.png)

**Step 9)**

You need to login as: ec2-user

[![PuTTY login prompt with the ec2-user account]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup35.png)

**Step 10)**

You are connected to the Amazon Linux AMI.

[![Amazon Linux AMI shell banner after a successful login]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup36.png)

## Part 4: Install Docker

The [Docker tutorial](https://www.guru99.com/docker-tutorial.html) covers the container vocabulary used below.

While you are connected to the server through PuTTY or Terminal, you can install the **Docker** engine.

Execute the following codes. On Amazon Linux 2023, use `dnf` for `yum` and `systemctl start docker` for `service docker start`.

```
sudo yum update -y
sudo yum install -y docker
sudo service docker start
sudo usermod -a -G docker ec2-user
exit
```

Launch again the connection

```
ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com -L 8888:127.0.0.1:8888
```

Windows users reconnect with PuTTY exactly as described above.

## Part 5: Install Jupyter

**Step 1)** Create the Jupyter container from a pre-built image:

```
## Tensorflow
docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/tensorflow-notebook
## Spark
docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/pyspark-notebook
```

Code Explanation

- docker run: Run the image
- v: attach a volume
- \~/work:/home/jovyan/work: Volume
- 8888:8888: port
- jupyter/datascience-notebook: Image

For other pre-built images, browse the [Jupyter Docker Stacks repository](https://github.com/jupyter/docker-stacks). Since October 2023 these images ship on Quay.io, so pull `quay.io/jupyter/tensorflow-notebook` or `quay.io/jupyter/pyspark-notebook` for [PySpark](https://www.guru99.com/pyspark-tutorial.html); the Docker Hub copies are frozen.

Let the container write into the mounted `work` folder so notebooks survive a restart:

```
sudo chown 1000 ~/work
```

**Step 2)** Install `tree` so you can inspect the working directory:

```
sudo yum install -y tree
```

[![Terminal output of the tree command showing the work directory]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup37.png)

**Step 3)** Check the container and its name

Run the commands below in order:

1. List the running containers:

   ```
   docker ps
   ```

2. Read the container log for the Jupyter URL. Here the container is named vigilant\_easley:

   ```
   docker logs vigilant_easley
   ```

3. Copy the URL, with its token, from the log.

[![docker ps and docker logs output with the Jupyter token URL]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup38.png)

**Step 4)** In the URL from the log, replace the host (90a3c09282d6 or 127.0.0.1) with your instance public DNS:

http://(90a3c09282d6 or 127.0.0.1):8888/?token=f460f1e79ab74c382b19f90fe3fd55f9f99c5222365eceed

[![Jupyter login page served from the EC2 instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup39.png)

**Step 5)** The new URL becomes,

http://**ec2-174-129-135-16.compute-1.amazonaws.com:**8888/?token=f460f1e79ab74c382b19f90fe3fd55f9f99c5222365eceed

**Step 6)** Copy and paste the URL into your browser.

Jupyter Opens

[![Jupyter dashboard opened from the container]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup40.png)

**Step 7)** You can now create a new notebook inside your `work` folder.

[![New notebook created inside the mounted work folder]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup41.png)

## Part 6: Close connection

Close the connection in the terminal

```
exit
```

Go back to AWS and stop the server.

[![AWS console used to stop the EC2 instance]()](https://www.guru99.com/images/1/080618_0532_HowtouseJup42.png)

### Troubleshooting

If Docker does not work, rebuild the image using

```
docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/tensorflow-notebook
```

## FAQs

⚡ What is the difference between Jupyter Notebook and JupyterLab?

Notebook 7 opens one document per tab and keeps the classic dashboard. JupyterLab adds a file browser, terminals and side-by-side notebooks. Both share the same kernels and .ipynb format.

🐍 Which programming languages does Jupyter Notebook support?

Python arrives by default through the IPython kernel. Community kernels add [R](https://www.guru99.com/r-programming-introduction-basics.html), Julia, Scala and dozens more. Install the kernel package, then pick it from the New menu.

🔄 How do you restart or change the kernel in a notebook?

Use the Kernel menu: Restart clears every variable, Restart & Run All replays the notebook cleanly, and Change kernel switches environment. Restarting is the fastest fix when a cell hangs.

✨ What are magic commands in Jupyter Notebook?

Magics are IPython shortcuts. Line magics start with % and act on one line, such as %timeit. Cell magics start with %% on the first line, such as %%writefile. Run %lsmagic to list them.

💾 How do you export a notebook to PDF or HTML?

Choose File, then Save and Export Notebook As, or run jupyter nbconvert –to html notebook.ipynb in a terminal. PDF export also needs a LaTeX or WebPDF backend installed.

🔒 How do you secure a Jupyter server exposed on the internet?

Keep the token or set a password hash, restrict the port 8888 security-group rule to your own IP rather than Anywhere, and use HTTPS or an SSH tunnel. Stop the instance afterwards.

🤖 Can GitHub Copilot and agentic coding tools work inside Jupyter Notebook?

Yes. Copilot works in notebooks opened through VS Code or JupyterLab extensions, suggesting whole cells from a comment. Agentic assistants also refactor cells and explain tracebacks, but every suggestion needs review before you run it.

🧠 How does AI help with machine learning workflows built in notebooks?

AI assistants speed up repetitive [data analysis](https://www.guru99.com/what-is-data-analysis.html) work: profiling a dataframe, drafting features, suggesting hyperparameter grids and plotting results. The notebook keeps each suggestion next to its output, so work stays auditable.

#### Summarize this post with:

ChatGPTPerplexityGrokGoogle AI

**Stay Updated on AI** **Get Weekly AI Skills, Trends, Actionable Advice.**

##### Sign up for the newsletter

Subscribe for Free

You have successfully subscribed.  
Please check your inbox.

![AI-Newsletter]() Chosen by over **350,000+** professionals

[Scroll to top](#wrapper)

×

Search for:

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.guru99.com/#organization","name":"Guru99","sameAs":["https://www.facebook.com/Guru99Official","https://twitter.com/guru99com"],"logo":{"@type":"ImageObject","@id":"https://www.guru99.com/#logo","url":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","contentUrl":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","caption":"Guru99","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://www.guru99.com/#website","url":"https://www.guru99.com","name":"Guru99","publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.guru99.com/images/jupyter-notebook-install-use.png","url":"https://www.guru99.com/images/jupyter-notebook-install-use.png","width":"700","height":"250","caption":"Jupyter Notebook - Install &amp; Use","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.guru99.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.guru99.com/tensorflow","name":"TensorFlow"}},{"@type":"ListItem","position":"3","item":{"@id":"https://www.guru99.com/jupyter-notebook-tutorial.html","name":"Jupyter Notebook Tutorial: How to Install &#038; use Jupyter?"}}]},{"@type":"WebPage","@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#webpage","url":"https://www.guru99.com/jupyter-notebook-tutorial.html","name":"Jupyter Notebook Tutorial: How to Install &#038; use Jupyter?","dateModified":"2026-10-09T18:21:35+05:30","isPartOf":{"@id":"https://www.guru99.com/#website"},"primaryImageOfPage":{"@id":"https://www.guru99.com/images/jupyter-notebook-install-use.png"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#breadcrumb"}},{"@type":"Person","@id":"https://www.guru99.com/author/editorial","name":"Editorial Team","url":"https://www.guru99.com/author/editorial","image":{"@type":"ImageObject","@id":"https://www.guru99.com/images/favicon-new-logo.png","url":"https://www.guru99.com/images/favicon-new-logo.png","caption":"Editorial Team","inLanguage":"en-US"},"sameAs":["https://www.guru99.com/editorial-team"],"worksFor":{"@id":"https://www.guru99.com/#organization"}},{"articleSection":"TensorFlow","headline":"Jupyter Notebook Tutorial: How to Install &#038; use Jupyter?","description":"What is Jupyter Notebook? A Jupyter notebook is a web application that allows the user to write codes and rich text elements. Inside the Notebooks, you can write paragraph, equations, title, add links","keywords":"tensorflow, Data Warehousing, Tableau","speakable":{"@type":"SpeakableSpecification","cssSelector":[".entry-title",".summary"]},"@type":"Article","author":{"@id":"https://www.guru99.com/author/editorial","name":"Editorial Team"},"dateModified":"2026-10-09T18:21:35+05:30","image":{"@id":"https://www.guru99.com/images/jupyter-notebook-install-use.png"},"copyrightYear":"2026","name":"Jupyter Notebook Tutorial: How to Install &#038; use Jupyter?","subjectOf":[{"@type":"HowTo","name":"Install Jupyter","description":"To install Jupyter, follow the basics steps which is cover below.","step":[{"@type":"HowToStep","name":"Step 1) Create Jupyter with,","text":"pre-built image.","url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step1"},{"@type":"HowToStep","name":"Step 2) Install tree to see,","text":"our working directory next","image":{"@type":"ImageObject","url":"https://cdn.guru99.com/images/1/080618_0532_HowtouseJup37.png"},"url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step2"},{"@type":"HowToStep","name":"Step 3) Check the container and its name","text":"Use command","image":{"@type":"ImageObject","url":"https://cdn.guru99.com/images/1/080618_0532_HowtouseJup38.png"},"url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step3"},{"@type":"HowToStep","name":"Step 4) In the URL,","text":"Replace (90a3c09282d6 or 127.0.0.1) with Public DNS of your instance","image":{"@type":"ImageObject","url":"https://cdn.guru99.com/images/1/080618_0532_HowtouseJup39.png"},"url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step4"},{"@type":"HowToStep","name":"Step 5) The new URL becomes,","text":"http://ec2-174-129-135-16.compute-1.amazonaws.com:8888/?token=f460f1e79ab74c382b19f90fe3fd55f9f99c5222365eceed","url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step5"},{"@type":"HowToStep","name":"Step 6) Copy and paste the URL into your browser.","text":"Jupyter Opens","image":{"@type":"ImageObject","url":"https://cdn.guru99.com/images/1/080618_0532_HowtouseJup40.png"},"url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step6"},{"@type":"HowToStep","name":"Step 7) You can write a new Notebook,","text":"in your work folder","image":{"@type":"ImageObject","url":"https://cdn.guru99.com/images/1/080618_0532_HowtouseJup41.png"},"url":"https://www.guru99.com/jupyter-notebook-tutorial.html#step7"}]},{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What is the difference between Jupyter Notebook and JupyterLab?","acceptedAnswer":{"@type":"Answer","text":"Notebook 7 opens one document per tab and keeps the classic dashboard. JupyterLab adds a file browser, terminals and side-by-side notebooks. Both share the same kernels and .ipynb format."}},{"@type":"Question","name":"Which programming languages does Jupyter Notebook support?","acceptedAnswer":{"@type":"Answer","text":"Python arrives by default through the IPython kernel. Community kernels add R, Julia, Scala and dozens more. Install the kernel package, then pick it from the New menu."}},{"@type":"Question","name":"How do you restart or change the kernel in a notebook?","acceptedAnswer":{"@type":"Answer","text":"Use the Kernel menu: Restart clears every variable, Restart &amp; Run All replays the notebook cleanly, and Change kernel switches environment. Restarting is the fastest fix when a cell hangs."}},{"@type":"Question","name":"What are magic commands in Jupyter Notebook?","acceptedAnswer":{"@type":"Answer","text":"Magics are IPython shortcuts. Line magics start with % and act on one line, such as %timeit. Cell magics start with %% on the first line, such as %%writefile. Run %lsmagic to list them."}},{"@type":"Question","name":"How do you export a notebook to PDF or HTML?","acceptedAnswer":{"@type":"Answer","text":"Choose File, then Save and Export Notebook As, or run jupyter nbconvert --to html notebook.ipynb in a terminal. PDF export also needs a LaTeX or WebPDF backend installed."}},{"@type":"Question","name":"How do you secure a Jupyter server exposed on the internet?","acceptedAnswer":{"@type":"Answer","text":"Keep the token or set a password hash, restrict the port 8888 security-group rule to your own IP rather than Anywhere, and use HTTPS or an SSH tunnel. Stop the instance afterwards."}},{"@type":"Question","name":"Can GitHub Copilot and agentic coding tools work inside Jupyter Notebook?","acceptedAnswer":{"@type":"Answer","text":"Yes. Copilot works in notebooks opened through VS Code or JupyterLab extensions, suggesting whole cells from a comment. Agentic assistants also refactor cells and explain tracebacks, but every suggestion needs review before you run it."}},{"@type":"Question","name":"How does AI help with machine learning workflows built in notebooks?","acceptedAnswer":{"@type":"Answer","text":"AI assistants speed up repetitive data analysis work: profiling a dataframe, drafting features, suggesting hyperparameter grids and plotting results. The notebook keeps each suggestion next to its output, so work stays auditable."}}]}],"@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#schema-32238","isPartOf":{"@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#webpage"},"publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.guru99.com/jupyter-notebook-tutorial.html#webpage"}}]}
```
