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

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.
This commit is contained in:
David Karlsson
2026-09-11 12:37:25 +02:00
parent 6218eec744
commit 83cfca0358
37 changed files with 39 additions and 251 deletions

1
.gitignore vendored
View File

@@ -11,6 +11,7 @@ public
resources
static/pagefind
tmp
_vale/Docker/
# Binary installed by cagent-action in CI
cagent
# cagent tmp files

View File

@@ -1,38 +1,39 @@
StylesPath = _vale
MinAlertLevel = suggestion
IgnoredScopes = text.frontmatter, code, tt, b, strong, i, a
Packages = https://github.com/docker/docs-toolkit/releases/download/v0.1.0/Docker.zip
Vocab = Docker
# Generated reference content — disable rules that don't apply
[content/reference/**]
Docker.Capitalization = NO
Vale.Spelling = NO
Vale.Terms = NO
Docker.CanonicalNames = NO
Docker.IndustryTerms = NO
# Skip release notes and old desktop changelog content entirely
[{content/manuals/*/release-notes.md,content/manuals/*/release-notes/**,content/manuals/**/release-notes.md,content/manuals/desktop/previous-versions/**}]
Docker.Avoid = NO
Docker.Capitalization = NO
Docker.CanonicalNames = NO
Docker.Exclamation = NO
Docker.Forbidden = NO
Docker.GenericCTA = NO
Docker.HeadingPunctuation = NO
Docker.IndustryTerms = NO
Docker.ListComma = NO
Docker.MetaCommentary = NO
Docker.OxfordComma = NO
Docker.PromotionalOpeners = NO
Docker.RecommendedWords = NO
Docker.Spacing = NO
Docker.Terms = NO
Docker.URLFormat = NO
Docker.Units = NO
Docker.VersionText = NO
Docker.We = NO
Vale.Spelling = NO
Vale.Repetition = NO
Vale.Terms = NO
[*.md]
BasedOnStyles = Docker, Vale
Vale.Spelling = NO
Vale.Terms = NO
TokenIgnores = ({{[^}]+}}\S*)
BlockIgnores = (?m)^[ \t]*({{[^}]+}})[ \t]*$, (\[[^\]]*{{[^}]+}}[^\]]*\]\([^)]*\)), ({{<\s*file\s[^>]*>}}[\s\S]*?{{<\s*/\s*file\s*>}})

View File

@@ -1,17 +0,0 @@
extends: existence
message: "Consider removing '%s'."
ignorecase: true
level: warning
tokens:
- amazing
- easily
- game-changing
- 'just(?!-in-time)'
- please
- powerful
- really
- revolutionary
- robust
- seamlessly
- simply
- very

View File

@@ -1,10 +0,0 @@
extends: existence
message: "Please capitalize Docker."
level: error
ignorecase: false
action:
name: replace
params:
- Docker
tokens:
- '[^\[/\-.]docker[^/\-.\w]'

View File

@@ -1,16 +0,0 @@
extends: existence
message: "Don't use exclamation points in text."
nonword: true
level: error
action:
name: edit
params:
- trim_right
- "!"
# Product names that legitimately end in an exclamation point. List the
# name without the trailing "!" — the exception is matched against the
# word that precedes the exclamation point.
exceptions:
- 'SDKMAN'
tokens:
- '\w+!(?:\s|$)'

View File

@@ -1,6 +0,0 @@
extends: substitution
message: "Use '%s' instead of '%s'."
level: error
ignorecase: false
swap:
Docker CE: Docker Engine

View File

@@ -1,7 +0,0 @@
extends: existence
message: "Avoid generic calls to action: '%s'"
level: warning
scope: raw
ignorecase: true
raw:
- \[(click here|(find out|learn) more)\]

View File

@@ -1,12 +0,0 @@
extends: existence
message: "Don't put a period at the end of a heading."
nonword: true
level: warning
scope: heading
action:
name: edit
params:
- trim_right
- "."
tokens:
- '[a-z0-9][.]\s*$'

View File

@@ -1,5 +0,0 @@
extends: existence
message: Don’t add commas (,) or semicolons (;) to the ends of list items.
level: warning
scope: list
raw: '[,;]$'

View File

@@ -1,8 +0,0 @@
extends: existence
message: "Remove meta-commentary '%s' and state the information directly."
ignorecase: true
level: warning
tokens:
- 'worth noting(?: that)?'
- 'important to (?:note|understand) that'
- 'keep in mind(?: that)?'

