1
0
mirror of https://github.com/docker/docs.git synced 2026-10-23 18:09:02 +03:00

340 Commits

Author SHA1 Message Date
Alexa Kristensen
6232991f54 docs: document a PAT repository scope plus Cloud Sandboxes (#26360)
## Summary

A personal access token can hold one repository scope and Cloud
Sandboxes access (`sandbox:use`). The docs still said each token has one
permission level.

@netlify /security/access-tokens/personal-access-tokens/

Preview:
-
https://deploy-preview-26360--docsdocker.netlify.app/security/access-tokens/personal-access-tokens/
-
https://deploy-preview-26360--docsdocker.netlify.app/security/access-tokens/
-
https://deploy-preview-26360--docsdocker.netlify.app/security/access-tokens/reference/
-
https://deploy-preview-26360--docsdocker.netlify.app/ai/sandboxes-api/authentication/

Generated by Cursor

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 06:55:42 -05:00
Erik Engervall
da41af9dcf guides: add Firecrawl sandbox kit guide (#26353)
<!--Delete sections as needed -->

## Description

<!-- Tell us what you did and why -->

## 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

---------

Co-authored-by: erikengervall <5392475+erikengervall@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 10:18:09 +02:00
Oleg Šelajev
2e18ee54a0 docs(sandboxes): update Mistral Vibe guide for kits v3 (#26345)
## Description

The Mistral guide uses a v2 `spec.yaml` and injects credentials only for
`api.mistral.ai`. Update it to a v3 workload descriptor and companion
Dockerfile, with a pinned Vibe 2.25.8 installation and credential
injection for the inference, account, and managed-config hosts.

Keep the build-and-run walkthrough and add a FastAPI repair exercise
using the published community kit. Include three screenshots showing the
credential placeholder, Vibe's repair summary, and the model menu.
Readers verify the repair with pytest inside the sandbox and a Git diff
from the host repository.

## Validation

- Formatted and linted the changed guide with repository-pinned rumdl
and `scripts/lint.sh`: zero errors, warnings, or suggestions
- Validated the embedded descriptor against the upstream v3 JSON schema
and checked the three literal network hosts and authorization mappings
- Checked front matter, internal links, screenshot paths, and the public
sample configuration
- Ran fresh Gemini reader and technical reviews through Pi in SBX, with
tools, skills, and prior context disabled; fixed the findings and
received final READABLE and PASS verdicts
- Screenshots are from the interactive Vibe 2.25.8 sample; the earlier
sample run used sbx 0.46.0-rc5

Full Docker-based site validation and a rebuild of the tutorial kit
remain pending: the host Docker engine was unavailable. Schema and prose
checks do not establish image-build or runtime success.

## Reviews

- [x] Technical review through Gemini, plus descriptor schema validation
- [x] Editorial review through Gemini and local prose/lint checks
- [ ] Product review

---------

Signed-off-by: Oleg Šelajev <shelajev@gmail.com>
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
Co-authored-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-10-14 16:20:56 +02:00
David Karlsson
d837c637cd docs: align guide categories with remaining content
Monitoring guides were grouped under CI/CD, and several other guides had
categories that did not match their main purpose. Add Observability,
rename Deployment to Services & infrastructure, and move LocalStack and
Django into Testing and Languages & frameworks.
2026-10-08 14:22:25 +00:00
David Karlsson
19b44c2f42 docs: remove E2B and Ollama guides
Remove the E2B workflow and integration documentation and both Ollama
application guides. Remove E2B navigation and promotional links.

Redirect former E2B URLs to Docker Sandboxes and former Ollama guide URLs
to Docker Model Runner.
2026-10-08 14:17:22 +00:00
David Karlsson
5542bb1ed4 docs: remove shallow product-tour guides
The Build Cloud, Compose, Scout, Testcontainers Cloud, and
container-supported development guides mostly repeat product benefits
and introduce videos instead of teaching distinct tasks.

Remove these five guides and their unused images, update incoming links,
and redirect all former page and chapter URLs to the relevant product
docs or hands-on lab. Keep both administration guides.
2026-10-08 14:00:49 +00:00
David Karlsson
b24d663344 docs: prune specialized Testcontainers integration guides
The Testcontainers collection includes nine specialized Java integration
tutorials with modest readership and overlapping framework setup.

Remove these guides and their links from the Testcontainers overview,
retaining eleven guides covering language introductions, general
techniques, representative web frameworks, and Testcontainers Cloud.
2026-10-08 13:50:14 +00:00
David Karlsson
7a1b2c0627 docs: remove low-use NLP and generic GenAI guides
The NLP examples, TensorFlow.js face detection guide, Neo4j RAG guide,
and video chatbot guide have low readership and repeat application
setup or containerization covered by other guides.

Remove these eight guides and the nine images used only by them.
No remaining content or config entries reference the removed guides.
2026-10-08 13:39:03 +00:00
Deepanshu Pal
9aa787e374 docs: fix Azure Pipelines job and build-task snippets
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-04 10:11:46 +05:30
Allie Sadler
0b2b9a410c DD IA work (#26215)
<!--Delete sections as needed -->

## Description

As per IA plan, move enterprise content into Desktop area

## 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

---------

Signed-off-by: aevesdocker <allie.sadler@docker.com>
2026-09-29 13:24:41 +01:00
David Karlsson
d511fb5636 docs: move AI Compose and MCP docs into product sections (#26180)
Baby step towards cleaning up the sidenav for the ai/agents section.

<img width="306" height="304" alt="image"
src="https://github.com/user-attachments/assets/57ebd1df-9c7f-4ee8-a84f-a61ffec2cd90"
/>


Moves “Use AI models in Compose” into Compose → How-tos and MCP Catalog
and Toolkit into Docker Desktop → Features and capabilities, removing
both entries from the top-level AI and agents sidebar group.

Updates internal source links and preserves existing public URLs. Scoped
lint and a Hugo build passed; rendered sidebar ancestry, MCP page URLs,
and images were checked locally.

Generated by Codex
2026-09-25 11:42:07 +02:00
David Karlsson
80bd6569e5 docs: document v3 kits (#26065)
Add v3 kit documentation for Docker Sandboxes: concepts, usage,
authoring, and kit sets. Link to the upstream specification for
reference details and retain v2 guidance.

Validation: Markdown/style checks, Hugo build, internal links, and
example build checks passed.

Closes docker/sbx-releases#569

@netlify /ai/sandboxes/customize/
2026-09-24 18:00:08 +02:00
Paweł Gronowski
b0ad489a86 Merge pull request #26050 from vvoland/update-distros
Replace Debian Bullseye images in examples
2026-09-16 17:35:29 +02:00
David Karlsson
8471a5754c Merge pull request #26063 from dvdksn/chore/use-docs-toolkit
chore: use shared Vale rules
2026-09-14 11:23:39 +02:00
David Karlsson
83cfca0358 chore: use shared Vale rules
Fetch the Docker style package from docs-toolkit and retain only the local vocabulary and repository-specific configuration. Resolve existing canonical-name violations exposed by the shared package.
2026-09-11 12:37:25 +02:00
Sunshio
4bc4045b95 docs: fix some broken links from malformed markdown (#26052)
## Description
This PR is here to fix 7 broken markdown links with a missing
parenthesis, a stray bracket, and literal spaces that Hugo's link
resolver doesn't flag.

Feel free to provide any feedbacks 🚀
2026-09-10 07:54:30 +01:00
Paweł Gronowski
07193de20e Replace Debian Bullseye images in examples
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2026-09-09 16:36:40 +02:00
Gerardo Lopez
c927b8145d Merge pull request #26019 from falconcr/main
Add guide: Run Mistral Vibe in a Docker Sandbox
2026-09-07 20:00:49 +02:00
David Karlsson
b98c400647 docs: prototype new get started journeys (#25986)
## Summary

Prototypes a task-first Get started experience organized around three
short journeys:

- Containerization: run a container and application stack, build an
image, and share it.
- AI development: move an existing full-autonomy coding-agent workflow
into a disposable Docker Sandbox.
- Administration: invite a pilot user, apply a Docker Desktop policy,
and verify the managed experience.

The change replaces the existing Get started landing content with a
compact journey selector, adds direct installation paths for Docker and
Docker Sandboxes above the tutorials, adds the tutorials as a
collapsible sidebar group, and updates homepage and `llms.txt` discovery
paths. The container and sandbox tutorials include focused next steps
into relevant concept and manual pages.

The superseded Introduction series and its unused images are removed.
Its published routes and legacy aliases, including the workshop routes
consolidated on `main`, redirect to the replacement container tutorial
or the Get Docker page. Inbound documentation links point to the new
tutorial.

The existing Docker concepts content remains available while this
direction is evaluated.

@netlify /get-started/

## Deploy preview

- [Get started landing
page](https://deploy-preview-25986--docsdocker.netlify.app/get-started/)
- [Containerization
tutorial](https://deploy-preview-25986--docsdocker.netlify.app/get-started/tutorials/run-an-app/)
- [AI agent
tutorial](https://deploy-preview-25986--docsdocker.netlify.app/get-started/tutorials/run-an-agent/)
- [Administrator
tutorial](https://deploy-preview-25986--docsdocker.netlify.app/get-started/tutorials/admin-set-up/)

Generated by Codex

---------

Co-authored-by: Codex <noreply@openai.com>
2026-09-07 13:38:47 +02:00
David Karlsson
828626a383 docs: document mountless sandbox workspaces (#25902)
## Summary

Documents the v0.42.0 workspace behavior for Docker Sandboxes: `sbx run`
continues to mount the current directory when no path is provided, while
`sbx create` accepts zero workspace paths and creates a mountless
sandbox when they are omitted.

Explains the mountless working directory and persistence model, keeps
explicit paths where a project workspace is load-bearing, uses named
attachment for existing sandboxes, and adds troubleshooting for
sandboxes created without project files.

The generated CLI reference will receive the matching upstream help text
when v0.42.0 is vendored.

Closes docker/sbx-releases#466

Generated by Codex

---------

Co-authored-by: Codex <noreply@openai.com>
2026-09-07 13:00:45 +02:00
Alexa Kristensen
b744dd3103 docs: restructure Platform accounts, security, and billing IA (#25982)
# To dos

~- Evaluate _index pages and standardize across account + admins
category~
~- Edit weights of topics~
- Notify TSEs, other stakeholders
- TW sign off 

## Summary

This PR restructures the Platform documentation into a clearer Accounts,
Security, and Subscription and billing information architecture, with
aliases so existing URLs keep working.

Work from these PRs was merged into this feature branch:

- #25957 (Security IA)
- #25960 (Accounts and Admin)
- #25981 (Subscription and billing)

### Accounts

- Moves organization, company, and admin content under Accounts.
- Splits individual-account docs into their own subsection.
- Removes the standalone Admin section; those pages now live under
Accounts.

### Security

- Publishes Security at `/security/`, matching other Platform sections.
- Groups authentication (SSO, 2FA, OIDC), access tokens, provisioning,
and roles under Security.
- Leaves Enterprise Hardened Desktop and related enterprise security
docs under Enterprise.
- Restores shipped Hardened Desktop and security FAQ URLs so they match
`main`.

### Subscription and billing

- Merges Subscription and Billing into a single Subscription and billing
section.
- Drops the extra subcategory wrappers and nests billing tasks under
Manage.
- Shortens the billing details sidebar label.

### FAQs

- Consolidates Platform FAQs onto four pages: Accounts, Security,
Subscription and billing, and Platform.
- Folds leftover general, container, and network/VM security FAQs into
Platform FAQs.
- Folds SSO enforcement FAQs into the SSO FAQ.
- Templates FAQ pages with H2 topics and H3 questions, and limits the
table of contents to H2.

### Navigation and follow-ups

- Renames the manuals sidebar group from Platform to Accounts and admin,
and updates the manuals landing heading and copy to match.
- Fixes the MSI install Settings Management link after the security path
move.
- Updates CODEOWNERS, the labeler, and in-repo links to the new paths.

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 09:26:12 -07:00
Craig Osterhout
ff96ad1711 scout: retire features (#25965)
<!--Delete sections as needed -->

## Description

Flips the Docker Scout features that reached their retirement dates from
"deprecated" to retired, and removes the topics for them.

Docs now describe only the current product — retirement dates and
history
live in the release notes and the retired products page.

https://deploy-preview-25965--docsdocker.netlify.app/scout/


## Retired features and topics updated

| Feature | Retired | Topics |
|---|---|---|
| Slack integration | Jul 30 | Deleted
`integrations/team-collaboration/` |
| Notifications | Sep 1 | Removed notification settings from
`explore/dashboard.md` |
| Amazon ECR (native) | Sep 1 | Deleted `registry/ecr.md` |
| Azure ACR (native) | Sep 1 | Deleted `registry/acr.md` |
| Policies page in Dashboard | Sep 1 | Deleted `policy/dashboard.md`,
trimmed `policy/_index.md` and `policy/local.md` |
| SonarQube integration | Sep 1 | Deleted `integrations/code-quality/` |
| GitHub SCM integration | Jul 1 | Deleted leftover
`source-code-management/` topic; migration guidance moved to
`retired.md` |

ECR and ACR are still supported through `docker scout watch` — only the
native
integrations are gone.

## New

- `integrations/registry.md` — generic registry topic covering any
OCI-compliant registry, with Artifactory as the worked example. Replaces
the
  per-registry topics, including `registry/artifactory.md`.

## Also

- Release notes: kept the original deprecation announcements (links
removed),
  added retirement entries for Jul 30 and Sep 1.
- `retired.md`: entries updated, aliases added for all removed topics.
- Fixed a stale claim in `build/building/best-practices.md` that Scout
raises
  pull requests to update base images — that was the retired GitHub
  integration. Now points to Dependabot.

## 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

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-09-01 14:40:07 -07:00
Usha Mandya
cb6f394c0f Remove the outdated docker workshop section
Signed-off-by: Usha Mandya <usha.mandya@docker.com>
2026-08-28 12:13:05 +01:00
David Karlsson
7c47be0029 docs: reorganize Docker Sandboxes content 2026-08-20 10:18:36 +00:00
David Karlsson
f8000e8257 Merge pull request #25790 from dvdksn/codex/document-sbx-env
docs: document sandbox environment variables
2026-08-19 12:56:49 +02:00
Dean Chen
e4b21194e7 docs: note COPY *.go does not include Go packages in subdirs (#25849)
The Go guide's `COPY *.go ./` only picks up files in the Dockerfile
directory. A module with `pkg/` then fails at `go build` for a reason
that looks like a missing dependency.

Left the sample Dockerfile as-is (it's a single-directory app) and
called out `COPY . .` for multi-package trees.

Fixes #14609

---------

Signed-off-by: Dean Chen <862469039@qq.com>
2026-08-18 09:14:20 +02:00
David Karlsson
eab8d24710 docs: separate sandbox installation from first run
The sandbox get-started page mixed platform installation with the first-session walkthrough. Add a dedicated install page with both Linux installation paths, and update related links to use it.
2026-08-14 14:55:53 +00:00
David Karlsson
63ddb2912c Merge pull request #25710 from dvdksn/codex/migrate-rumdl
build: migrate Markdown tooling to rumdl
2026-08-05 09:16:24 +02:00
Craig Osterhout
50c34ba440 dhi: sync cli ref (#25634)
<!--Delete sections as needed -->

## Description

Synced DHI CLI docs:
- Release notes — Added v0.0.6 and v0.0.7 to the DHI CLI release notes
page.
- Reference YAML — Synced commands (these syncs got missed a previous
release):
   - customization build get
   - customization build list
   - customization build logs

Backstage guide — Fixed a stale customization build list example in the
dhictl CLI tab that still used the old two-argument format; updated to
`<customization-id>` with a note on how to retrieve it.

## 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-07-27 08:07:34 -07:00
Craig Osterhout
ab6453ef11 dhi: add mcp server (#25589)
<!--Delete sections as needed -->

## Description

Added topic for DHI mcp server. (main point of this PR)
Added a
"[tools](https://deploy-preview-25589--docsdocker.netlify.app/dhi/tools/)"
section in order to have a home for the mcp topic. It includes:
-
[mcp](https://deploy-preview-25589--docsdocker.netlify.app/dhi/tools/mcp/)
(new)
-
[cli](https://deploy-preview-25589--docsdocker.netlify.app/dhi/tools/cli/)
(moved from how-to)
-
[hub](https://deploy-preview-25589--docsdocker.netlify.app/dhi/tools/hub/)
(new, moved relevant content from explore how-to)
-
[terrarform](https://deploy-preview-25589--docsdocker.netlify.app/dhi/tools/terraform/)
(new, aggregates content from how-tos)

Re-orged topics because adding "tools" made the top-level nav
overloaded:
- [Moved core
concepts](https://deploy-preview-25589--docsdocker.netlify.app/dhi/explore/security-concepts/)
into explore to reduce top-level navigation overload. Keeps most of the
conceptual stuff in one place.
- [Moved
troubleshoot](http://deploy-preview-25589--docsdocker.netlify.app/dhi/how-to/troubleshoot/)
into how-to to reduce top-level navigation overload. Keeps most of the
tasks in one place.
- [Merged
feedback](https://deploy-preview-25589--docsdocker.netlify.app/dhi/resources/)
into additional resources as it is awkward under explore. Been meaning
to do it for awhile.
- [ Merged
features](https://deploy-preview-25589--docsdocker.netlify.app/dhi/)
into main index page to reduce top-level navigation overload. Removed a
lot of the fluff. Keeps most of the marketing stuff in one place.


The how-to section is still a bit too much. That's a harder problem and
this PR already scope-creeped enough.

## Related issues or tickets

ENGDOCS-3337

## Reviews

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

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review

---------

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-07-23 11:51:16 -07:00
David Karlsson
2e4e59f9e4 Merge pull request #25616 from dvdksn/codex/fix-25597-cargo-cache
docs: fix concurrent Rust cache mounts
2026-07-22 12:40:25 +02:00
David Karlsson
45041dba81 docs: fix guide links after single-page migration (fixes #25606)
Bare relative links in collapsed guides resolved to the guides landing page.
Replace them with same-page anchors and remove one link to a deleted topic.

Co-Authored-By: Codex <noreply@openai.com>
2026-07-21 10:47:00 +00:00
David Karlsson
4d30fabe3c Merge pull request #25561 from dvdksn/codex/refactor-sbx-usage-workflows
Clarify sandbox usage and workflow docs
2026-07-15 20:51:44 +02:00
Allie Sadler
64f919ca59 engdocs-3347 (#25573)
<!--Delete sections as needed -->

## Description

<!-- Tell us what you did and why -->

## 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

Signed-off-by: aevesdocker <allie.sadler@docker.com>
2026-07-15 13:59:20 +01:00
Brandon Hunt
97cee42f3c docs: collapse folder+index.md guides to flat single-file guides (#25504)
## Description

Follow-up to #25338 (the guides revamp). That PR collapsed most
multi-page guide series into single pages but left ~50 guides wrapped in
a `<name>/index.md` directory structure alongside guides that are
already flat `<name>.md` files — an inconsistent mix. This PR finishes
the flattening:

- Flattens 50 folder-wrapped guides to `content/guides/<slug>.md` via
`git mv` (history preserved). These keep the same URL, since Hugo
generates the same permalink for a leaf-bundle `dir/index.md` and a flat
`dir.md`.
- Moves the last 4 guides' local per-guide image bundles
(`genai-leveraging-rag`, `genai-video-bot`, `genai-claude-code-mcp`,
`java`) into the shared `content/guides/images/` folder with
slug-prefixed filenames, matching the convention already used by most
other guides (`databases-1.webp`, `kafka-1.webp`, etc.), and rewrites
the in-body image references.
- Normalizes `genai-claude-code-mcp`'s non-standard filename
(`claude-code-mcp-guide.md`) and capitalized `Images/` folder to match
convention.
- Promotes `content/guides/frameworks/laravel/index.md` to a top-level
`content/guides/laravel.md`, since it was the only guide under
`frameworks/` and every other language/framework guide is flat.
- Adds `aliases` entries for the two URLs that actually changed
(`/guides/frameworks/laravel/` and
`/guides/genai-claude-code-mcp/claude-code-mcp-guide/`); every other
rename preserves its existing URL.

Companion PR establishing this as the documented convention going
forward: #25503

## Validation

- `hugo --minify` build via `docker compose run` completes with zero
warnings/errors (3174 pages, 1524 aliases — unchanged from before this
PR).
- Verified both changed-URL guides render at their new path and the old
path 301s via the Hugo alias redirect.
- Verified every image reference in the 4 migrated guides resolves to an
existing file in `content/guides/images/`.
- Multi-agent docs review (link-checker, cross-reference-checker,
guide-conventions) found zero issues.

## Related issues or tickets

Discussed in the team's docs Slack channel following #25338.

## Reviews

- [ ] Technical review
2026-07-09 08:45:55 -07:00
Craig Osterhout
fdb2746edc scout: feature updates (#25500)
<!--Delete sections as needed -->

## Description


https://deploy-preview-25500--docsdocker.netlify.app/scout/policy/

https://deploy-preview-25500--docsdocker.netlify.app/scout/release-notes/platform/
https://deploy-preview-25500--docsdocker.netlify.app/retired/

## Related issues or tickets

ENGDOC-3311

## Reviews

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

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-07-06 09:24:07 -07:00
David Karlsson
f02e2a5633 Revamp the guides section: taxonomy, single-page structure, and new landing/filter UX (#25338)
## What

A full revamp of the `/guides` section — taxonomy, structure, and UX.

Preview: https://deploy-preview-25338--docsdocker.netlify.app/guides/

### Taxonomy & structure
- Replaces the sprawling 24-tag set with a focused 9-tag taxonomy
aligned to use case / SDLC: **Languages & frameworks, AI, Testing,
CI/CD, Security, Databases, Deployment, Admin, Hands-on labs**.
- Removes the languages taxonomy entirely (`data/languages.yaml` and all
`languages:` front matter).
- Collapses all multi-page guide series into single pages, with aliases
so old sub-page URLs continue to resolve.
- Deletes redirect-only shim pages and flattens directory-wrapped single
pages.

### Landing page (`/guides/`)
- A clean index: hero, then category sections listing each guide as a
plain **title / summary** row.
- **Browse rail** (sticky, left): click a topic to filter the page to
just that topic's guides; "All guides" resets. A count + Clear bar
appears while filtering.
- **Text filter**: instant client-side search over title, summary, and
tags. Topic filter and text search are mutually exclusive and share the
same flat-list view.
- No more "Featured guides" section.

### Guide content pages
- Removes the left sidebar for the guides section (mobile drawer kept).
- Centered reading column (`92ch`) with the TOC taking the remaining
width.
- Summary rendered as a lead paragraph under the h1.
- TOC scrollbar auto-hides until hover; breadcrumbs render at a
consistent size inside and outside `prose`.

## Notes
- Deep full-text search across guide bodies is still handled by the
existing site-wide Pagefind (⌘K); the landing filter is the fast
metadata-narrowing surface.
- `series.html` is retained — it's still used by `get-started` pages.

## Validation
- Site builds clean locally (Hugo dev server, no errors / broken refs).
- All collapsed sub-page URLs redirect via aliases.

## Follow-ups

- Prune guides that we no longer need/want
- Tighten the guides that span too many concepts (e.g. language guides;
remove cicd/deploy/sscs)

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

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 10:47:10 +02:00
Craig Osterhout
0207aea1ed Merge pull request #25373 from craig-osterhout/guides-feedback
guides: clean up non-unique content
2026-06-30 12:51:09 +02:00
Rafael Coelho
dcfd3df3cb docs: fix assorted grammar errors
- Python/Ruby GitHub Actions CI guides: 'is runs' -> 'runs', 'of you' ->
    'of your', and 'Login to Docker Hub' link text -> 'Log in to Docker Hub'
  - configure-builder: 'of you workflow' -> 'of your workflow'
  - bind-mount page: remove stray article ('the a container' -> 'the container')
  - pre-seeding guide: 'let you access to' -> 'letting you access', 'define' -> 'defines'
2026-06-17 09:10:12 -03:00
Craig Osterhout
8f225794d6 guides: refresh nodejs (#25319)
<!--Delete sections as needed -->

## Description

Refreshed Node.js guide

- Updated all examples to DHI. DHI Community is now free so the DOI
fallback is no longer needed.
- Replaced the git clone pattern with the file scaffolding component.
- Simplified the sample app to a Node.js backend API. Added links at the
start of the guide to dedicated frontend framework guides.
- Added "Secure your Node.js image supply chain" topic to showcase DHI.
- Refreshed topic intros and related links.

https://deploy-preview-25319--docsdocker.netlify.app/guides/nodejs/


## Related issues or tickets

ENGDOCS-3319
Closes #25280

## Reviews

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

- [ ] Technical review
- [ ] Editorial review
- [ ] Product review

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-06-11 08:41:08 -07:00
Kimaswa Emmanuel Yusufu
caa2754dfe docs: fix LocalStack port, Compose configs key, and a doubled link slash (#25309)
Three small fixes in the guides.

- `guides/localstack`: the prose says `S3_ENDPOINT_URL` is
`http://localhost:4556`, but LocalStack's edge port is `4566`, and the
guide's own `.env` block later uses `4566`.
- `guides/pgadmin`: the top-level Compose key for the pgpass file is
`configs`, not `config`. As written the compose file is invalid.
- `guides/bun/deploy`: the "Turn on Kubernetes" link has a doubled slash
(`/manuals//desktop/...`).

Signed-off-by: Emmanuel Yusufu Kimaswa <kimaswaemma36@gmail.com>
2026-06-10 14:54:51 -07:00
Louis-Arnaud
45feb518d4 guides/localstack: update init directory to /etc/localstack/init/ready.d (#24816)
The `/docker-entrypoint-initaws.d` directory was removed in LocalStack
2.0. Updates the Compose snippet to mount the current `ready.d` init
hook directory and adds a short tip pointing to the LocalStack init
hooks reference. Also drops a stray trailing quote that made the
previous mount path invalid.

Closes #22640
2026-06-10 14:44:14 -07:00
Craig Osterhout
5862e80e5b guides: update python & add files component (#25206)
<!--Delete sections as needed -->

## Description

Updated Python guide

- Removed DOI in favor of DHI only. DHI Community is now free, so
there's no reason to keep the DOI fallback path.
- Removed the git clone sample-app pattern. Maintaining external sample
repos is a burden, and split source of truth between the docs and the
sample.
- New file browser / scaffolding component. Lets users copy individual
files or scaffold the whole project with one command. Replaces the role
the cloned sample repo used to play.
- New "Secure your supply chain" topic highlighting what DHI gives you
and how to attach matching attestations to your own image in CI.
- A bunch of smaller improvements: clearer intros for each topic,
progressively updating the same app in all topics, ran and fixed issues,
etc.

https://deploy-preview-25206--docsdocker.netlify.app/guides/python/

## Related issues or tickets

ENGDOCS-3308

## Reviews

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

- [ ] Technical review
- [ ] Editorial review

---------

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-06-08 12:07:31 -07:00
Craig Osterhout
43ae73f32e dhi: add vex walkthrough (#24992)
<!--Delete sections as needed -->

## Description

Added VEX walkthrough guide for Docker Hardened Images

The existing DHI documentation covers VEX concepts and scanner
integration, but as separate reference topics. Users who want to
understand VEX in practice have to piece together the workflow
themselves.
This guide shows the full workflow end-to-end against a real image
(`dhi.io/python:3.13`): scan without VEX to get the raw CVE baseline,
fetch the attestation, scan again with VEX applied, then inspect every
suppression and the reasoning behind it. Each step shows actual command
output so readers can compare what they see against a known reference.
The guide covers:
- Before/after scans with Trivy and Grype to make the VEX effect
concrete
- Docker Scout's automatic VEX integration as a contrast
- Trivy's `--show-suppressed` flag to surface per-CVE justification
codes
- `jq` queries against the raw VEX file to read Docker's human-readable
reasoning and filter by status (`not_affected`, `under_investigation`,
`affected`)

The goal is to give readers a working mental model of what VEX does and
how to audit it — something a walkthrough can do that reference docs
can't.



https://deploy-preview-24992--docsdocker.netlify.app/guides/dhi-vex-walkthrough/

## Related issues or tickets

ENGDOCS-3239

## Reviews

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

- [ ] Editorial review

---------

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
2026-06-08 11:42:04 -07: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
David Karlsson
f5b5f2c287 Clarify Node.js Dockerfile location (#25196)
## Summary

The Node.js containerize guide told readers to create a Dockerfile
without saying where to place it. This clarifies that both Dockerfile
options belong in the project root.

Closes #25185

Generated by Codex

Co-authored-by: Codex <codex@openai.com>
2026-05-28 16:57:58 +02:00
David Karlsson
273d6880ca docs: clarify Node.js Dockerfile location (fixes #25185)
The Node.js containerize guide told readers to create a Dockerfile without saying where it belongs.

Clarify that both Dockerfile options should be created in the project root and clean up existing lint failures in the touched file.

Co-Authored-By: Codex <codex@openai.com>
2026-05-28 11:45:35 +02:00
Brandon Hunt
a78c3c7e8c Style cleanup: add missing keywords and remove bold-for-emphasis (#25127)
Two related style-conformance fixes across `content/guides/`, motivated
by a recent audit of guide-page style against STYLE.md, COMPONENTS.md,
and AGENTS.md.

## What changed

### 1. Add missing `keywords:` frontmatter to 104 guide pages

`keywords` is documented as required (AGENTS.md, COMPONENTS.md) but was
missing from 10 single-file guides, 8 `_index.md` landing pages, and 86
chapter pages. Each page now has a meaningful, page-specific
comma-separated keyword list derived from its title, lead content, and
sibling pages where applicable.

Examples of the convention applied:
-
`content/guides/testcontainers-java-spring-boot-kafka/create-project.md`
— `testcontainers, java, spring boot, kafka, mysql, project setup`
- `content/guides/docker-compose/why.md` — `docker compose,
multi-container, yaml, services, orchestration, application`

Post-change verification confirms zero guide pages under
`content/guides/` are missing the field.

### 2. Remove bold-for-emphasis from 14 guide pages

STYLE.md restricts bold to UI elements only — never for emphasis,
product names, command names, or the `**Term**: description`
subsection-label pattern. Cleaned up the top-15 offender files
identified by raw bold-span count (code blocks excluded). One file
(`jupyter.md`, 32 spans) was untouched because all spans were legitimate
UI references.

Shape of the work across 14 files:
- ~60 `**Term**: description` list items de-bolded
- ~10 identifiers/values/commands converted to backticks (e.g.
`**my-mysql**` → `` `my-mysql` ``)
- ~10 product/emphasis bolds removed
- 6 bolded link texts un-bolded
- 3 blockquote-style notes converted to `> [!NOTE]` callouts

Legitimate UI bolds (button names, menu items, field labels, tab names)
were preserved throughout. `databases.md` kept 47 of 49 spans for this
reason — only port-mapping value and container name were converted to
backticks.

## Out of scope

The audit surfaced other items not addressed here:
- Series `params` block missing on all 48 `_index.md` landing pages —
this is a "decide what's authoritative" question that warrants
discussion before code changes.
- Vale prose violations (`just`, `easily`, `we`, etc.) — concentrated in
~5 files; can land separately.
- Heading numbering convention (`## Step N:` vs `## N.` vs plain) —
undocumented; should be pinned down in STYLE.md or COMPONENTS.md before
mechanical sweeps.

## Verification

- `markdownlint` (via `scripts/lint.sh`) clean on all changed files.
- Vale not installed locally; relying on CI to validate prose.
- `git diff --stat` confirms scope: 118 unique files, all under
`content/guides/`. No vendored, layout, or generated-file changes.
2026-05-27 11:30:48 -07:00
Sebastiaan van Stijn
bc4a06498f guides/grafana-mcp-server-gemini: fix linting
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-05-21 17:05:23 +02:00
Gerardo Lopez
ce0382371c Merge pull request #24134 from falconcr/main
feat: integrate Gemini CLI with Docker MCP for natural language observability
2026-05-21 16:21:48 +02:00