---
title: Docker Scout quickstart
linkTitle: Quickstart
weight: 20
keywords: scout, supply chain, vulnerabilities, packages, cves, scan, analysis, analyze
description: Learn how to get started with Docker Scout to analyze images and fix vulnerabilities
---
Docker Scout analyzes image contents and generates a detailed report of packages
and vulnerabilities that it detects. It can provide you with
suggestions for how to remediate issues discovered by image analysis.
This guide takes a vulnerable container image and shows you how to use Docker
Scout to identify and fix the vulnerabilities, compare image versions over time,
and share the results with your team.
## Step 1: Setup
[This example project](https://github.com/docker/scout-demo-service) contains
a vulnerable Node.js application that you can use to follow along.
1. Clone its repository:
```console
$ git clone https://github.com/docker/scout-demo-service.git
```
2. Move into the directory:
```console
$ cd scout-demo-service
```
3. Make sure you're signed in to your Docker account,
either by running the `docker login` command or by signing in with Docker Desktop.
4. Build the image and push it to a `<ORG_NAME>/scout-demo:v1`,
where `<ORG_NAME>` is the Docker Hub namespace you push to.
```console
$ docker build --push -t <ORG_NAME>/scout-demo:v1 .
```
## Step 2: Enable Docker Scout
Docker Scout analyzes all local images by default. To analyze images in
remote repositories, you need to enable it first.
You can do this from Docker Hub, the Docker Scout Dashboard, and CLI.
[Find out how in the overview guide](/scout).
1. Sign in to your Docker account with the `docker login` command or use the
**Sign in** button in Docker Desktop.
2. Next, enroll your organization with Docker Scout, using the `docker scout enroll` command.
```console
$ docker scout enroll <ORG_NAME>
```
3. Enable Docker Scout for your image repository with the `docker scout repo enable` command.
```console
$ docker scout repo enable --org <ORG_NAME> <ORG_NAME>/scout-demo
```
## Step 3: Analyze image vulnerabilities
After building, use the `docker scout` CLI command to see vulnerabilities
detected by Docker Scout.
The example application for this guide uses a vulnerable version of Express.
The following command shows all CVEs affecting Express in the image you just
built:
```console
$ docker scout cves --only-package express
```
Docker Scout analyzes the image you built most recently by default,
so there's no need to specify the name of the image in this case.
Learn more about the `docker scout cves` command in the
[`CLI reference documentation`](/reference/cli/docker/scout/cves).
## Step 4: Fix application vulnerabilities
After the Docker Scout analysis, a high vulnerability CVE-2022-24999 was found, caused by an outdated version of the **express** package.
The version 4.17.3 of the express package fixes the vulnerability. Therefore, update the `package.json` file to the new version:
```diff
"dependencies": {
- "express": "4.17.1"
+ "express": "4.17.3"
}
```
Rebuild the image with a new tag and push it to your Docker Hub repository:
```console
$ docker build --push -t <ORG_NAME>/scout-demo:v2 .
```
Run the `docker scout` command again and verify that HIGH CVE-2022-24999 is no longer present:
```console
$ docker scout cves --only-package express
✓ Provenance obtained from attestation
✓ Image stored for indexing
✓ Indexed 79 packages
✓ No vulnerable package detected
## Overview
│ Analyzed Image
────────────────────┼───────────────────────────────────────────────────
Target │ mobywhale/scout-demo:v2
digest │ ef68417b2866
platform │ linux/arm64
provenance │ https://github.com/docker/scout-demo-service.git