View File

@@ -1,7 +0,0 @@
extends: existence
message: "Use the Oxford comma in '%s'."
scope: sentence
level: warning
nonword: true
tokens:
- '(?:[^\s,]+,){1,}\s\w+\s(?:and|or)\s\w+[.?!]'

View File

@@ -1,8 +0,0 @@
extends: existence
message: "Replace promotional opener '%s' with a specific description."
ignorecase: true
level: warning
scope: sentence
tokens:
- '^in today'
- '^(?:whether you[\x27’]re|whether you are)\b'

View File

@@ -1,47 +0,0 @@
extends: substitution
message: "Consider using '%s' instead of '%s'"
ignorecase: true
level: suggestion
action:
name: replace
swap:
'\b(?:eg|e\.g\.)[\s,]': for example
'\b(?:ie|i\.e\.)[\s,]': that is
(?:account name|accountname|user name): username
(?:drop down|dropdown): drop-down
\blog out\b: sign out
\b(?:sign on|log on|log in)\b: sign in
adaptor: adapter
administrate: administer
afterwards: afterward
allows: lets
alphabetic: alphabetical
alphanumerical: alphanumeric
anti-aliasing: antialiasing
anti-malware: antimalware
anti-spyware: antispyware
anti-virus: antivirus
appendixes: appendices
assembler: assembly
check box: checkbox
check boxes: checkboxes
click: select
distro: distribution
ergo: therefore
facilitate: help
facilitates: helps
facilitated: helped
facilitating: helping
file name: filename
in order to: to
keypress: keystroke
mutices: mutexes
repo: repository
scroll: navigate
url: URL
utilize: use
utilizes: uses
utilized: used
utilizing: using
'\bvs\b(?!\.|\s+Code)': versus
wish: want

View File

@@ -1,10 +0,0 @@
extends: existence
message: "'%s' should have one space."
level: error
scope:
- list
- heading
- paragraph
nonword: true
tokens:
- " {2,}"

View File

@@ -1,9 +0,0 @@
extends: substitution
message: "Use '%s' instead of '%s'."
ignorecase: true
level: warning
action:
name: replace
swap:
URL for: URL of
an URL: a URL

View File

@@ -1,9 +0,0 @@
extends: substitution
message: "Use '%s' instead of '%s'"
level: error
swap:
kilobytes?: kB
gigabytes?: GB
megabytes?: MB
petabytes?: PB
terabytes?: TB

View File

@@ -1,11 +0,0 @@
extends: existence
message: Use later when talking about version numbers.
scope: raw
raw:
- '\bv?'
- '(?P<major>0|[1-9]\d*)\.'
- '(?P<minor>0|[1-9]\d*)'
- '(?:\.(?P<patch>0|[1-9]\d*))?'
- '(?:-(?P<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?'
- '(?:\+(?P<buildmetadata>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?'
- '\b (and|or) (higher|above)'

View File

@@ -1,11 +0,0 @@
extends: existence
message: "Avoid using first-person plural like '%s'."
level: warning
ignorecase: false
tokens:
- '[Ww]e'
- "[Ww]e'(?:ve|re)"
- '[Oo]urs?'
- us
- Us
- "[Ll]et's"

View File

