67225 Commits

Author SHA1 Message Date
Alexa Kristensen 913bca12d9 Gordon plan add ons (#25099)
Billing workflow and details for Gordon plan subscription layer. As a
fast follow, a PR that links between Gordon usage docs and billing docs
will be added. This is an interim update until subscription section
overhaul is underway, where Gordon + DHI Select will have their own docs
pages
2026-06-03 16:11:35 -05:00
Paweł Gronowski 6c4cbff74d Merge pull request #25256 from vvoland/update-docker
engine: 29.5.3
2026-06-03 20:49:03 +02:00
Alexandre Vallières-Lagacé 2a22bb3823 Merge pull request #25255 from docker/sec-cli/dependabot-cooldown-20260603-170529
ci: add Dependabot cooldown (20260603-170529)
2026-06-03 13:50:57 -04:00
Paweł Gronowski 3193cdd65b engine: 29.5.3
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2026-06-03 19:39:24 +02:00
securityeng-bot[bot] 90154bf4db ci: add Dependabot cooldown 2026-06-03 17:05:32 +00:00
David Karlsson 7f20a8bc75 Merge pull request #25136 from lacatoire/docs/25015-modelrunner-dup-step
docs: remove duplicate step in Model Runner GitHub Actions example
2026-06-03 15:37:22 +02:00
David Karlsson ab7a59b014 docs: fix truncated DOCKER_ACCOUNT variable in Circle CI example
The Circle CI build_push and build_cache jobs in the Build Cloud CI
docs used a truncated $DOCKER_ variable in the docker login command,
which expands to empty and breaks authentication. Use $DOCKER_ACCOUNT
to match the rest of the file.

Fixes #25214

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 15:34:05 +02:00
David Karlsson b896c6e192 Merge pull request #25109 from bhavyarajwanshi/fix-scout-jenkins-comment
docs: fix Jenkins example comment and syntax in Scout environment guide
2026-06-03 15:33:13 +02:00
David Karlsson 35007d1148 Merge pull request #25134 from lacatoire/docs/25073-overlay-duplicate-ports
docs: remove duplicate overlay network port requirements
2026-06-03 15:26:39 +02:00
David Karlsson 0c4dddca84 Merge pull request #25135 from lacatoire/docs/25081-ci-tag-branch-logic
docs: fix tag/branch logic in Circle CI and GitLab environment examples
2026-06-03 15:25:30 +02:00
David Karlsson e06aa17218 Merge pull request #25241 from dvdksn/worktree-buildkit-cni-bridge
build: document built-in CNI bridge networking for BuildKit
2026-06-03 14:32:51 +02:00
David Karlsson 9ac9c0cd36 Merge pull request #25175 from joe0BAB/feat/pass-v2
feat(docker-pass): update docs
2026-06-03 12:41:47 +02:00
Johannes Großmann f47ca30b56 feat(docker-pass): update docs 2026-06-03 12:13:36 +02:00
Allie Sadler 485567d991 4.76 update (#25252)
<!--Delete sections as needed -->

## Description

Add cherry-picked item

## Related issues or tickets

<!-- Related issues, pull requests, or Jira tickets -->

## Reviews

<!-- Notes for reviewers here -->
<!-- List applicable reviews (optionally @tag reviewers) -->

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review
2026-06-03 11:12:18 +01:00
David Karlsson ffd1e8855e Merge pull request #25238 from dvdksn/worktree-sbx-wsl-clone-troubleshooting
Document WSL --clone safe.directory workaround for sandboxes
2026-06-03 10:17:58 +02:00
David Karlsson 11be196415 docs: document WSL --clone safe.directory workaround
Clone mode fails on \\wsl.localhost\... paths because Git's dubious
ownership check makes sbx's repo detection fail. Add a troubleshooting
section with the safe.directory workaround.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 09:38:31 +02:00
Craig Osterhout 2d10744a5d dhi: remove new label (#25246)
<!--Delete sections as needed -->

## Description

Removed DHI new label. The product is over 1 year old now.

## Related issues or tickets

<!-- Related issues, pull requests, or Jira tickets -->

## Reviews

<!-- Notes for reviewers here -->
<!-- List applicable reviews (optionally @tag reviewers) -->

- [ ] Editorial review

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-06-03 07:59:22 +01:00
David Karlsson abdfb25695 Merge pull request #25248 from dvdksn/worktree-fix-ai-governance-link
Fix broken AI governance link on manage-licenses page
2026-06-03 08:36:01 +02:00
David Karlsson bd360a44a0 Fix broken AI governance link on manage-licenses page
The AI governance docs moved from /ai/sandboxes/security/governance/ to
/ai/sandboxes/governance/. Update the reference on the manage-licenses
page to point at the new org policy page.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 08:27:40 +02:00
David Karlsson ff616c4345 Merge pull request #25242 from dvdksn/worktree-sbx-template-save-secrets-warning
sbx: warn that saving a template embeds filesystem secrets
2026-06-03 08:10:52 +02:00
David Karlsson e80099f5bc Fix PR-review bot false positives (80-char rule, enable/disable) (#25237)
## Summary

An audit of docker-agent review comments across recent merged PRs
surfaced two
recurring false positives, both traced to their source:

- The bot's prompt (`.github/workflows/pr-review.yml`) instructed it to
flag
lines over 80 characters, but no such rule exists — markdownlint MD013
is
  disabled and STYLE.md never mentions it. The bot itself conceded this
  mid-review on a past PR. Removed the instruction.
- STYLE.md's word list banned "enable" yet used it in a  example, so
the bot
flagged every "enable"/"disable" as a violation. Added a note clarifying
that
"turn on/off" is for UI toggles while "enable/disable" is fine in
general
  prose.

## Learnings

- The docker-agent PR reviewer is driven by the `additional-prompt`
block in
  `.github/workflows/pr-review.yml` (via `docker/cagent-action`), plus
`STYLE.md` and `COMPONENTS.md` loaded as prompt files. That prompt — not
just
the style guides — is the source of truth for what the bot flags, so
review
  noise can be tuned there directly.

Generated by Claude Code

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 08:10:35 +02:00
David Karlsson 4e1cedac16 Merge pull request #25235 from dvdksn/worktree-remove-api-header
Remove redundant header from API reference pages
2026-06-03 08:09:57 +02:00
David Karlsson 76f5345a49 Merge pull request #25233 from dvdksn/worktree-issue-25093-storage-drivers-note
Clarify that storage drivers page covers classic drivers
2026-06-03 08:09:37 +02:00
David Karlsson d9bf784d7a Merge pull request #25231 from dvdksn/sbx-kit-org-policy-precedence
sbx: note that org policy overrides kit network rules
2026-06-03 08:09:17 +02:00
David Karlsson 5c82980dd3 sbx: document virtiofs caching opt-in for slow filesystem operations (#25226)
## Summary

Adds a troubleshooting entry explaining why filesystem operations (e.g.
`git status`) can be slow in direct-mode workspaces, and documents the
`DOCKER_SANDBOXES_ENABLE_VIRTIOFS_CACHE=1` opt-in to enable virtiofs
caching.

Generated by Claude Code

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-03 08:08:48 +02:00
David Karlsson 91cd58d07c Merge pull request #25223 from dvdksn/worktree-hidden-leaping-pascal
sandboxes/get-started: replace branch mode with clone mode
2026-06-03 08:08:23 +02:00
Alexa Kristensen e1781eaec5 licenses (#25181)
Draft PR for AI Gov MVP, with guidance around purchasing / what gets
billed when purchasing AI Gov.

---------

Co-authored-by: Greg Mondello <72952982+gmondello@users.noreply.github.com>
Co-authored-by: Oleg Burov <ob1dev@icloud.com>
2026-06-02 14:00:17 -05:00
Santhosh Reddy Vootukuri e6c33189a9 docs(dhi): add .NET and Java migration examples (#25201)
This PR adds two new migration example guides under
`content/manuals/dhi/migration/examples/` for migrating applications to
Docker Hardened Images (DHI):

- **.NET** (`dotnet.md`)
- **Java** (`java.md`)

Both guides follow the exact same structure as the existing Go, Python,
and Node.js examples, with five Dockerfile variations each:

- Before (Ubuntu)
- Before (Wolfi)
- Before (DOI)
- After (multi-stage) — recommended
- After (single-stage)

The .NET guide uses `dhi.io/dotnet-sdk` for build and
`dhi.io/dotnet-aspnet` for runtime. The Java guide uses `dhi.io/maven`
for build and `dhi.io/eclipse-temurin` for runtime.

The `_index.md` grid is updated to surface both new examples on the
Migration examples landing page.

### Checklist
- [x] Followed the existing format and front-matter conventions
- [x] Used DHI images available in the public DHI catalog
(`dhi.io/dotnet-sdk`, `dhi.io/dotnet-aspnet`, `dhi.io/maven`,
`dhi.io/eclipse-temurin`)
- [x] Updated the examples landing page (`_index.md`)

---------

Co-authored-by: sunnynagavo <sunnynagavo@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Santhosh Reddy Vootukuri (SUNNY) <nagavo@microsoft.com>
Co-authored-by: Craig Osterhout <craig.osterhout@docker.com>
2026-06-02 10:57:11 -07:00
Jasdeep Singh Bhalla e739137606 docs: complete incomplete verification step in push.md (#25029)
## Description

Step 3 of the push guide listed "Verify the image on Docker Hub" with no
instructions, leaving the workflow incomplete. Added a short prose
explanation directing users to navigate to their repository's **Tags**
tab on Docker Hub to confirm the push succeeded.

## Related issues or tickets

Closes #25004

## Reviews

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review
2026-06-02 08:45:54 -07:00
Mathieu Champlon 6886956cdf Add CVE-2026-8936 security note to Desktop release notes (#25243)
Adds a Security section to the Docker Desktop release notes documenting
CVE-2026-8936, a VM panic caused by unbounded recursion in the
`grpcfuse` kernel module.
2026-06-02 16:33:39 +01:00
David Karlsson 69ce9ba0c1 sbx: fix ai governance api auth endpoint (#25244)
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-06-02 17:23:59 +02:00
David Karlsson 2fe4b84081 sbx: fix ai governance api auth endpoint
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-06-02 17:17:27 +02:00
David Karlsson 5a45672e04 build: document built-in CNI bridge networking for BuildKit
The CNI networking section claimed CNI was "not yet" available in the
default BuildKit image. A built-in bridge network provider with bundled
CNI plugins has shipped since BuildKit v0.13.0 (moby/buildkit#4352), so
the claim is outdated.

Document the bridge mode (--oci-worker-net=bridge) that needs no custom
image, and keep the custom-image path under a "Custom CNI configuration"
subheading. Follow-up to moby/buildkit#6817.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 16:39:53 +02:00
David Karlsson e15c49b76b sbx: warn that saving a template embeds filesystem secrets
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 16:38:56 +02:00
David Karlsson 0e54dc9c05 ci: scope labeler concurrency group to the PR (#25236)
## Problem

The labeler workflow has been silently skipping labels on some PRs. The
runs show up as `cancelled` rather than `success`.

Root cause is the concurrency config:

```yaml
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
```

The workflow triggers on `pull_request_target`, and for that event
`github.ref` resolves to the **base branch** (`refs/heads/main`), not
the PR head ref. So every labeler run across **all** open PRs lands in
the same concurrency group (`labeler-refs/heads/main`), and
`cancel-in-progress: true` kills whichever run is in flight as soon as
another PR triggers the workflow.

When several PRs are created or updated within seconds of each other,
the earlier runs get cancelled before they finish labeling. Example from
recent runs:

- `sbx-policy-recipes` (cancelled) ← cancelled by `remove-api-header`
(success) seconds later
- `sbx-linux-keychain` (cancelled) ← cancelled by `storage-drivers`
(success) seconds later

## Fix

Key the concurrency group on the PR number instead, falling back to
`github.ref` for non-PR contexts, so each PR gets its own group and runs
no longer cancel each other.

```yaml
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
```

> [!NOTE]
> A separate, rarer class of labeler failures (genuine `failure` status)
was caused by transient GitHub infrastructure errors downloading the
pinned action tarball at the "Set up job" step. Those are not addressed
here as they only need a re-run.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 13:06:09 +02:00
David Karlsson 20a3d5a774 Fix bot review false positives: drop fabricated 80-char rule, clarify enable/disable
The PR-review bot's prompt instructed it to flag lines over 80 characters,
but no such rule exists in the repo (markdownlint MD013 is disabled and
STYLE.md never mentions it). Remove that instruction from pr-review.yml.

Also clarify the STYLE.md word list so "turn on/off" applies to UI toggles
while "enable/disable" stays acceptable in general prose, matching STYLE.md's
own example. This stops the bot from flagging every "enable" as a violation.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 12:36:47 +02:00
David Karlsson ae5e923687 Merge pull request #25130 from stefanobaghino/scope-git-hygiene-hook
agents: scope git hygiene hook to `git add` commands
2026-06-02 12:16:28 +02:00
David Karlsson fdebf8cea7 Update Docker login command syntax (#25230)
There was -u missing in the login command syntax, which would prompt to
provide username and password, but never succeed the login attempt.

<!--Delete sections as needed -->

## Description

<!-- Tell us what you did and why --> I added -u in the login command
syntax, which was missing from the instruction and creating confusion
because it was not complete.

## Related issues or tickets

<!-- Related issues, pull requests, or Jira tickets -->

## Reviews

<!-- Notes for reviewers here -->
<!-- List applicable reviews (optionally @tag reviewers) -->

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review
2026-06-02 12:09:58 +02:00
David Karlsson 05383e0205 Clarify that storage drivers page covers classic drivers
The opening note framed the page only as background information without
explaining what the page actually documents. Clarify that it describes the
classic storage drivers, while pointing containerd image store users to the
relevant operational guidance.

Closes #25093

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 11:25:06 +02:00
David Karlsson cb8aeed73f sbx: note that org policy overrides kit network rules
Kit-defined network rules (allowedDomains/deniedDomains) are ignored when
organization governance is active, since only org rules are evaluated. This
wasn't documented anywhere. Add an IMPORTANT callout in the kit
"Control network access" section and extend the governance precedence section
to account for kit rules.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 11:24:59 +02:00
Kaflesagar0 934faffc71 Update Docker login command syntax
There was -u missing in the login command syntax, which would prompt to provide username and password, but never succeed the login attempt.
2026-06-02 11:16:23 +03:00
David Karlsson 553c69e1b7 sbx: restructure governance docs and add API reference (#25162)
## Summary

Restructures the Docker AI Governance documentation under
\`/ai/sandboxes/governance/\` and adds the supporting API reference.

Preview links:

-
https://deploy-preview-25162--docsdocker.netlify.app/ai/sandboxes/governance/
-
https://deploy-preview-25162--docsdocker.netlify.app/reference/api/ai-governance/

### Information architecture

The existing \`security/governance\` and \`security/policy\` pages are
merged into a new top-level \`governance\` section so local-policy and
org-policy sit side by side instead of being split across unrelated
parents:

- \`/ai/sandboxes/governance/\` — section landing; explains local + org
as layered enforcement
- \`/ai/sandboxes/governance/concepts/\` — resource model, rule syntax,
evaluation, precedence
- \`/ai/sandboxes/governance/local/\` — \`sbx policy\` CLI for
individual machines
- \`/ai/sandboxes/governance/org/\` — Admin Console flow (was
\`security/governance.md\`)
- \`/ai/sandboxes/governance/monitoring/\` — \`sbx policy ls\` / \`sbx
policy log\`

### API reference

\`/reference/api/ai-governance/\` renders the Governance OpenAPI spec
vendored at \`content/reference/api/ai-governance/api.yaml\` from
\`docker/governor-services\`. Operations, schemas, examples, and status
codes are fully driven by the spec — future updates land via re-vendor,
not in-repo edits. Anything wrong in the rendered reference should be
fixed upstream and re-vendored here.

The spec has been re-vendored to the latest upstream version, which
updated the server URL to \`hub.docker.com/v2\` and added the
\`/governance/\` prefix to all API paths.

### Review focus

1. The \`/ai/sandboxes/governance/\` landing — does the local + org
framing match how the product is positioned?
2. \`/reference/api/ai-governance/\` — does the rendered spec match the
source of truth, and is anything important missing?

Generated by Claude Code

---------

Co-authored-by: Louis-Arnaud <la.catoire@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-02 10:05:05 +02:00
Kimaswa Emmanuel Yusufu a464561139 Merge pull request #25227 from emmayusufu/docs/remove-obsolete-compose-version
docs: remove obsolete compose version field from Go and OpenTelemetry guides
2026-06-02 08:37:37 +02:00
Allie Sadler f1d812a768 4.76 rn (#25176) 2026-06-01 11:44:26 -05:00
David Karlsson 46ffe41d7c Merge pull request #25225 from dvdksn/worktree-gordon-ultra-plan
gordon: add Ultra plan tier (10x Base)
2026-06-01 18:27:28 +02:00
David Karlsson a0b7b1bc98 sbx: document virtiofs caching opt-in for slow filesystem operations
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 15:45:40 +02:00
David Karlsson 84c25bfda2 gordon: add Ultra plan tier (10× Base)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 15:42:52 +02:00
David Karlsson e59b3671b9 Merge pull request #25217 from aheritier/fix/cli-experimental-callout
fix(cli): render experimental callout without markdownify round-trip
2026-06-01 10:44:20 +02:00
Arnaud Héritier 1d6fa0234a fix(cli): render experimental callout without markdownify round-trip
The experimental notice on CLI reference pages was being produced by
running a Hugo shortcode through markdownify. The shortcode template
embeds the icon partial, and the recent migration to multi-line
Heroicons SVGs (commit ee71c80562) pushed the inner SVG path to a
4-space indent inside the expanded HTML. markdownify then re-parsed
that HTML as Markdown and treated the indented lines (the SVG path
plus the trailing </span> and <strong>Experimental</strong>) as a
fenced code block, which is what users see on docs.docker.com.

Replace the markdownify+shortcode round-trip with the rendered HTML
inline, matching the styling of the experimental shortcode but with
no Markdown re-parse.

Fixes #25215
2026-05-30 19:17:22 +02:00
David Karlsson 5130d3693f Merge pull request #25132 from dvdksn/sbx/registry-secrets
sandboxes: document sbx secret set --registry for private OCI pulls
2026-05-29 22:28:00 +02:00