From ae47188fa8980bf228e72b9c6dea63c24fd018b3 Mon Sep 17 00:00:00 2001 From: Craig Osterhout Date: Fri, 21 Aug 2026 13:49:01 -0700 Subject: [PATCH 1/3] scout: retire features Signed-off-by: Craig Osterhout --- _vale/config/vocabularies/Docker/accept.txt | 1 + content/guides/docker-scout.md | 18 +- .../manuals/build/building/best-practices.md | 18 +- content/manuals/retired.md | 39 ++- content/manuals/scout/explore/dashboard.md | 39 +-- content/manuals/scout/integrations/_index.md | 44 +-- .../scout/integrations/code-quality/_index.md | 5 - .../integrations/code-quality/sonarqube.md | 86 ------ .../scout/integrations/registry/acr.md | 252 --------------- .../integrations/registry/artifactory.md | 167 ---------- .../scout/integrations/registry/ecr.md | 291 ------------------ .../scout/integrations/registry/watch.md | 191 ++++++++++++ .../source-code-management/_index.md | 5 - .../source-code-management/github.md | 59 ---- .../integrations/team-collaboration/_index.md | 5 - .../integrations/team-collaboration/slack.md | 75 ----- content/manuals/scout/policy/_index.md | 14 - content/manuals/scout/policy/dashboard.md | 233 -------------- content/manuals/scout/policy/local.md | 32 +- .../manuals/scout/release-notes/platform.md | 68 ++-- data/redirects.yml | 7 +- 21 files changed, 295 insertions(+), 1354 deletions(-) delete mode 100644 content/manuals/scout/integrations/code-quality/_index.md delete mode 100644 content/manuals/scout/integrations/code-quality/sonarqube.md delete mode 100644 content/manuals/scout/integrations/registry/acr.md delete mode 100644 content/manuals/scout/integrations/registry/artifactory.md delete mode 100644 content/manuals/scout/integrations/registry/ecr.md create mode 100644 content/manuals/scout/integrations/registry/watch.md delete mode 100644 content/manuals/scout/integrations/source-code-management/_index.md delete mode 100644 content/manuals/scout/integrations/source-code-management/github.md delete mode 100644 content/manuals/scout/integrations/team-collaboration/_index.md delete mode 100644 content/manuals/scout/integrations/team-collaboration/slack.md delete mode 100644 content/manuals/scout/policy/dashboard.md diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 48cfd4c6fdd2..75ac4e3e93b7 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -225,6 +225,7 @@ Sigstore Snyk Solr SonarQube +Sonatype Sonoma Splunk SQLite diff --git a/content/guides/docker-scout.md b/content/guides/docker-scout.md index 04fc6a06dba2..eb5806e33359 100644 --- a/content/guides/docker-scout.md +++ b/content/guides/docker-scout.md @@ -247,11 +247,11 @@ control over your image's security. {{< youtube-embed jM9zLBf8M-8 >}} -Docker Scout's [remediation feature](/manuals/scout/policy/dashboard.md) -helps you address supply chain and security issues by offering tailored -recommendations based on policy evaluations. These recommendations guide you in -improving policy compliance or enhancing image metadata, allowing Docker Scout -to perform more accurate evaluations in the future. +Docker Scout's remediation feature helps you address supply chain and +security issues by offering tailored recommendations based on policy +evaluations. These recommendations guide you in improving policy compliance +or enhancing image metadata, allowing Docker Scout to perform more accurate +evaluations in the future. You can use this feature to ensure that your base images are up-to-date and that your supply chain attestations are complete. When a violation occurs, @@ -259,10 +259,10 @@ Docker Scout provides recommended fixes, such as updating your base image or adding missing attestations. If there isn’t enough information to determine compliance, Docker Scout suggests actions to help resolve the issue. -In the Docker Scout Dashboard, you can view and act on these recommendations by -reviewing violations or compliance uncertainties. With integrations like -GitHub, you can even automate updates, directly fixing issues from the -dashboard. +You can view and act on these recommendations in Docker Desktop or Docker Hub, +see [Remediation recommendations](/manuals/scout/explore/image-details-view.md#remediation-recommendations), +or from the CLI with +[`docker scout recommendations`](/reference/cli/docker/scout/recommendations/).
diff --git a/content/manuals/build/building/best-practices.md b/content/manuals/build/building/best-practices.md index f9485bb7f337..b8fd16d36a5d 100644 --- a/content/manuals/build/building/best-practices.md +++ b/content/manuals/build/building/best-practices.md @@ -259,15 +259,15 @@ checks if pinned digests in your Dockerfile correspond to the correct version. If a publisher updates an image that you've pinned, the policy evaluation returns a non-compliant status, indicating that you should update your image. -Docker Scout also supports an automated remediation workflow for keeping your -base images up-to-date. When a new image digest is available, Docker Scout can -automatically raise a pull request on your repository to update your -Dockerfiles to use the latest version. This is better than using a tag that -changes the version automatically, because you're in control and you have an -audit trail of when and how the change occurred. - -For more information about automatically updating your base images with Docker -Scout, see [Remediation](/manuals/scout/policy/dashboard.md). +To keep your base images up-to-date automatically, use +[GitHub Dependabot](https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates) +with `package-ecosystem: "docker"`. Dependabot raises pull requests to update +your base image tags and digests on a schedule. This is better than using a tag +that changes the version automatically, because you're in control and you have +an audit trail of when and how the change occurred. + +You can also review available base image updates from the CLI with +[`docker scout recommendations`](/reference/cli/docker/scout/recommendations/). ## Build and test your images in CI diff --git a/content/manuals/retired.md b/content/manuals/retired.md index 2b5401bfd6b7..959c7b23d6e1 100644 --- a/content/manuals/retired.md +++ b/content/manuals/retired.md @@ -65,6 +65,9 @@ aliases: - /desktop/features/dev-environments/ - /scout/policy/scores/ - /scout/integrations/environment/sysdig/ + - /scout/integrations/team-collaboration/slack/ + - /scout/integrations/code-quality/sonarqube/ + - /scout/integrations/source-code-management/github/ --- This document provides an overview of Docker features, products, and @@ -160,23 +163,31 @@ details, see the [Scout platform release notes](/manuals/scout/release-notes/pla Retired July 1, 2026. - GitHub source code management integration: linked images to their source repository and automated base-image updates via PRs. Retired July 1, 2026. - For migration options, see - [GitHub integration](/manuals/scout/integrations/source-code-management/github.md). -- Notifications: alerted users to newly disclosed CVEs in-product and by email. - Deprecated, retiring September 1, 2026. + For base-image updates, use + [GitHub Dependabot](https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates) + with `package-ecosystem: "docker"`. For image-to-source linkage, build with + `--provenance=mode=max`. This retirement doesn't affect the + [`docker/scout-action`](https://github.com/docker/scout-action) GitHub Action + for CI pipelines. - Slack integration: sent vulnerability and policy compliance notifications to - Slack channels. Deprecated, retiring July 30, 2026. For more information, - see [Slack integration](/manuals/scout/integrations/team-collaboration/slack.md). -- Amazon ECR integration: automatically analyzed images pushed to ECR - registries. Deprecated, retiring September 1, 2026. For migration options, see - [ECR integration](/manuals/scout/integrations/registry/ecr.md). -- Azure Container Registry integration: automatically analyzed images pushed to - ACR registries. Deprecated, retiring September 1, 2026. For migration options, - see [ACR integration](/manuals/scout/integrations/registry/acr.md). + Slack channels. Retired July 30, 2026. +- Notifications: alerted users to newly disclosed CVEs in-product and by + email. Retired September 1, 2026. To surface CVE and policy results without + push notifications, integrate `docker scout cves` or `docker scout policy` + into your CI pipeline. +- Native Amazon ECR integration: automatically analyzed images pushed to ECR + registries using a CloudFormation stack. Retired September 1, 2026. Docker + Scout still supports ECR through + [`docker scout watch`](/manuals/scout/integrations/registry/watch.md). +- Native Azure Container Registry integration: automatically analyzed images + pushed to ACR registries using an ARM template. Retired September 1, 2026. + Docker Scout still supports ACR through + [`docker scout watch`](/manuals/scout/integrations/registry/watch.md). - Policies page in the Dashboard: the `docker scout policy` - CLI continues to work. Deprecated, retiring September 1, 2026. See + CLI continues to work. Retired September 1, 2026. See [Evaluate policies](/manuals/scout/policy/local.md). -- SonarQube integration: surfaced SonarQube quality gate results as a Docker Scout policy. Deprecated, retiring September 1, 2026. +- SonarQube integration: surfaced SonarQube quality gate results as a Docker + Scout policy. Retired September 1, 2026. ### GitHub Copilot extension diff --git a/content/manuals/scout/explore/dashboard.md b/content/manuals/scout/explore/dashboard.md index 6608452eeee0..c41b2709fd5f 100644 --- a/content/manuals/scout/explore/dashboard.md +++ b/content/manuals/scout/explore/dashboard.md @@ -84,46 +84,11 @@ affected by the CVE. The settings menu in the Docker Scout Dashboard contains: - [**Repository settings**](#repository-settings) for enabling and disabling repositories. -- [**Notifications**](#notification-settings) for managing your notification preferences. ### Repository settings When you enable Docker Scout for a repository, Docker Scout analyzes new tags automatically when you push to that repository. -To enable repositories in Amazon ECR, Azure ACR, or other third-party registries, -you first need to integrate them. -See [Container registry integrations](/manuals/scout/integrations/_index.md#container-registries) - -### Notification settings - -> [!IMPORTANT] -> -> Docker Scout notifications are deprecated and will be retired on -> July 30, 2026. To surface CVE and policy results without push notifications, -> integrate `docker scout cves` or `docker scout policy` into your CI pipeline. -> See [CI integrations](/manuals/scout/integrations/_index.md#continuous-integration). -> For details, see the -> [Scout platform release notes](/manuals/scout/release-notes/platform.md). - -The [Notification settings](https://scout.docker.com/settings/notifications) -page is where you can change the preferences for receiving notifications from -Docker Scout. Notification settings are personal, and changing notification -settings only affects your personal account, not the entire organization. - -Docker Scout notifies you when a new vulnerability is disclosed in a security -advisory and it affects one or more of your images. Notifications are only -triggered for the _last pushed_ image tags for each repository. - -The available notification settings are: - -- **Repository scope**: select whether you want notifications for all - repositories or only specific ones. -- **Delivery preferences**: choose between in-product notification pop-ups - and OS-level browser notifications. - -You can also configure your notification settings in Docker Desktop by going -to **Settings** > **Notifications**. - -From this page, you can also go to the settings for -[Team collaboration integrations](/manuals/scout/integrations/team-collaboration/slack.md). +To enable repositories in third-party registries, you first need to integrate +them. See [Container registry integrations](/manuals/scout/integrations/_index.md#container-registries) diff --git a/content/manuals/scout/integrations/_index.md b/content/manuals/scout/integrations/_index.md index a37b83a68d29..ca71ef14e135 100644 --- a/content/manuals/scout/integrations/_index.md +++ b/content/manuals/scout/integrations/_index.md @@ -23,11 +23,9 @@ registries enables Docker Scout to run image analysis on those repositories, so that you can get insights into the composition of those images even if they aren't hosted on Docker Hub. -The following container registry integrations are available: - -- [Amazon Elastic Container Registry](./registry/ecr.md) (deprecated, retiring September 1, 2026) -- [Azure Container Registry](./registry/acr.md) (deprecated, retiring September 1, 2026) -- [JFrog Artifactory](./registry/artifactory.md) +Docker Scout integrates with any Docker/OCI-compliant registry using +[`docker scout watch`](./registry/watch.md), including Amazon ECR, Azure +Container Registry, JFrog Artifactory, Harbor, and Sonatype Nexus. ### Continuous Integration @@ -58,39 +56,3 @@ The following environment monitoring integrations are available: For more information about environment integrations, see [Environments](./environment/_index.md). - -### Code quality - -Integrating Docker Scout with code analysis tools enables quality checks -directly on source code, helping you keep track of bugs, security issues, test -coverage, and more. In addition to image analysis and environment monitoring, -code quality gates let you shift left your supply chain management with Docker -Scout. - -Once you enable a code quality integration, Docker Scout includes the code -quality assessments as policy evaluation results for the repositories where -you've enabled the integration. - -The following code quality integrations are available: - -- [SonarQube](./code-quality/sonarqube.md) (deprecated, retiring September 1, 2026) - -### Source code management - -Integrate Docker Scout with your version control system to get guided -remediation advice on how to address issues detected by Docker Scout image -analysis, directly in your repositories. - -The following source code management integrations are available: - -- [GitHub](source-code-management/github.md) (retired) - -### Team collaboration - -Integrations in this category let you integrate Docker Scout with collaboration -platforms for broadcasting notifications about your software supply chain in -real-time to team communication platforms. - -The following team collaboration integrations are available: - -- [Slack](./team-collaboration/slack.md) (deprecated, retiring September 1, 2026) diff --git a/content/manuals/scout/integrations/code-quality/_index.md b/content/manuals/scout/integrations/code-quality/_index.md deleted file mode 100644 index 16f010710765..000000000000 --- a/content/manuals/scout/integrations/code-quality/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -build: - render: never -title: Code quality ---- diff --git a/content/manuals/scout/integrations/code-quality/sonarqube.md b/content/manuals/scout/integrations/code-quality/sonarqube.md deleted file mode 100644 index 0d2bb019732a..000000000000 --- a/content/manuals/scout/integrations/code-quality/sonarqube.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -title: Integrate Docker Scout with SonarQube -linkTitle: SonarQube -description: Evaluate your images with the SonarQube quality gates defined in your projects -keywords: scout, supply chain, integration, code quality -params: - sidebar: - badge: - color: gray - text: Deprecated ---- - -> [!IMPORTANT] -> -> The Docker Scout SonarQube integration is deprecated and will be retired on -> September 1, 2026. Migration guidance will be provided. For details, see the -> [Scout platform release notes](/manuals/scout/release-notes/platform.md). - -The SonarQube integration enables Docker Scout to surface SonarQube quality -gate checks through Policy Evaluation, under a new [SonarQube Quality Gates -Policy](/manuals/scout/policy/_index.md#sonarqube-quality-gates-policy). - -## How it works - -This integration uses [SonarQube -webhooks](https://docs.sonarsource.com/sonarqube/latest/project-administration/webhooks/) -to notify Docker Scout of when a SonarQube project analysis has completed. When -the webhook is called, Docker Scout receives the analysis results, and stores -them in the database. - -When you push a new image to a repository, Docker Scout evaluates the results -of the SonarQube analysis record corresponding to the image. Docker Scout uses -Git provenance metadata on the images, from provenance attestations or an OCI -annotations, to link image repositories with SonarQube analysis results. - -> [!NOTE] -> -> Docker Scout doesn't have access to historic SonarQube analysis records. Only -> analysis results recorded after the integration is enabled will be available -> to Docker Scout. - -Both self-managed SonarQube instances and SonarCloud are supported. - -## Prerequisites - -To integrate Docker Scout with SonarQube, ensure that: - -- Your image repository is [integrated with Docker Scout](../_index.md#container-registries). -- Your images are built with [provenance attestations](/manuals/build/metadata/attestations/slsa-provenance.md), - or the `org.opencontainers.image.revision` annotation, - containing information about the Git repository. - -## Enable the SonarQube integration - -1. Go to the [SonarQube integrations page](https://scout.docker.com/settings/integrations/sonarqube/) - on the Docker Scout Dashboard. -2. In the **How to integrate** section, enter a configuration name for this - integration. Docker Scout uses this label as a display name for the - integration, and to name the webhook. -3. Select **Next**. -4. Enter the configuration details for your SonarQube instance. Docker Scout - uses this information to create SonarQube webhook. - - In SonarQube, [generate a new **User token**](https://docs.sonarsource.com/sonarqube/latest/user-guide/user-account/generating-and-using-tokens/#generating-a-token). - The token requires 'Administer' permission on the specified project, or - global 'Administer' permission. - - Enter the token, your SonarQube URL, and the ID of your SonarQube - organization. The SonarQube organization is required if you're using - SonarCloud. - -5. Select **Enable configuration**. - - Docker Scout performs a connection test to verify that the provided details - are correct, and that the token has the necessary permissions. - -6. After a successful connection test, you're redirected to the SonarQube - integration overview, which lists all your SonarQube integrations and their - statuses. - -From the integration overview page, you can go directly to the -**SonarQube Quality Gates Policy**. -This policy will have no results initially. To start seeing evaluation results -for this policy, trigger a new SonarQube analysis of your project and push the -corresponding image to a repository. For more information, refer to the -[policy description](../../policy/_index.md#sonarqube-quality-gates). diff --git a/content/manuals/scout/integrations/registry/acr.md b/content/manuals/scout/integrations/registry/acr.md deleted file mode 100644 index c0dc9b4d813c..000000000000 --- a/content/manuals/scout/integrations/registry/acr.md +++ /dev/null @@ -1,252 +0,0 @@ ---- -description: Integrate Azure Container Registry with Docker Scout -keywords: docker scout, acr, azure, integration, image analysis, security, cves -title: Integrate Docker Scout with Azure Container Registry -linkTitle: Azure Container Registry -params: - sidebar: - badge: - color: gray - text: Deprecated ---- - -> [!IMPORTANT] -> -> The Docker Scout Azure Container Registry integration is deprecated and will be retired on September 1, 2026. -> Migrate to [`docker scout watch`](/reference/cli/docker/scout/watch/) for -> continuous analysis, or integrate Scout into your CI pipeline. -> See [Migrate from the ACR integration](#migrate-from-the-acr-integration). - -Integrating Docker Scout with Azure Container Registry (ACR) lets you view -image insights for images hosted in ACR repositories. After integrating Docker -Scout with ACR and activating Docker Scout for a repository, pushing an image -to the repository automatically triggers image analysis. You can view image -insights using the Docker Scout Dashboard, or the `docker scout` CLI commands. - -## How it works - -To help you integrate your Azure Container Registry with Docker Scout, you can -use a custom Azure Resource Manager (ARM) template that automatically creates -the necessary infrastructure in Azure for you: - -- An EventGrid Topic and Subscription for Image push and delete events. -- A read-only authorization token for the registry, used to list repositories, - and ingest the images. - -When the resources have been created in Azure, you can enable the integration -for image repositories in the integrated ACR instance. Once you've enabled a -repository, pushing new images triggers image analysis automatically. The -analysis results appear in the Docker Scout Dashboard. - -If you enable the integration on a repository that already contains images, -Docker Scout pulls and analyzes the latest image version automatically. - -### ARM template - -The following table describes the configuration resources. - -> [!NOTE] -> -> Creating these resources incurs a small, recurring cost on the Azure account. -> The **Cost** column in the table represents an estimated monthly cost of the -> resources, when integrating an ACR registry that gets 100 images pushed per -> day. -> -> The Egress cost varies depending on usage, but it’s around $0.1 per GB, and -> the first 100 GB are free. - -| Azure | Resource | Cost | -| ----------------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------------- | -| Event Grid system topic | Subscribe to Azure Container Registry events (image push and image delete) | Free | -| Event subscription | Send Event Grid events to Scout via a Webhook subscription | $0.60 for every 1M messages. First 100k for free. | -| Registry Token | Read-only token used for Scout to list the repositories, and pull images from the registry | Free | - -The following JSON document shows the ARM template Docker Scout uses to create -the Azure resources. - -{{< accordion title="JSON template" >}} - -{{< acr-template.inline >}} -{{ with resources.GetRemote "https://prod-scout-integration-templates.s3.amazonaws.com/latest/acr_token_template.json" }} -{{ $data := .Content | transform.Unmarshal }} - -```json -{{ transform.Remarshal "json" $data }} -``` - -{{ end }} -{{< /acr-template.inline >}} - -{{< /accordion >}} - -## Integrate a registry - -1. Go to [ACR integration page](https://scout.docker.com/settings/integrations/azure/) on the - Docker Scout Dashboard. -2. In the **How to integrate** section, enter the **Registry hostname** of the - registry you want to integrate. -3. Select **Next**. -4. Select **Deploy to Azure** to open the template deployment wizard in Azure. - - You may be prompted to sign in to your Azure account if you're not already - signed in. - -5. In the template wizard, configure your deployment: - - - **Resource group**: enter the same resource group as you're using for the - container registry. The Docker Scout resources must be deployed to the - same resource group as the registry. - - - **Registry name**: the field is pre-filled with the subdomain of the - registry hostname. - -6. Select **Review + create**, and then **Create** to deploy the template. - -7. Wait until the deployment is complete. -8. In the **Deployment details** section click on the newly created resource - of the type **Container registry token**. Generate a new password for this token. - - Alternatively, use the search function in Azure to navigate to the - **Container registry** resource that you're looking to integrate, and - generate the new password for the created access token. - -9. Copy the generated password and head back to the Docker Scout Dashboard to - finalize the integration. - -10. Paste the generated password into the **Registry token** field. -11. Select **Enable integration**. - -After selecting **Enable integration**, Docker Scout performs a connection test -to verify the integration. If the verification was successful, you're -redirected to the Azure registry summary page, which shows you all your Azure -integrations for the current organization. - -Next, activate Docker Scout for the repositories that you want to analyze in -[Repository settings](https://scout.docker.com/settings/repos/). - -After activating repositories, images that you push are analyzed by Docker -Scout. The analysis results appear in the Docker Scout Dashboard. -If your repository already contains images, Docker Scout pulls and analyzes the -latest image version automatically. - -## Remove an integration - -> [!IMPORTANT] -> -> Removing the integration in the Docker Scout Dashboard doesn't automatically -> remove the resources created in Azure. - -To remove an ACR integration: - -1. Go to the [ACR integration page](https://scout.docker.com/settings/integrations/azure/) - on the Docker Scout Dashboard. -2. Find the ACR integration that you want to remove, and select the **Remove** - button. -3. In the dialog that opens, confirm by selecting **Remove**. -4. After removing the integration in the Docker Scout Dashboard, also remove - the Azure resources related to the integration: - - - The `docker-scout-readonly-token` token for the container registry. - - The `docker-scout-repository` Event Grid System Topic. - -## Migrate from the ACR integration - -Two migration paths are available. - -### Continuous polling - -Best for teams that want ongoing, registry-wide analysis without changing -their build pipelines. `docker scout watch` runs as a long-running process -that polls your ACR registry and pushes results to Docker Scout, replicating -what the integration provided. - -1. Pick a host on which to run `docker scout watch`. - - The host must have network access to your ACR registry and be able to - access the Scout API (`https://api.scout.docker.com`) over the internet. - -2. Ensure you are running the latest version of Scout. - - ```console - $ docker scout version - ``` - - If necessary, [install the latest version of Scout](https://docs.docker.com/scout/install/). - -3. Authenticate Docker to your ACR registry. - - ```console - $ docker login .azurecr.io \ - --username \ - --password - ``` - - > [!TIP] - > - > As a best practice, create a dedicated service principal or token with - > read-only (pull) access to the registry. - -4. Set up your Scout credentials. - - 1. Generate an organization access token. For more details, see - [Create an organization access token](/enterprise/security/access-tokens/#create-an-organization-access-token). - 2. Sign in to Docker using the organization access token. - - ```console - $ docker login --username - ``` - - When prompted for a password, paste the organization access token. - - 3. Connect your local Docker environment to your organization's Docker Scout service. - - ```console - $ docker scout enroll - ``` - -5. Index existing images. You only need to do this once. - - Run `docker scout watch` with the `--all-images` flag to backfill all - existing images in the registry. - - ```console - $ docker scout watch \ - --org \ - --registry .azurecr.io \ - --all-images - ``` - -6. Confirm the images have been indexed by viewing them on the - [Scout Dashboard](https://scout.docker.com/). - -7. Continuously watch for new images. - - Run `docker scout watch` to poll for new images going forward. Use - `--interval` (default 60 seconds) to control polling frequency, and - `--repository` and `--tag` to narrow scope. - - ```console - $ docker scout watch \ - --org \ - --registry .azurecr.io \ - --refresh-registry - ``` - - `docker scout watch` is a long-running process. Run it as a system - service, for example using `systemd` or `nohup`, to ensure it continues - running in the background. - -Reference: [`docker scout watch`](/reference/cli/docker/scout/watch/) - -### Build-time analysis in CI - -Best for teams that already have CI pipelines and want analysis scoped to -images they actively build and push. No long-running process required. - -After `docker build` in your pipeline, run: - -- `docker scout quickview` or `docker scout cves` to analyze the image. -- `docker scout compare --to-env ` for PR gating against policy. -- `docker scout environment` to record the image to an environment. - -See [Integrating Docker Scout with CI](../_index.md#continuous-integration). diff --git a/content/manuals/scout/integrations/registry/artifactory.md b/content/manuals/scout/integrations/registry/artifactory.md deleted file mode 100644 index 36cb7f2ffcb1..000000000000 --- a/content/manuals/scout/integrations/registry/artifactory.md +++ /dev/null @@ -1,167 +0,0 @@ ---- -description: Integrate Artifactory Container Registry with Docker Scout -keywords: docker scout, artifactory, integration, image analysis, security, cves -title: Integrate Docker Scout with Artifactory Container Registry -linkTitle: Artifactory Container Registry -aliases: - - /scout/artifactory/ ---- - -Integrating Docker Scout with JFrog Artifactory lets you index and analyze -images from Artifactory. This integration is powered by a long-running -`docker scout watch` process. It pulls images from your selected repositories -(optionally filtered), can receive webhook callbacks from Artifactory, and -pushes image data to Docker Scout. View results in the Docker Scout Dashboard or -with `docker scout` CLI. - -## How it works - -You run [`docker scout watch`](/reference/cli/docker/scout/watch/) on a host you -control and configure the Artifactory-specific registry string via `--registry -"key=value,..."`. The watch process can: - -- Watch specific repositories or an entire registry -- Optionally ingest all existing images once -- Periodically refresh repository lists -- Receive webhook callbacks from Artifactory on a local port you choose - -After the integration, Docker Scout automatically pulls and analyzes images -that you push to the Artifactory registry. Metadata about your images are stored on the -Docker Scout platform, but Docker Scout doesn't store the container images -themselves. For more information about how Docker Scout handles image data, see -[Data handling](/manuals/scout/deep-dive/data-handling.md). - -### Artifactory-specific registry string options - -These `type=artifactory` options override the generic registry handling for the `--registry` option: - -| Key | Required | Description | -|------------------|:--------:|----------------------------------------------------------------------------------------| -| `type` | Yes | Must be `artifactory`. | -| `registry` | Yes | Docker/OCI registry hostname (e.g., `example.jfrog.io`). | -| `api` | Yes | Artifactory REST API base URL (e.g., `https://example.jfrog.io/artifactory`). | -| `repository` | Yes | Repository to watch (replaces `--repository`). | -| `includes` | No | Globs to include (e.g., `*/frontend*`). | -| `excludes` | No | Globs to exclude (e.g., `*/legacy/*`). | -| `port` | No | Local port to listen on for webhook callbacks. | -| `subdomain-mode` | No | `true` or `false`; matches Artifactory’s Docker layout (subdomain versus repository-path). | - -## Integrate an Artifactory registry - -Use the following steps to integrate your Artifactory registry with Docker -Scout. - -1. Pick the host on which to run `docker scout watch`. - - The host must have local or network access to your private registry and be able - to access the Scout API (`https://api.scout.docker.com`) over the internet. If - you're using webhook callbacks, Artifactory must also be able to reach the Scout - client host on the configured port. - Override the `--workers` option (default: `3`) for optimal performance based on - the size of the host and the expected workload. - -2. Ensure you are running the latest version of Scout. - - Check your current version: - - ```console - $ docker scout version - ``` - - If necessary, [install the latest version of Scout](https://docs.docker.com/scout/install/). - -3. Set up your Artifactory credentials. - - Store the credentials that the Scout client will use to authenticate with - Artifactory. The following is an example using environment variables. Replace - `` and `` with your actual values. - - ```console - $ export DOCKER_SCOUT_ARTIFACTORY_API_USER= - $ export DOCKER_SCOUT_ARTIFACTORY_API_PASSWORD= - ``` - - > [!TIP] - > - > As a best practice, create a dedicated user with read-only access and use - > an access token instead of a password. - - Store the credential that Artifactory will use to authenticate webhook - callbacks. The following is an example using an environment variable. Replace - `` with an actual secret. - - ```console - $ export DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET= - ```` - - > [!TIP] - > - > As a best practice, generate a high-entropy random string of 64-128 characters. - -4. Set up your Scout credentials. - - 1. Generate an organization access token for accessing Scout. For more - details, see [Create an organization access - token](/enterprise/security/access-tokens/#create-an-organization-access-token). - 2. Sign in to Docker using the organization access token. - - ```console - $ docker login --username - ``` - - When prompted for a password, paste the organization access token you - generated. - - 3. Connect your local Docker environment to your organization's Docker Scout service. - - ```console - $ docker scout enroll - ``` - -5. Index existing images. You only need to do this once. - - Run `docker scout watch` with the `--all-images` option to index all images in the specified Artifactory repository. The following is an example command: - - ```console - $ docker scout watch --registry \ - "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ - --all-images - ``` - -6. Confirm the images have been indexed by viewing them on the [Scout - Dashboard](https://scout.docker.com/). - -7. Configure Artifactory callbacks. - - In your Artifactory UI or via REST API, configure webhooks for image - push/update events. Set the endpoint to your `docker scout watch` host and - port, and include the `DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET` for - authentication. - - For more information, see the [JFrog Artifactory Webhooks - documentation](https://jfrog.com/help/r/jfrog-platform-administration-documentation/webhooks) - or the [JFrog Artifactory REST API Webhooks - documentation](https://jfrog.com/help/r/jfrog-rest-apis/webhooks). - -8. Continuously watch for new or updated images. - - Run `docker scout watch` with the `--refresh-registry` option to watch for - new images to index. - - The `docker scout watch` command is a long-running process that must - continue running indefinitely in the background to receive webhooks and - watch for new images. If you run it directly in a terminal and close the - session, the process will stop. - - The following is an example command. You can run the process as a system - service, for example using `systemd` or `nohup`, to ensure it continues - running in the background. - - ```console - $ docker scout watch --registry \ - "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ - --refresh-registry - ``` - -9. Optional. Set up Scout integration for real-time notifications from popular - collaboration platforms. \ No newline at end of file diff --git a/content/manuals/scout/integrations/registry/ecr.md b/content/manuals/scout/integrations/registry/ecr.md deleted file mode 100644 index a326e485434e..000000000000 --- a/content/manuals/scout/integrations/registry/ecr.md +++ /dev/null @@ -1,291 +0,0 @@ ---- -description: Integrate Amazon Elastic Container Registry with Docker Scout -keywords: docker scout, ecr, integration, image analysis, security, cves -title: Integrate Docker Scout with Amazon ECR -linkTitle: Amazon ECR -params: - sidebar: - badge: - color: gray - text: Deprecated ---- - -> [!IMPORTANT] -> -> The Docker Scout Amazon ECR integration is deprecated and will be retired on September 1, 2026. -> Migrate to [`docker scout watch`](/reference/cli/docker/scout/watch/) for -> continuous analysis, or integrate Scout into your CI pipeline. -> See [Migrate from the ECR integration](#migrate-from-the-ecr-integration). - -Integrating Docker Scout with Amazon Elastic Container Registry (ECR) lets you -view image insights for images hosted in ECR repositories. After integrating -Docker Scout with ECR and activating Docker Scout for a repository, pushing an -image to the repository automatically triggers image analysis. You can view -image insights using the Docker Scout Dashboard, or the `docker scout` CLI -commands. - -## How it works - -To help you integrate Docker Scout with ECR, you can use a CloudFormation stack -template that creates and configures the necessary AWS resources for -integrating Docker Scout with your ECR registry. For more details about the AWS -resources, see [CloudFormation stack template](#cloudformation-stack-template). - -The following diagram shows how the Docker Scout ECR integration works. - -![How the ECR integration works](../../images/Scout-ECR.png) - -After the integration, Docker Scout automatically pulls and analyzes images -that you push to the ECR registry. Metadata about your images are stored on the -Docker Scout platform, but Docker Scout doesn't store the container images -themselves. For more information about how Docker Scout handles image data, see -[Data handling](/manuals/scout/deep-dive/data-handling.md). - -### CloudFormation stack template - -The following table describes the configuration resources. - -> [!NOTE] -> -> Creating these resources incurs a small, recurring cost on the AWS account. -> The **Cost** column in the table represents an estimated monthly cost of the -> resources, when integrating an ECR registry that gets 100 images pushed per day. -> -> Additionally, an egress cost also applies when Docker Scout pulls the images -> from ECR. The egress cost is around $0.09 per GB. - -| Resource type | Resource name | Description | Cost | -| ----------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------ | ----- | -| `AWS::SNSTopic::Topic` | `SNSTopic` | SNS topic for notifying Docker Scout when the AWS resources have been created. | Free | -| `AWS::SNS::TopicPolicy` | `TopicPolicy` | Defines the topic for the initial setup notification. | Free | -| `AWS::SecretsManager::Secret` | `ScoutAPICredentials` | Stores the credentials used by EventBridge to fire events to Scout. | $0.42 | -| `AWS::Events::ApiDestination` | `ApiDestination` | Sets up the EventBridge connection to Docker Scout for sending ECR push and delete events. | $0.01 | -| `AWS::Events::Connection` | `Connection` | EventBridge connection credentials to Scout. | Free | -| `AWS::Events::Rule` | `DockerScoutEcrRule` | Defines the rule to send ECR pushes and deletes to Scout. | Free | -| `AWS::Events::Rule` | `DockerScoutRepoDeletedRule` | Defines the rule to send ECR repository deletes to Scout. | Free | -| `AWS::IAM::Role` | `InvokeApiRole` | Internal role to grant the event access to `ApiDestination`. | Free | -| `AWS::IAM::Role` | `AssumeRoleEcrAccess` | This role has access to `ScoutAPICredentials` for setting up the Docker Scout integration. | Free | - -## Integrate your first registry - -Create the CloudFormation stack in your AWS account to enable the Docker Scout -integration. - -Prerequisites: - -- You must have access to an AWS account with permission to create resources. -- You have be an owner of the Docker organization. - -To create the stack: - -1. Go to the [ECR integration page](https://scout.docker.com/settings/integrations/ecr/) - on the Docker Scout Dashboard. -2. Select the **Create on AWS** button. - - This opens the **Create stack** wizard in the AWS CloudFormation console in - a new browser tab. If you're not already signed in to AWS, you're redirected - to the sign-in page first. - - If the button is grayed-out, it means you're lacking the necessary - permissions in the Docker organization. - -3. Follow the steps in the **Create stack** wizard until the end. Choose the - AWS region you want to integrate. Complete the procedure by creating the - resources. - - The fields in the wizard are pre-populated by the CloudFormation template, - so you don't need to edit any of the fields. - -4. When the resources have been created (the CloudFormation status shows - `CREATE_COMPLETE` in the AWS console), return to the ECR integrations page - in the Docker Scout Dashboard. - - The **Integrated registries** list shows the account ID and region for the - ECR registry that you just integrated. If successful, the integration status - is **Connected**. - -The ECR integration is now active. For Docker Scout to start analyzing images -in the registry, you need to activate it for each repository in -[Repository settings](https://scout.docker.com/settings/repos/). - -After activating repositories, images that you push are analyzed by Docker -Scout. The analysis results appear in the Docker Scout Dashboard. -If your repository already contains images, Docker Scout pulls and analyzes the -latest image version automatically. - -## Integrate additional registries - -To add additional registries: - -1. Go to the [ECR integration page](https://scout.docker.com/settings/integrations/ecr/) - on the Docker Scout Dashboard. -2. Select the **Add** button at the top of the list. -3. Complete the steps for creating the AWS resources. -4. When the resources have been created, return to the ECR integrations page in - the Docker Scout Dashboard. - - The **Integrated registries** list shows the account ID and region for the - ECR registry that you just integrated. If successful, the integration status - is **Connected**. - -Next, activate Docker Scout for the repositories that you want to analyze in -[Repository settings](https://scout.docker.com/settings/repos/). - -## Remove integration - -To remove an integrated ECR registry, you must be an owner of the Docker -organization. - -1. Go to the [ECR integration page](https://scout.docker.com/settings/integrations/ecr/) - on the Docker Scout Dashboard. -2. Find the registry that you want to remove in the list of integrated - registries, and select the remove icon in the **Actions** column. - - If the remove icon is disabled, it means that you're lacking the necessary - permissions in the Docker organization. - -3. In the dialog that opens, confirm by selecting **Remove**. - -> [!IMPORTANT] -> -> Removing the integration from the Docker Scout dashboard doesn't remove the -> AWS resources in your account. -> -> After removing the integration in Docker Scout, go to the AWS console and -> delete the **DockerScoutECRIntegration** CloudFormation stack for the integration -> that you want to remove. - -## Troubleshooting - -### Unable to integrate registry - -Check the **Status** of the integration on the [ECR integration page](https://scout.docker.com/settings/integrations/ecr/) -in the Docker Scout Dashboard. - -- If the status is **Pending** for a prolonged period of time, it's an - indication that the integration was not yet completed on the AWS side. Select - the **Pending** link to open the CloudFormation wizard, and complete all the - steps. - -- An **Error** status indicates that something's gone wrong in the back-end. - You can try [removing the integration](#remove-integration) and recreating it - again. - -### ECR images not showing in the dashboard - -If image analysis results for your ECR images aren't showing up in the Docker -Scout Dashboard: - -- Ensure that you've activated Docker Scout for the repository. View and manage - active repositories in [Repository settings](https://scout.docker.com/settings/repos/). - -- Ensure that the AWS account ID and region for your registry is listed on the - ECR integrations page. - - The account ID and region are included in the registry hostname: - `.dkr.ecr..amazonaws.com/` - -## Migrate from the ECR integration - -Two migration paths are available. - -### Continuous polling - -Best for teams that want ongoing, registry-wide analysis without changing -their build pipelines. `docker scout watch` runs as a long-running process -that polls your ECR registry and pushes results to Docker Scout, replicating -what the integration provided. - -1. Pick a host on which to run `docker scout watch`. - - The host must have network access to your ECR registry and be able to - access the Scout API (`https://api.scout.docker.com`) over the internet. - -2. Ensure you are running the latest version of Scout. - - ```console - $ docker scout version - ``` - - If necessary, [install the latest version of Scout](https://docs.docker.com/scout/install/). - -3. Authenticate Docker to your ECR registry using the AWS CLI. - - ```console - $ aws ecr get-login-password --region | \ - docker login --username AWS --password-stdin \ - .dkr.ecr..amazonaws.com - ``` - - The AWS identity used must have at least `ecr:GetAuthorizationToken` and - `ecr:BatchGetImage` permissions on the target registry. - - > [!TIP] - > - > As a best practice, use a dedicated IAM role or user with read-only - > access to the registry. - -4. Set up your Scout credentials. - - 1. Generate an organization access token. For more details, see - [Create an organization access token](/enterprise/security/access-tokens/#create-an-organization-access-token). - 2. Sign in to Docker using the organization access token. - - ```console - $ docker login --username - ``` - - When prompted for a password, paste the organization access token. - - 3. Connect your local Docker environment to your organization's Docker Scout service. - - ```console - $ docker scout enroll - ``` - -5. Index existing images. You only need to do this once. - - Run `docker scout watch` with the `--all-images` flag to backfill all - existing images in the registry. - - ```console - $ docker scout watch \ - --org \ - --registry .dkr.ecr..amazonaws.com \ - --all-images - ``` - -6. Confirm the images have been indexed by viewing them on the - [Scout Dashboard](https://scout.docker.com/). - -7. Continuously watch for new images. - - Run `docker scout watch` to poll for new images going forward. Use - `--interval` (default 60 seconds) to control polling frequency, and - `--repository` and `--tag` to narrow scope. - - ```console - $ docker scout watch \ - --org \ - --registry .dkr.ecr..amazonaws.com \ - --refresh-registry - ``` - - `docker scout watch` is a long-running process. Run it as a system - service, for example using `systemd` or `nohup`, to ensure it continues - running in the background. - -Reference: [`docker scout watch`](/reference/cli/docker/scout/watch/) - -### Build-time analysis in CI - -Best for teams that already have CI pipelines and want analysis scoped to -images they actively build and push. No long-running process required. - -After `docker build` in your pipeline, run: - -- `docker scout quickview` or `docker scout cves` to analyze the image. -- `docker scout compare --to-env ` for PR gating against policy. -- `docker scout environment` to record the image to an environment. - -See [Integrating Docker Scout with CI](../_index.md#continuous-integration). diff --git a/content/manuals/scout/integrations/registry/watch.md b/content/manuals/scout/integrations/registry/watch.md new file mode 100644 index 000000000000..ccf6aae6fa38 --- /dev/null +++ b/content/manuals/scout/integrations/registry/watch.md @@ -0,0 +1,191 @@ +--- +title: Integrate Docker Scout with a container registry +linkTitle: Watch a registry +description: Integrate Docker Scout with any container registry using the docker scout watch CLI command +keywords: docker scout, registry, integration, image analysis, security, cves, watch, ecr, acr, artifactory, harbor, nexus +aliases: + - /scout/integrations/registry/artifactory/ + - /scout/artifactory/ + - /scout/integrations/registry/ecr/ + - /scout/integrations/registry/acr/ +--- + +[`docker scout watch`](/reference/cli/docker/scout/watch/) is a long-running +CLI process that indexes images from a container registry and pushes the +results to Docker Scout. It works with any Docker/OCI-compliant registry, +including Amazon ECR, Azure Container Registry, JFrog Artifactory, Harbor, and +Sonatype Nexus. + +## How it works + +You run `docker scout watch` on a host you control. The process can: + +- Watch specific repositories or an entire registry +- Optionally ingest all existing images once, using `--all-images` +- Periodically refresh repository lists, using `--refresh-registry` +- Receive webhook callbacks from registries that support them, for + near-real-time analysis instead of polling + +After the integration, Docker Scout automatically pulls and analyzes images +that you push to the registry. Metadata about your images are stored on the +Docker Scout platform, but Docker Scout doesn't store the container images +themselves. For more information about how Docker Scout handles image data, +see [Data handling](/manuals/scout/deep-dive/data-handling.md). + +## Set up `docker scout watch` + +1. Pick a host on which to run `docker scout watch`. + + The host must have network access to your registry and be able to access + the Scout API (`https://api.scout.docker.com`) over the internet. If + you're using webhook callbacks, the registry must also be able to reach the + `docker scout watch` host on the configured port. + +2. Ensure you are running the latest version of Scout. + + ```console + $ docker scout version + ``` + + If necessary, [install the latest version of Scout](/manuals/scout/install.md). + +3. Authenticate Docker to your registry. + + ```console + $ docker login --username --password + ``` + + For Amazon ECR, authenticate using the AWS CLI instead: + + ```console + $ aws ecr get-login-password --region | \ + docker login --username AWS --password-stdin \ + .dkr.ecr..amazonaws.com + ``` + + The AWS identity used must have at least `ecr:GetAuthorizationToken` and + `ecr:BatchGetImage` permissions on the target registry. + + For Azure Container Registry: + + ```console + $ docker login .azurecr.io \ + --username \ + --password + ``` + + > [!TIP] + > + > As a best practice, use a dedicated user or token with read-only access + > to the registry. + +4. Set up your Scout credentials. + + 1. Generate an organization access token. For more details, see + [Create an organization access token](/enterprise/security/access-tokens/#create-an-organization-access-token). + 2. Sign in to Docker using the organization access token. + + ```console + $ docker login --username + ``` + + When prompted for a password, paste the organization access token. + + 3. Connect your local Docker environment to your organization's Docker Scout service. + + ```console + $ docker scout enroll + ``` + +5. Index existing images. You only need to do this once. + + ```console + $ docker scout watch --registry --all-images + ``` + +6. Confirm the images have been indexed by viewing them on the + [Scout Dashboard](https://scout.docker.com/). + +7. Continuously watch for new images. + + ```console + $ docker scout watch --registry --refresh-registry + ``` + + `docker scout watch` is a long-running process. Run it as a system + service, for example using `systemd` or `nohup`, to ensure it continues + running in the background. Use `--interval` (default 60 seconds) to + control polling frequency, and `--repository` and `--tag` to narrow scope. + +Reference: [`docker scout watch`](/reference/cli/docker/scout/watch/) + +## Registry-specific options + +Some registries need extra configuration beyond a hostname, passed through +the `--registry` flag as a `key=value` string, for example a REST API +endpoint for webhook callbacks, or a non-standard repository layout. Built-in +adapters exist for `type=artifactory`, `type=harbor`, and `type=nexus`, and a +`type=oci` adapter covers any OCI-compliant registry that implements the +`_catalog` endpoint. For the full option reference for each type, see +[`docker scout watch`](/reference/cli/docker/scout/watch/). + +The following example walks through the `type=artifactory` adapter in detail. +See the CLI reference for equivalent Harbor, Nexus, and generic OCI examples. + +### Example: JFrog Artifactory + +These `type=artifactory` options override the generic registry handling for +the `--registry` option: + +| Key | Required | Description | +|------------------|:--------:|----------------------------------------------------------------------------------------| +| `type` | Yes | Must be `artifactory`. | +| `registry` | Yes | Docker/OCI registry hostname (e.g., `example.jfrog.io`). | +| `api` | Yes | Artifactory REST API base URL (e.g., `https://example.jfrog.io/artifactory`). | +| `repository` | Yes | Repository to watch (replaces `--repository`). | +| `includes` | No | Globs to include (e.g., `*/frontend*`). | +| `excludes` | No | Globs to exclude (e.g., `*/legacy/*`). | +| `port` | No | Local port to listen on for webhook callbacks. | +| `subdomain-mode` | No | `true` or `false`; matches Artifactory's Docker layout (subdomain versus repository-path). | + +Set up credentials for the Scout client to authenticate with Artifactory, and +a secret for Artifactory to authenticate its webhook callbacks: + +```console +$ export DOCKER_SCOUT_ARTIFACTORY_API_USER= +$ export DOCKER_SCOUT_ARTIFACTORY_API_PASSWORD= +$ export DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET= +``` + +> [!TIP] +> +> As a best practice, create a dedicated user with read-only access and use an +> access token instead of a password. Generate the webhook secret as a +> high-entropy random string of 64-128 characters. + +Index existing images with the Artifactory-specific registry string: + +```console +$ docker scout watch --registry \ + "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ + --all-images +``` + +Then configure Artifactory to call the webhook: in your Artifactory UI or via +REST API, set up a webhook for image push/update events, pointing to your +`docker scout watch` host and port, and include the +`DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET` for authentication. For more +information, see the [JFrog Artifactory Webhooks +documentation](https://jfrog.com/help/r/jfrog-platform-administration-documentation/webhooks) +or the [JFrog Artifactory REST API Webhooks +documentation](https://jfrog.com/help/r/jfrog-rest-apis/webhooks). + +Finally, run the same command with `--refresh-registry` instead of +`--all-images` as your long-running watch process, so new images are picked up +going forward: + +```console +$ docker scout watch --registry \ + "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ + --refresh-registry +``` diff --git a/content/manuals/scout/integrations/source-code-management/_index.md b/content/manuals/scout/integrations/source-code-management/_index.md deleted file mode 100644 index aded6d7584e4..000000000000 --- a/content/manuals/scout/integrations/source-code-management/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -build: - render: never -title: Source code management ---- diff --git a/content/manuals/scout/integrations/source-code-management/github.md b/content/manuals/scout/integrations/source-code-management/github.md deleted file mode 100644 index 7f771fda4b61..000000000000 --- a/content/manuals/scout/integrations/source-code-management/github.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Integrate Docker Scout with GitHub -linkTitle: GitHub -description: Integrate Docker Scout using the GitHub app to get remediation advice directly in your repositories -keywords: scout, github, integration, image analysis, supply chain, remediation, source code -params: - sidebar: - badge: - color: gray - text: Retired ---- - -> [!IMPORTANT] -> -> The Docker Scout GitHub integration was retired on July 1, 2026. For base-image updates, use -> GitHub Dependabot with `package-ecosystem: "docker"`. For image-to-source -> linkage, build with `--provenance=mode=max`. - -> [!NOTE] -> -> This retirement applies only to the Docker Scout GitHub App integration. -> The [`docker/scout-action`](https://github.com/docker/scout-action) GitHub -> Action for CI pipelines is not affected and continues to work. - -## Migrate from the GitHub integration - -The integration provided two capabilities, each with an alternative. - -### Base-image digest repinning - -Use GitHub Dependabot with `package-ecosystem: "docker"`. Dependabot opens -PRs to update base image tags and digests on a schedule. When you pin as -`FROM image:tag@sha256:...`, both the tag and digest are updated. The Scout -integration updated only the digest. - -Minimal `.github/dependabot.yml`: - -```yaml -version: 2 -updates: - - package-ecosystem: "docker" - directory: "/" - schedule: - interval: "weekly" -``` - -See [Configuring Dependabot version updates](https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates). - -### Image-to-source linkage - -Build with `--provenance=mode=max`. Docker Scout reads the resulting provenance -attestation to link an image back to its source repository without requiring -the GitHub app. - -```console -$ docker build --provenance=mode=max -t myimage:tag . -``` - -See [SLSA provenance attestations](/manuals/build/metadata/attestations/slsa-provenance.md). diff --git a/content/manuals/scout/integrations/team-collaboration/_index.md b/content/manuals/scout/integrations/team-collaboration/_index.md deleted file mode 100644 index 61a9f8b0040c..000000000000 --- a/content/manuals/scout/integrations/team-collaboration/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -build: - render: never -title: Team collaboration ---- diff --git a/content/manuals/scout/integrations/team-collaboration/slack.md b/content/manuals/scout/integrations/team-collaboration/slack.md deleted file mode 100644 index 6cd8210352ad..000000000000 --- a/content/manuals/scout/integrations/team-collaboration/slack.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Integrate Docker Scout with Slack -linkTitle: Slack -description: | - Integrate Docker Scout with Slack to receive real-time updates - about vulnerabilities and policy compliance in Slack channels -keywords: scout, team collaboration, slack, notifications, updates -params: - sidebar: - badge: - color: gray - text: Deprecated ---- - -> [!IMPORTANT] -> -> The Docker Scout Slack integration is deprecated and will be retired on -> July 30, 2026. To surface CVE and policy results without push notifications, -> integrate `docker scout cves` or `docker scout policy` into your CI pipeline. -> See [CI integrations](/manuals/scout/integrations/_index.md#continuous-integration). -> For details, see the -> [Scout platform release notes](/manuals/scout/release-notes/platform.md). - -You can integrate Docker Scout with Slack by creating a Slack webhook and -adding it to the Docker Scout Dashboard. Docker Scout will notify you about -when a new vulnerability is disclosed, and it affects one or more of your -images. - -![Slack notification from Docker Scout](../../images/scout-slack-notification.png?border=true "Example Slack notification from Docker Scout") - -## How it works - -After configuring the integration, Docker Scout sends notifications about -changes to policy compliance and vulnerability exposure for your repositories, -to the Slack channels associated with the webhook. - -> [!NOTE] -> -> Notifications are only triggered for the *last pushed* image tags for each -> repository. "Last pushed" refers to the image tag that was most recently -> pushed to the registry and analyzed by Docker Scout. If the last pushed image -> is not affected by a newly disclosed CVE, then no notification will be triggered. - -For more information about Docker Scout notifications, -see [Notification settings](/manuals/scout/explore/dashboard.md#notification-settings). - -## Setup - -To add a Slack integration: - -1. Create a webhook, see [Slack documentation](https://api.slack.com/messaging/webhooks). -2. Go to the [Slack integration page](https://scout.docker.com/settings/integrations/slack/) in the Docker Scout Dashboard. -3. In the **How to integrate** section, enter a **Configuration name**. - Docker Scout uses this label as a display name for the integration, - so you might want to change the default name into something more meaningful. - For example the `#channel-name`, or the name of the team that this configuration belongs to. -4. Paste the webhook you just created in the **Slack webhook** field. - - Select the **Test webhook** button if you wish to verify the connection. - Docker Scout will send a test message to the specified webhook. - -5. Select whether you want to enable notifications for all your Scout-enabled image repositories, - or enter the names of the repositories that you want to send notifications for. -6. When you're ready to enable the integration, select **Create**. - -After creating the webhook, Docker Scout begins to send notification updates -to the Slack channels associated with the webhook. - -## Remove a Slack integration - -To remove a Slack integration: - -1. Go to the [Slack integration page](https://scout.docker.com/settings/integrations/slack/) in the Docker Scout Dashboard. -2. Select the **Remove** icon for the integration that you want to remove. -3. Confirm by selecting **Remove** again in the confirmation dialog. diff --git a/content/manuals/scout/policy/_index.md b/content/manuals/scout/policy/_index.md index 4465ea9f41bd..89d12b7bfeae 100644 --- a/content/manuals/scout/policy/_index.md +++ b/content/manuals/scout/policy/_index.md @@ -120,17 +120,3 @@ attestations at build time: ```console $ docker buildx build --provenance=true -t --push . ``` - -## Policies page in the Dashboard - -> [!IMPORTANT] -> -> The `docker scout policy` command brings policy evaluation directly to your -> CLI so you can evaluate any image locally, in CI, or with custom policies -> without needing the Dashboard. The Policies page in the Dashboard is -> deprecated and will be retired on September 1, 2026. See -> [Evaluate policies](./local.md). - -The Docker Scout Dashboard previously provided a visual interface for tracking -policy compliance across your organization's images. See -[Use the Policies page in the Dashboard](./dashboard.md). diff --git a/content/manuals/scout/policy/dashboard.md b/content/manuals/scout/policy/dashboard.md deleted file mode 100644 index 0426c3a40863..000000000000 --- a/content/manuals/scout/policy/dashboard.md +++ /dev/null @@ -1,233 +0,0 @@ ---- -title: Use the Policies page in the Dashboard -linkTitle: Use the Dashboard -description: View policy status, configure policies, and get remediation advice using the Docker Scout Dashboard -keywords: scout, policy, dashboard, configure, remediation, status -params: - sidebar: - badge: - color: gray - text: Deprecated -aliases: - - /scout/policy/ci/ - - /scout/policy/view/ - - /scout/policy/configure/ - - /scout/policy/remediation/ ---- - -> [!IMPORTANT] -> -> The Policies page is deprecated and will be retired on September 1, 2026. -> The `docker scout policy` command replaces this with more options for -> evaluating policies. You can run evaluations locally, in CI, against custom -> Rego policies, or using OCI bundles. See -> [Evaluate policies](./local.md). - -## View policy status - -The **Overview** tab of the [Docker Scout Dashboard](https://scout.docker.com/) -displays a summary of recent changes in policy for your repositories. -This summary shows images that have seen the most change in their policy -evaluation between the most recent image and the previous image. - -### Policy status per repository - -The **Images** tab shows the current policy status, and recent policy trend, -for all images in the selected environment. The **Policy status** column shows: - -- Number of fulfilled policies versus the total number of policies -- Recent policy trends - -The policy trend, denoted by the directional arrows, indicates whether an image -is better, worse, or unchanged compared to the previous image in the same -environment. - -- The green arrow pointing upwards shows the number of policies that improved. -- The red arrow pointing downwards shows the number of policies that worsened. -- The bidirectional gray arrow shows the number of policies that were unchanged. - -### Detailed results - -To view the full evaluation results for an image, navigate to the image tag in -the Docker Scout Dashboard and open the **Policy** tab. - -For vulnerability-related policies, the details view shows the fix version when -one is available. For licensing-related policies, the list shows all packages -whose license doesn't meet the policy criteria. - -## Configure policies - -Some policy types are configurable. You can create customized versions with -your own parameters, disable a policy, or delete it. - -> [!NOTE] -> Historic evaluation results for the default policy configuration are removed -> if you delete or customize a policy. - -### Add a policy - -1. Go to the [Policies page](https://scout.docker.com/reports/policy) in the Docker Scout Dashboard. -2. Select **Add policy**. -3. Locate the policy type you want to configure and select **Configure**. - - - If **Configure** is grayed out, the policy has no configurable parameters. - - If the button reads **Integrate**, setup is required before the policy can be enabled. - -4. Update the policy parameters. -5. Select **Save policy** to enable, or **Save and disable** to save without enabling. - -### Edit a policy - -1. Go to the [Policies page](https://scout.docker.com/reports/policy). -2. Select the policy and then select **Edit**. -3. Update the parameters and save. - -### Disable a policy - -Disabling a policy hides its results but doesn't delete historic data. - -1. Go to the [Policies page](https://scout.docker.com/reports/policy). -2. Select the policy and then select **Disable**. - -### Delete a policy - -Deleting a policy removes its evaluation results. - -1. Go to the [Policies page](https://scout.docker.com/reports/policy). -2. Select the policy and then select **Delete**. - -To recreate a deleted policy, follow [Add a policy](#add-a-policy) and select -**Configure** on the deleted policy type. - -## Remediation - -Docker Scout provides remediation recommendations based on policy evaluation -results. Recommendations are available for the following policy types: - -- [Up-to-Date Base Images](#up-to-date-base-images) -- [Supply Chain Attestations](#supply-chain-attestations) - -To view recommendations: - -1. Go to the [Policies page](https://scout.docker.com/reports/policy). -2. Select a policy. -3. Hover over an image in the list and select **View fixes**. - -If more than one recommendation is available, the primary recommendation -displays as the **Recommended fix**. Additional recommendations are listed as -**Quick fixes**. - -### Up-to-Date Base Images - -Without provenance attestations, compliance is undeterminable. Add -[provenance attestations](/manuals/build/metadata/attestations/slsa-provenance.md) -so Docker Scout can detect the base image version you're using. - -With provenance attestations, the recommended action shows how to update your -base image to the latest version and pin it to a specific digest. See -[Pin base image versions](/manuals/build/building/best-practices.md#pin-base-image-versions). - -With the GitHub integration enabled, you can raise a pull request directly from -the remediation panel to update the base image version in your Dockerfile. - -### Supply Chain Attestations - -The **Supply Chain Attestations** policy requires SBOM and provenance -attestations. The remediation panel shows what's missing. For example, if your -image has a provenance attestation without enough information, rebuild with -[`mode=max`](/manuals/build/metadata/attestations/slsa-provenance.md#max) provenance. - -## Evaluate policy compliance in CI - -Adding policy evaluation to your CI pipelines helps you detect and prevent -cases where a change would cause policy compliance to worsen compared to your -baseline. - -The recommended strategy involves evaluating a local image and comparing the -results to a baseline using an [environment](../integrations/environment/_index.md). -If policy compliance for the new image is worse than the baseline, the CI run -fails. If compliance is better or unchanged, the run succeeds. - -The following GitHub Actions example uses the [Docker Scout GitHub Action](https://github.com/marketplace/actions/docker-scout) -to compare a pull request image against the `production` environment. The -`exit-on` input is set to `policy`, so the step fails only if policy compliance -has worsened. - -> [!NOTE] -> -> Due to a limitation in Docker Engine, loading multi-platform images or images -> with attestations to the image store isn't supported. Build a single-platform -> image without attestations and load it for the policy evaluation to work. - -```yaml -name: Docker - -on: - push: - tags: ["*"] - branches: - - "main" - pull_request: - branches: ["**"] - -env: - REGISTRY: docker.io - IMAGE_NAME: - DOCKER_ORG: - -jobs: - build: - permissions: - pull-requests: write - - runs-on: ubuntu-latest - steps: - - name: Log into registry ${{ env.REGISTRY }} - uses: docker/login-action@{{% param "login_action_version" %}} - with: - registry: ${{ env.REGISTRY }} - username: ${{ secrets.REGISTRY_USER }} - password: ${{ secrets.REGISTRY_TOKEN }} - - - name: Setup Docker buildx - uses: docker/setup-buildx-action@{{% param "setup_buildx_action_version" %}} - - - name: Extract metadata - id: meta - uses: docker/metadata-action@{{% param "metadata_action_version" %}} - with: - images: ${{ env.IMAGE_NAME }} - - - name: Build image - id: build-and-push - uses: docker/build-push-action@{{% param "build_push_action_version" %}} - with: - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - sbom: ${{ github.event_name != 'pull_request' }} - provenance: ${{ github.event_name != 'pull_request' }} - push: ${{ github.event_name != 'pull_request' }} - load: ${{ github.event_name == 'pull_request' }} - - - name: Authenticate with Docker - uses: docker/login-action@{{% param "login_action_version" %}} - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_PAT }} - - - name: Compare - if: ${{ github.event_name == 'pull_request' }} - uses: docker/scout-action@v1 - with: - command: compare - image: ${{ steps.meta.outputs.tags }} - to-env: production - platform: "linux/amd64" - ignore-unchanged: true - only-severities: critical,high - organization: ${{ env.DOCKER_ORG }} - exit-on: policy -``` - -For other CI platforms, see -[Docker Scout CI integrations](../integrations/_index.md#continuous-integration). diff --git a/content/manuals/scout/policy/local.md b/content/manuals/scout/policy/local.md index 1a14ab68a480..a809b41aa805 100644 --- a/content/manuals/scout/policy/local.md +++ b/content/manuals/scout/policy/local.md @@ -2,6 +2,12 @@ title: Evaluate policies description: Evaluate Docker Scout policies using the CLI, with built-in and custom Rego policies keywords: scout, policy, rego, opa, cli, custom policies, policy bundle +aliases: + - /scout/policy/dashboard/ + - /scout/policy/ci/ + - /scout/policy/view/ + - /scout/policy/configure/ + - /scout/policy/remediation/ --- {{< summary-bar feature_name="Evaluate policies" >}} @@ -27,21 +33,7 @@ Policies come from three sources, which can be combined: - Local `.rego` files: for authoring and iterating on custom policies with `--policy-file` or `--policy-dir`. -## Migrate from Policy Evaluation in the Dashboard - -If you used the Policies page in the Docker Scout Dashboard, `docker scout -policy` provides the same capability from the CLI. The built-in policies are -the same set. To evaluate an image: - -```console -$ docker scout policy -``` - -If you had customized policies in the dashboard, such as adjusted severity -thresholds or disabled policies, you can replicate those settings with a -`--policy-config` file. See [Configure built-in policies](#configure-built-in-policies). - -### Use in CI +## Use in CI Use the [Docker Scout GitHub Action](https://github.com/marketplace/actions/docker-scout) to evaluate policies as part of your workflow: @@ -59,15 +51,11 @@ For other CI platforms, install the [Docker Scout CLI plugin](/manuals/scout/install.md) on your runner and run `docker scout policy --exit-code`. -### Migrate the GitHub Action from dashboard-based policy evaluation - -The Docker Scout GitHub Action now supports the same local policy configuration -flags as `docker scout policy`. If you used `compare --exit-on policy` with -dashboard-managed policy settings, replicate those settings locally with -`--policy-config`: +To gate a build on policy compliance compared to an environment, use the +`compare` command with a policy configuration: ```yaml -- uses: docker/scout-action@v1.23.0 +- uses: docker/scout-action@v1 with: command: compare image: ${{ env.IMAGE_NAME }} diff --git a/content/manuals/scout/release-notes/platform.md b/content/manuals/scout/release-notes/platform.md index e2d9e856b5b4..97d4b4578bdd 100644 --- a/content/manuals/scout/release-notes/platform.md +++ b/content/manuals/scout/release-notes/platform.md @@ -17,6 +17,32 @@ Docker Scout platform, including the Dashboard. For CLI release notes, refer to ## Q2 2026 +### 2026-09-01 + +The following Docker Scout features were retired: + +- Notifications: In-product and email notifications about newly disclosed CVEs. + Integrate `docker scout cves` or `docker scout policy` into your CI pipeline + to surface vulnerability and policy results without push notifications. +- Native Amazon ECR integration: ECR is still supported using + [`docker scout watch`](../integrations/registry/watch.md) for continuous + polling, or by integrating Scout into your CI pipeline. +- Native Azure Container Registry integration: ACR is still supported using + the same options as ECR. +- Policies page in the Dashboard: The `docker scout policy` + command replaces this with more options for evaluating policies. You can run + evaluations locally, in CI, against custom Rego policies, or using OCI + bundles. See [Evaluate policies](../policy/local.md). +- SonarQube integration. + +### 2026-07-30 + +The following Docker Scout feature was retired: + +- Slack integration: Integrate `docker scout cves` or `docker scout policy` + into your CI pipeline to surface vulnerability and policy results without + push notifications. + ### 2026-07-01 The following Docker Scout features were retired: @@ -31,32 +57,23 @@ The following Docker Scout features were retired: - GitHub source code management integration: Migrate to GitHub Dependabot for base-image updates and build with `--provenance=mode=max` for image-to-source linkage. See - [GitHub integration](../integrations/source-code-management/github.md) + [Deprecated and retired products](/manuals/retired.md#docker-scout-features) for a migration guide. The following is deprecated and will be retired on July 30, 2026: - Slack integration: Vulnerability and policy compliance notifications to Slack - channels. Integrate `docker scout cves` or `docker scout policy` into your CI - pipeline as an alternative. See - [Slack integration](../integrations/team-collaboration/slack.md). + channels. The following are deprecated and will be retired on September 1, 2026: - Notifications: In-product and email notifications about newly disclosed CVEs. - Integrate `docker scout cves` or `docker scout policy` into your CI pipeline - to surface vulnerability and policy results without push notifications. - -- Amazon ECR integration: Migrate to - [`docker scout watch`](/reference/cli/docker/scout/watch/) for continuous - polling or integrate Scout into your CI pipeline. See - [ECR integration](../integrations/registry/ecr.md) for a migration guide. -- Azure Container Registry integration: Same migration options as ECR. See - [ACR integration](../integrations/registry/acr.md) for a migration guide. -- Policies page in the Dashboard: The `docker scout policy` - command replaces this with more options for evaluating policies. You can run - evaluations locally, in CI, against custom Rego policies, or using OCI - bundles. See [Evaluate policies](../policy/local.md). +- Amazon ECR integration: Automatically analyzed images pushed to ECR + registries. +- Azure Container Registry integration: Automatically analyzed images pushed + to ACR registries. +- Policies page in the Dashboard: Provided a visual interface in the Docker + Scout Dashboard for tracking policy compliance. - SonarQube integration. ## Q4 2024 @@ -179,7 +196,7 @@ making the now-removed **All critical vulnerabilities** policy redundant. [General Availability](../../release-lifecycle.md#general-availability-ga). For more information and setup instructions, see -[Integrate Azure Container Registry](../integrations/registry/acr.md). +Integrate Azure Container Registry. ### 2024-01-23 @@ -212,11 +229,10 @@ more precise recommendations. For more information about the types of recommendations that Docker Scout can provide to help you improve policy compliance, see -[Use the Dashboard](../policy/dashboard.md). +Use the Dashboard. For more information about how to authorize the Docker Scout GitHub app on your -source repositories, see -[Integrate Docker Scout with GitHub](../integrations/source-code-management/github.md). +source repositories, see Integrate Docker Scout with GitHub. ## Q4 2023 @@ -229,7 +245,7 @@ New features and enhancements released in the fourth quarter of 2023. [Early Access](../../release-lifecycle.md#early-access-ea). For more information and setup instructions, see -[Integrate Azure Container Registry](../integrations/registry/acr.md). +Integrate Azure Container Registry. ### 2023-12-06 @@ -247,7 +263,7 @@ Registry** (ACR) integration, which lets Docker Scout pull and analyze images in ACR repositories automatically. To learn more about the integration and how to get started, see -[Integrate Azure Container Registry](../integrations/registry/acr.md). +Integrate Azure Container Registry. ### 2023-11-21 @@ -260,7 +276,7 @@ policies for your organization include: - Customize the list of "high-profile vulnerabilities" - Add or remove software licenses to flag as "copyleft" -For more information, see [Configurable policies](../policy/dashboard.md). +For more information, see Configurable policies. ### 2023-11-10 @@ -320,8 +336,8 @@ metadata about the image contents, and not the container images themselves. The integration offers a straightforward process for adding additional repositories, activating Docker Scout for specific repositories, and removing -the integration if needed. To learn more, refer to the [Amazon ECR integration -documentation](../integrations/registry/ecr.md). +the integration if needed. To learn more, refer to the Amazon ECR integration +documentation. #### Sysdig integration diff --git a/data/redirects.yml b/data/redirects.yml index fb10cc31be83..1c0298e32a77 100644 --- a/data/redirects.yml +++ b/data/redirects.yml @@ -154,8 +154,9 @@ - /go/scout-policy-dsp006/ "/scout/policy/#approved-base-images": - /go/scout-policy-dsp007/ -"/scout/policy/#sonarqube-quality-gates": +"/retired/#docker-scout-features": - /go/scout-policy-dsp008/ + - "/go/scout-github/" "/scout/policy/configure/": - /go/scout-configure-policy/ "/build/building/best-practices/#pin-base-image-versions": @@ -173,7 +174,7 @@ - "/go/scout-circle-ci/" "/scout/integrations/ci/jenkins/": - "/go/scout-jenkins/" -"/scout/integrations/registry/artifactory": +"/scout/integrations/registry/watch/": - /go/scout-artifactory/ "/scout/integrations/registry/ecr/": - "/go/scout-ecr/" @@ -185,8 +186,6 @@ - "/go/scout-acr/" "/scout/integrations/code-quality/sonarqube/": - "/go/scout-sq/" -"/scout/integrations/source-code-management/github/": - - "/go/scout-github/" "/scout/guides/vex/": - "/go/vex-guide/" "/scout/explore/metrics-exporter/": From b1e66bd77c4ada0fd3d260fc98c22e5786585bae Mon Sep 17 00:00:00 2001 From: Craig Osterhout Date: Fri, 28 Aug 2026 11:48:53 -0700 Subject: [PATCH 2/3] remove unused media Signed-off-by: Craig Osterhout --- content/manuals/scout/images/Scout-ECR.png | Bin 238768 -> 0 bytes .../scout/images/scout-slack-notification.png | Bin 11975 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 content/manuals/scout/images/Scout-ECR.png delete mode 100644 content/manuals/scout/images/scout-slack-notification.png diff --git a/content/manuals/scout/images/Scout-ECR.png b/content/manuals/scout/images/Scout-ECR.png deleted file mode 100644 index 70b1fb178107622f7c6c881e929b166481676488..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238768 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⊇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 Date: Fri, 28 Aug 2026 12:02:23 -0700 Subject: [PATCH 3/3] clean up nav Signed-off-by: Craig Osterhout --- content/manuals/retired.md | 4 +- content/manuals/scout/integrations/_index.md | 2 +- .../scout/integrations/registry/_index.md | 192 +++++++++++++++++- .../scout/integrations/registry/watch.md | 191 ----------------- .../manuals/scout/release-notes/platform.md | 2 +- data/redirects.yml | 2 +- 6 files changed, 194 insertions(+), 199 deletions(-) delete mode 100644 content/manuals/scout/integrations/registry/watch.md diff --git a/content/manuals/retired.md b/content/manuals/retired.md index 959c7b23d6e1..e08227aaa2eb 100644 --- a/content/manuals/retired.md +++ b/content/manuals/retired.md @@ -178,11 +178,11 @@ details, see the [Scout platform release notes](/manuals/scout/release-notes/pla - Native Amazon ECR integration: automatically analyzed images pushed to ECR registries using a CloudFormation stack. Retired September 1, 2026. Docker Scout still supports ECR through - [`docker scout watch`](/manuals/scout/integrations/registry/watch.md). + [`docker scout watch`](/manuals/scout/integrations/registry/_index.md). - Native Azure Container Registry integration: automatically analyzed images pushed to ACR registries using an ARM template. Retired September 1, 2026. Docker Scout still supports ACR through - [`docker scout watch`](/manuals/scout/integrations/registry/watch.md). + [`docker scout watch`](/manuals/scout/integrations/registry/_index.md). - Policies page in the Dashboard: the `docker scout policy` CLI continues to work. Retired September 1, 2026. See [Evaluate policies](/manuals/scout/policy/local.md). diff --git a/content/manuals/scout/integrations/_index.md b/content/manuals/scout/integrations/_index.md index ca71ef14e135..c884a345809a 100644 --- a/content/manuals/scout/integrations/_index.md +++ b/content/manuals/scout/integrations/_index.md @@ -24,7 +24,7 @@ so that you can get insights into the composition of those images even if they aren't hosted on Docker Hub. Docker Scout integrates with any Docker/OCI-compliant registry using -[`docker scout watch`](./registry/watch.md), including Amazon ECR, Azure +[`docker scout watch`](./registry/_index.md), including Amazon ECR, Azure Container Registry, JFrog Artifactory, Harbor, and Sonatype Nexus. ### Continuous Integration diff --git a/content/manuals/scout/integrations/registry/_index.md b/content/manuals/scout/integrations/registry/_index.md index 87f014cb712b..7c09f767e9cd 100644 --- a/content/manuals/scout/integrations/registry/_index.md +++ b/content/manuals/scout/integrations/registry/_index.md @@ -1,5 +1,191 @@ --- -build: - render: never -title: Container registries +title: Integrate Docker Scout with a container registry +linkTitle: Container registries +description: Integrate Docker Scout with any container registry using the docker scout watch CLI command +keywords: docker scout, registry, integration, image analysis, security, cves, watch, ecr, acr, artifactory, harbor, nexus +aliases: + - /scout/integrations/registry/artifactory/ + - /scout/artifactory/ + - /scout/integrations/registry/ecr/ + - /scout/integrations/registry/acr/ --- + +[`docker scout watch`](/reference/cli/docker/scout/watch/) is a long-running +CLI process that indexes images from a container registry and pushes the +results to Docker Scout. It works with any Docker/OCI-compliant registry, +including Amazon ECR, Azure Container Registry, JFrog Artifactory, Harbor, and +Sonatype Nexus. + +## How it works + +You run `docker scout watch` on a host you control. The process can: + +- Watch specific repositories or an entire registry +- Optionally ingest all existing images once, using `--all-images` +- Periodically refresh repository lists, using `--refresh-registry` +- Receive webhook callbacks from registries that support them, for + near-real-time analysis instead of polling + +After the integration, Docker Scout automatically pulls and analyzes images +that you push to the registry. Metadata about your images are stored on the +Docker Scout platform, but Docker Scout doesn't store the container images +themselves. For more information about how Docker Scout handles image data, +see [Data handling](/manuals/scout/deep-dive/data-handling.md). + +## Set up `docker scout watch` + +1. Pick a host on which to run `docker scout watch`. + + The host must have network access to your registry and be able to access + the Scout API (`https://api.scout.docker.com`) over the internet. If + you're using webhook callbacks, the registry must also be able to reach the + `docker scout watch` host on the configured port. + +2. Ensure you are running the latest version of Scout. + + ```console + $ docker scout version + ``` + + If necessary, [install the latest version of Scout](/manuals/scout/install.md). + +3. Authenticate Docker to your registry. + + ```console + $ docker login --username --password + ``` + + For Amazon ECR, authenticate using the AWS CLI instead: + + ```console + $ aws ecr get-login-password --region | \ + docker login --username AWS --password-stdin \ + .dkr.ecr..amazonaws.com + ``` + + The AWS identity used must have at least `ecr:GetAuthorizationToken` and + `ecr:BatchGetImage` permissions on the target registry. + + For Azure Container Registry: + + ```console + $ docker login .azurecr.io \ + --username \ + --password + ``` + + > [!TIP] + > + > As a best practice, use a dedicated user or token with read-only access + > to the registry. + +4. Set up your Scout credentials. + + 1. Generate an organization access token. For more details, see + [Create an organization access token](/enterprise/security/access-tokens/#create-an-organization-access-token). + 2. Sign in to Docker using the organization access token. + + ```console + $ docker login --username + ``` + + When prompted for a password, paste the organization access token. + + 3. Connect your local Docker environment to your organization's Docker Scout service. + + ```console + $ docker scout enroll + ``` + +5. Index existing images. You only need to do this once. + + ```console + $ docker scout watch --registry --all-images + ``` + +6. Confirm the images have been indexed by viewing them on the + [Scout Dashboard](https://scout.docker.com/). + +7. Continuously watch for new images. + + ```console + $ docker scout watch --registry --refresh-registry + ``` + + `docker scout watch` is a long-running process. Run it as a system + service, for example using `systemd` or `nohup`, to ensure it continues + running in the background. Use `--interval` (default 60 seconds) to + control polling frequency, and `--repository` and `--tag` to narrow scope. + +Reference: [`docker scout watch`](/reference/cli/docker/scout/watch/) + +## Registry-specific options + +Some registries need extra configuration beyond a hostname, passed through +the `--registry` flag as a `key=value` string, for example a REST API +endpoint for webhook callbacks, or a non-standard repository layout. Built-in +adapters exist for `type=artifactory`, `type=harbor`, and `type=nexus`, and a +`type=oci` adapter covers any OCI-compliant registry that implements the +`_catalog` endpoint. For the full option reference for each type, see +[`docker scout watch`](/reference/cli/docker/scout/watch/). + +The following example walks through the `type=artifactory` adapter in detail. +See the CLI reference for equivalent Harbor, Nexus, and generic OCI examples. + +### Example: JFrog Artifactory + +These `type=artifactory` options override the generic registry handling for +the `--registry` option: + +| Key | Required | Description | +|------------------|:--------:|----------------------------------------------------------------------------------------| +| `type` | Yes | Must be `artifactory`. | +| `registry` | Yes | Docker/OCI registry hostname (e.g., `example.jfrog.io`). | +| `api` | Yes | Artifactory REST API base URL (e.g., `https://example.jfrog.io/artifactory`). | +| `repository` | Yes | Repository to watch (replaces `--repository`). | +| `includes` | No | Globs to include (e.g., `*/frontend*`). | +| `excludes` | No | Globs to exclude (e.g., `*/legacy/*`). | +| `port` | No | Local port to listen on for webhook callbacks. | +| `subdomain-mode` | No | `true` or `false`; matches Artifactory's Docker layout (subdomain versus repository-path). | + +Set up credentials for the Scout client to authenticate with Artifactory, and +a secret for Artifactory to authenticate its webhook callbacks: + +```console +$ export DOCKER_SCOUT_ARTIFACTORY_API_USER= +$ export DOCKER_SCOUT_ARTIFACTORY_API_PASSWORD= +$ export DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET= +``` + +> [!TIP] +> +> As a best practice, create a dedicated user with read-only access and use an +> access token instead of a password. Generate the webhook secret as a +> high-entropy random string of 64-128 characters. + +Index existing images with the Artifactory-specific registry string: + +```console +$ docker scout watch --registry \ + "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ + --all-images +``` + +Then configure Artifactory to call the webhook: in your Artifactory UI or via +REST API, set up a webhook for image push/update events, pointing to your +`docker scout watch` host and port, and include the +`DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET` for authentication. For more +information, see the [JFrog Artifactory Webhooks +documentation](https://jfrog.com/help/r/jfrog-platform-administration-documentation/webhooks) +or the [JFrog Artifactory REST API Webhooks +documentation](https://jfrog.com/help/r/jfrog-rest-apis/webhooks). + +Finally, run the same command with `--refresh-registry` instead of +`--all-images` as your long-running watch process, so new images are picked up +going forward: + +```console +$ docker scout watch --registry \ + "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ + --refresh-registry +``` diff --git a/content/manuals/scout/integrations/registry/watch.md b/content/manuals/scout/integrations/registry/watch.md deleted file mode 100644 index ccf6aae6fa38..000000000000 --- a/content/manuals/scout/integrations/registry/watch.md +++ /dev/null @@ -1,191 +0,0 @@ ---- -title: Integrate Docker Scout with a container registry -linkTitle: Watch a registry -description: Integrate Docker Scout with any container registry using the docker scout watch CLI command -keywords: docker scout, registry, integration, image analysis, security, cves, watch, ecr, acr, artifactory, harbor, nexus -aliases: - - /scout/integrations/registry/artifactory/ - - /scout/artifactory/ - - /scout/integrations/registry/ecr/ - - /scout/integrations/registry/acr/ ---- - -[`docker scout watch`](/reference/cli/docker/scout/watch/) is a long-running -CLI process that indexes images from a container registry and pushes the -results to Docker Scout. It works with any Docker/OCI-compliant registry, -including Amazon ECR, Azure Container Registry, JFrog Artifactory, Harbor, and -Sonatype Nexus. - -## How it works - -You run `docker scout watch` on a host you control. The process can: - -- Watch specific repositories or an entire registry -- Optionally ingest all existing images once, using `--all-images` -- Periodically refresh repository lists, using `--refresh-registry` -- Receive webhook callbacks from registries that support them, for - near-real-time analysis instead of polling - -After the integration, Docker Scout automatically pulls and analyzes images -that you push to the registry. Metadata about your images are stored on the -Docker Scout platform, but Docker Scout doesn't store the container images -themselves. For more information about how Docker Scout handles image data, -see [Data handling](/manuals/scout/deep-dive/data-handling.md). - -## Set up `docker scout watch` - -1. Pick a host on which to run `docker scout watch`. - - The host must have network access to your registry and be able to access - the Scout API (`https://api.scout.docker.com`) over the internet. If - you're using webhook callbacks, the registry must also be able to reach the - `docker scout watch` host on the configured port. - -2. Ensure you are running the latest version of Scout. - - ```console - $ docker scout version - ``` - - If necessary, [install the latest version of Scout](/manuals/scout/install.md). - -3. Authenticate Docker to your registry. - - ```console - $ docker login --username --password - ``` - - For Amazon ECR, authenticate using the AWS CLI instead: - - ```console - $ aws ecr get-login-password --region | \ - docker login --username AWS --password-stdin \ - .dkr.ecr..amazonaws.com - ``` - - The AWS identity used must have at least `ecr:GetAuthorizationToken` and - `ecr:BatchGetImage` permissions on the target registry. - - For Azure Container Registry: - - ```console - $ docker login .azurecr.io \ - --username \ - --password - ``` - - > [!TIP] - > - > As a best practice, use a dedicated user or token with read-only access - > to the registry. - -4. Set up your Scout credentials. - - 1. Generate an organization access token. For more details, see - [Create an organization access token](/enterprise/security/access-tokens/#create-an-organization-access-token). - 2. Sign in to Docker using the organization access token. - - ```console - $ docker login --username - ``` - - When prompted for a password, paste the organization access token. - - 3. Connect your local Docker environment to your organization's Docker Scout service. - - ```console - $ docker scout enroll - ``` - -5. Index existing images. You only need to do this once. - - ```console - $ docker scout watch --registry --all-images - ``` - -6. Confirm the images have been indexed by viewing them on the - [Scout Dashboard](https://scout.docker.com/). - -7. Continuously watch for new images. - - ```console - $ docker scout watch --registry --refresh-registry - ``` - - `docker scout watch` is a long-running process. Run it as a system - service, for example using `systemd` or `nohup`, to ensure it continues - running in the background. Use `--interval` (default 60 seconds) to - control polling frequency, and `--repository` and `--tag` to narrow scope. - -Reference: [`docker scout watch`](/reference/cli/docker/scout/watch/) - -## Registry-specific options - -Some registries need extra configuration beyond a hostname, passed through -the `--registry` flag as a `key=value` string, for example a REST API -endpoint for webhook callbacks, or a non-standard repository layout. Built-in -adapters exist for `type=artifactory`, `type=harbor`, and `type=nexus`, and a -`type=oci` adapter covers any OCI-compliant registry that implements the -`_catalog` endpoint. For the full option reference for each type, see -[`docker scout watch`](/reference/cli/docker/scout/watch/). - -The following example walks through the `type=artifactory` adapter in detail. -See the CLI reference for equivalent Harbor, Nexus, and generic OCI examples. - -### Example: JFrog Artifactory - -These `type=artifactory` options override the generic registry handling for -the `--registry` option: - -| Key | Required | Description | -|------------------|:--------:|----------------------------------------------------------------------------------------| -| `type` | Yes | Must be `artifactory`. | -| `registry` | Yes | Docker/OCI registry hostname (e.g., `example.jfrog.io`). | -| `api` | Yes | Artifactory REST API base URL (e.g., `https://example.jfrog.io/artifactory`). | -| `repository` | Yes | Repository to watch (replaces `--repository`). | -| `includes` | No | Globs to include (e.g., `*/frontend*`). | -| `excludes` | No | Globs to exclude (e.g., `*/legacy/*`). | -| `port` | No | Local port to listen on for webhook callbacks. | -| `subdomain-mode` | No | `true` or `false`; matches Artifactory's Docker layout (subdomain versus repository-path). | - -Set up credentials for the Scout client to authenticate with Artifactory, and -a secret for Artifactory to authenticate its webhook callbacks: - -```console -$ export DOCKER_SCOUT_ARTIFACTORY_API_USER= -$ export DOCKER_SCOUT_ARTIFACTORY_API_PASSWORD= -$ export DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET= -``` - -> [!TIP] -> -> As a best practice, create a dedicated user with read-only access and use an -> access token instead of a password. Generate the webhook secret as a -> high-entropy random string of 64-128 characters. - -Index existing images with the Artifactory-specific registry string: - -```console -$ docker scout watch --registry \ - "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ - --all-images -``` - -Then configure Artifactory to call the webhook: in your Artifactory UI or via -REST API, set up a webhook for image push/update events, pointing to your -`docker scout watch` host and port, and include the -`DOCKER_SCOUT_ARTIFACTORY_WEBHOOK_SECRET` for authentication. For more -information, see the [JFrog Artifactory Webhooks -documentation](https://jfrog.com/help/r/jfrog-platform-administration-documentation/webhooks) -or the [JFrog Artifactory REST API Webhooks -documentation](https://jfrog.com/help/r/jfrog-rest-apis/webhooks). - -Finally, run the same command with `--refresh-registry` instead of -`--all-images` as your long-running watch process, so new images are picked up -going forward: - -```console -$ docker scout watch --registry \ - "type=artifactory,registry=example.jfrog.io,api=https://example.jfrog.io/artifactory,include=*/frontend*,exclude=*/dta/*,repository=docker-local,port=9000,subdomain-mode=true" \ - --refresh-registry -``` diff --git a/content/manuals/scout/release-notes/platform.md b/content/manuals/scout/release-notes/platform.md index 97d4b4578bdd..be912789083a 100644 --- a/content/manuals/scout/release-notes/platform.md +++ b/content/manuals/scout/release-notes/platform.md @@ -25,7 +25,7 @@ The following Docker Scout features were retired: Integrate `docker scout cves` or `docker scout policy` into your CI pipeline to surface vulnerability and policy results without push notifications. - Native Amazon ECR integration: ECR is still supported using - [`docker scout watch`](../integrations/registry/watch.md) for continuous + [`docker scout watch`](../integrations/registry/_index.md) for continuous polling, or by integrating Scout into your CI pipeline. - Native Azure Container Registry integration: ACR is still supported using the same options as ECR. diff --git a/data/redirects.yml b/data/redirects.yml index 1c0298e32a77..1e6400a11b02 100644 --- a/data/redirects.yml +++ b/data/redirects.yml @@ -174,7 +174,7 @@ - "/go/scout-circle-ci/" "/scout/integrations/ci/jenkins/": - "/go/scout-jenkins/" -"/scout/integrations/registry/watch/": +"/scout/integrations/registry/": - /go/scout-artifactory/ "/scout/integrations/registry/ecr/": - "/go/scout-ecr/"