@@ -28,9 +28,7 @@ bootup
Bitnami
Btrfs
Bugsnag
BuildKit
buildkitd
BusyBox
cagent
CD
CentOS
@@ -70,18 +68,10 @@ Dex
displayName
Django
DMR
Docker Build Cloud
Docker Business
Docker Dashboard
Docker Desktop
Docker Engine
Docker Extension
Docker Hub
Docker Scout
Docker Team
Docker-Sponsored Open Source
Docker's
Dockerfile
dockerignore
Dockerize
Dockerized
@@ -106,8 +96,6 @@ GeoNetwork
GGUF
Git
Gitea
GitHub
GitHub Actions
Google
Gradle
Grafana
@@ -129,7 +117,6 @@ IPv[46]
IPvlan
isort
Jamf
JavaScript
JetBrains
JFrog
JUnit
@@ -142,7 +129,6 @@ Kubeadm
kubectl
kubefwd
kubelet
Kubernetes
Laradock
Laravel
libseccomp
@@ -153,7 +139,6 @@ logback
Loggly
Logstash
lookup
macOS
macvlan
Mail(chimp|gun)
mfsymlinks
@@ -164,7 +149,6 @@ misconfiguration
[Mm]ixins?
monorepos?
musl
MySQL
nameserver
namespaced?
namespacing
@@ -175,12 +159,10 @@ netlabel
netlink
Netplan
NFSv\d
Nginx
npm
nvm
Nutanix
Nuxeo
NVIDIA
OAuth
Okta
Ollama
@@ -199,7 +181,6 @@ pluggable
Postgres
psycopg
pytest
PowerShell
Python
Qualcomm
Quickview
@@ -243,7 +224,6 @@ sysctls
Sysdig
systemd
teleop
Testcontainers
tmpfs
Traefik
Trivy
@@ -261,7 +241,6 @@ Unix
unmarshalling
unmanaged
upsert
Visual Studio Code
VMware
VPNKit
vSphere
@@ -291,9 +270,7 @@ Zsh
[Aa]utobuilds?
[Aa]utotests?
[Aa]utoscaling
[Bb]uildx
[Bb]uildpack(s)?
[Bb]uildx
[Cc]odenames?
[Cc]ompose
[Cc]onfigs
@@ -358,7 +335,6 @@ README
[Ee]vals?
[Ll]abspaces?
[Uu]nsloth
AppArmor
[Aa]utolocking
[Bb]oolean
[Bb]reakpoint
@@ -442,7 +418,6 @@ oldoldstable
parallelizable
PHPUnit
pnpm
PyTorch
Shellshock
Spring4Shell
superset

View File

@@ -137,7 +137,7 @@ Build Cloud.
#### How does Docker Build Cloud work with Docker Compose?
Docker Compose works out of the box with Docker Build Cloud. Install the Docker
Build Cloud-compatible client (buildx) and it works with both commands.
Build Cloud-compatible client (Buildx) and it works with both commands.
#### How many minutes are included in Docker Build Cloud Team plans?

View File

@@ -355,7 +355,7 @@ Prerequisites:
specified namespace (in this case, `buildkit`), while keeping your driver
configuration locally.
5. Use your new builder by including the `--builder` flag when running buildx
5. Use your new builder by including the `--builder` flag when running Buildx
commands. For example: :
```console

View File

@@ -67,15 +67,16 @@ target "default" {
For examples on how to add annotations to images built with GitHub Actions, see
[Add image annotations with GitHub Actions](/manuals/build/ci/github-actions/annotations.md)
You can also add annotations to an image created using `docker buildx
imagetools create`. This command only supports adding annotations to an index
You can also add annotations to an image created using
`docker buildx imagetools create`. This command only supports adding annotations to an index
or manifest descriptors, see
[CLI reference](/reference/cli/docker/buildx/imagetools/create/#annotation).
## Inspect annotations
To view annotations on an **image index**, use the `docker buildx imagetools
inspect` command. This shows you any annotations for the index and descriptors
To view annotations on an **image index**, use the
`docker buildx imagetools inspect` command. This shows you any annotations for
the index and descriptors
(references to manifests) that the index contains. The following example shows
an `org.opencontainers.image.documentation` annotation on a descriptor, and an
`org.opencontainers.image.authors` annotation on the index.
@@ -105,8 +106,9 @@ $ docker buildx imagetools inspect <IMAGE> --raw
}
```
To inspect annotations on a manifest, use the `docker buildx imagetools
inspect` command and specify `<IMAGE>@<DIGEST>`, where `<DIGEST>` is the digest
To inspect annotations on a manifest, use the
`docker buildx imagetools inspect` command and specify `<IMAGE>@<DIGEST>`,
where `<DIGEST>` is the digest
of the manifest:
```console {hl_lines="22-25"}
@@ -170,7 +172,7 @@ exporter does not produce an index:
$ docker build --output type=docker --annotation "index:foo=bar" .
```
Likewise, the following example also does not work, because buildx creates a
Likewise, the following example also does not work, because Buildx creates a
`docker` output by default under some circumstances, such as when provenance
attestations are explicitly disabled:

View File

@@ -353,7 +353,7 @@ Buildx detects `Dockerfile.rego` and evaluates it before running the build.
### When policies don't load
If buildx can't find a matching `.rego` file, the build proceeds without policy
If Buildx can't find a matching `.rego` file, the build proceeds without policy
evaluation. To require policies and fail if none are found, use strict mode:
```console

View File

@@ -69,7 +69,7 @@ If you are receiving an error message, see the [troubleshooting section](#troubl
Note the `--runtime` and `--platform` flags used in this command:
- `--runtime=io.containerd.wasmedge.v1`: Informs the Docker engine that you want
- `--runtime=io.containerd.wasmedge.v1`: Informs Docker Engine that you want
to use the Wasm containerd shim instead of the standard Linux container
runtime
- `--platform=wasi/wasm`: Specifies the architecture of the image you want to

View File

@@ -67,7 +67,7 @@ The service performs the following functionalities:
- Ensuring that `host.docker.internal` and `gateway.docker.internal` are defined in the Win32 hosts file. They point to the host local IP address and allow an application to resolve the host IP using the same name from either the host itself or a container.
- Creating the Hyper-V VM `"DockerDesktopVM"` and managing its lifecycle - starting, stopping, and destroying it. The VM name is hard coded in the service code so the service cannot be used for creating or manipulating any other VMs.
- Moving the VHDX file or folder.
- Starting and stopping the Windows Docker engine and querying whether it's running.
- Starting and stopping Windows Docker Engine and querying whether it's running.
- Deleting all Windows containers data files.
- Checking if Hyper-V is enabled.
- Checking if the bootloader activates Hyper-V.

View File

@@ -3,7 +3,7 @@ title: Migrate using Gordon
linktitle: AI-assisted migration
description: Use Gordon to automatically migrate your Dockerfile to Docker Hardened Images
weight: 15
keywords: ai assistant, migrate dockerfile, docker hardened images, automated migration
keywords: ai assistant, migrate Dockerfile, docker hardened images, automated migration
params:
sidebar:
badge:

View File

@@ -37,7 +37,7 @@ processes and don't affect your service's run environment.
* `SOURCE_COMMIT`: the SHA1 hash of the commit being tested.
* `COMMIT_MSG`: the message from the commit being tested and built.
* `DOCKER_REPO`: the name of the Docker repository being built.
* `DOCKERFILE_PATH`: the dockerfile currently being built.
* `DOCKERFILE_PATH`: the Dockerfile currently being built.
* `DOCKER_TAG`: the Docker repository tag being built.
* `IMAGE_NAME`: the name and tag of the Docker repository being built. (This variable is a combination of `DOCKER_REPO`:`DOCKER_TAG`.)

View File

@@ -48,8 +48,8 @@ aliases:
- /installation/sles/
---
This section describes how to install Docker Engine on Linux, also known as
Docker CE. Docker Engine is also available for Windows, macOS, and Linux,
This section describes how to install Docker Engine on Linux. Docker Engine is
also available for Windows, macOS, and Linux,
through Docker Desktop. For instructions on how to install Docker Desktop,
see: [Overview of Docker Desktop](/manuals/desktop/_index.md).

View File

@@ -286,7 +286,7 @@ An example being, NetOps provides VLAN ID and the associated subnets for VLANs
being passed on the Ethernet link to the Docker host server. Those values are
plugged into the `docker network create` commands when provisioning the
Docker networks. These are persistent configurations that are applied every time
the Docker engine starts which alleviates having to manage often complex
Docker Engine starts which alleviates having to manage often complex
configuration files. The network interfaces can also be managed manually by
being pre-created and Docker networking will never modify them, and use them
as parent interfaces. Example mappings from NetOps to Docker network commands

View File

@@ -36,7 +36,7 @@ Btrfs Filesystem as Btrfs.
`btrfs` is supported if you meet the following prerequisites:
- `btrfs` is only recommended with Docker CE on Ubuntu or Debian systems.
- `btrfs` is only recommended with Docker Engine on Ubuntu or Debian systems.
- Changing the storage driver makes any containers you have already
created inaccessible on the local system. Use `docker save` to save containers,

View File

@@ -46,7 +46,7 @@ including nodes, services, tasks, and load balancing.
## Nodes
A node is an instance of the Docker engine participating in the swarm. You can also think of this as a Docker node. You can run one or more nodes on a single physical computer or cloud server, but production swarm deployments typically include Docker nodes distributed across multiple physical and cloud machines.
A node is an instance of Docker Engine participating in the swarm. You can also think of this as a Docker node. You can run one or more nodes on a single physical computer or cloud server, but production swarm deployments typically include Docker nodes distributed across multiple physical and cloud machines.
To deploy your application to a swarm, you submit a service definition to a
manager node. The manager node dispatches units of work called

View File

@@ -124,7 +124,7 @@ $ docker run -it --rm --userns=host alpine
0 100000 65536
```
Docker build operations using `--network-host` and Docker buildx entitlements (`network.host`,
Docker build operations using `--network-host` and Docker Buildx entitlements (`network.host`,
`security.insecure`) are also blocked.
### Protected bind mounts

View File

@@ -122,8 +122,8 @@ Registry Access Management has these limits and platform-specific behaviors:
These scenarios aren't restricted by Registry Access Management:
- Docker buildx with the Kubernetes driver
- Docker buildx with a custom Docker-container driver
- Docker Buildx with the Kubernetes driver
- Docker Buildx with a custom Docker-container driver
- Some Docker Debug and Kubernetes image pulls (even if Docker Hub is blocked)
- Images previously cached by registry mirrors may still be blocked if the
source registry is restricted
@@ -165,4 +165,4 @@ To maximize security effectiveness:
- Ensure development workflows aren't disrupted
- Combine with
[Enhanced Container Isolation](/manuals/enterprise/security/hardened-desktop/enhanced-container-isolation/_index.md)
for broader Desktop security
for broader Desktop security

View File

@@ -72,7 +72,7 @@ Note that, if the Compose file defines many services, the SDK can only contact t
> [!NOTE]
>
> In some cases, it is useful to also interact with the Docker engine from the backend.
> In some cases, it is useful to also interact with Docker Engine from the backend.
> See [How to use the Docker socket](../guides/use-docker-socket-from-backend.md) from the backend.
To communicate with the backend, the Extension SDK provides [functions](../dev/api/backend.md#get) to make `GET`,

View File

@@ -98,7 +98,7 @@ jobs:
This creates workflow steps to:
1. Set up Docker buildx.
1. Set up Docker Buildx.
2. Authenticate to the registry.
3. Extract metadata from Git reference and GitHub events.
4. Build and push the Docker image to the registry.

View File

@@ -171,7 +171,7 @@ If you are unable to update to an unaffected version promptly, follow these best
- [Enhanced Container Isolation](/manuals/enterprise/security/hardened-desktop/enhanced-container-isolation/_index.md), which mitigates the impact of CVE-2024-21626 in the case of running containers from malicious images.
- [Image Access Management](/manuals/enterprise/security/hardened-desktop/image-access-management.md), and [Registry Access Management](/manuals/enterprise/security/hardened-desktop/registry-access-management.md), which give organizations control over which images and repositories their users can access.
- For CVE-2024-23650, CVE-2024-23651, CVE-2024-23652, and CVE-2024-23653, avoid using BuildKit frontend from an untrusted source. A frontend image is usually specified as the #syntax line on your Dockerfile, or with `--frontend` flag when using the `buildctl build` command.
- To mitigate CVE-2024-24557, make sure to either use BuildKit or disable caching when building images. From the CLI this can be done via the `DOCKER_BUILDKIT=1` environment variable (default for Moby >= v23.0 if the buildx plugin is installed) or the `--no-cache flag`. If you are using the HTTP API directly or through a client, the same can be done by setting `nocache` to `true` or `version` to `2` for the [/build API endpoint](https://docs.docker.com/reference/api/engine/version/v1.44/#tag/Image/operation/ImageBuild).
- To mitigate CVE-2024-24557, make sure to either use BuildKit or disable caching when building images. From the CLI this can be done via the `DOCKER_BUILDKIT=1` environment variable (default for Moby >= v23.0 if the Buildx plugin is installed) or the `--no-cache flag`. If you are using the HTTP API directly or through a client, the same can be done by setting `nocache` to `true` or `version` to `2` for the [/build API endpoint](https://docs.docker.com/reference/api/engine/version/v1.44/#tag/Image/operation/ImageBuild).
### Technical details and impact

View File

@@ -29,7 +29,9 @@ fi
echo ""
echo "=== vale ==="
if ! vale --no-global --config="$repo_root/.vale.ini" "$@" 2>&1; then
if ! vale --no-global --config="$repo_root/.vale.ini" sync 2>&1; then
exit_code=1
elif ! vale --no-global --config="$repo_root/.vale.ini" "$@" 2>&1; then
exit_code=1
fi