From fbf879c97f1e3e815155f286d1cdfd416f01b320 Mon Sep 17 00:00:00 2001 From: CrazyMax <1951866+crazy-max@users.noreply.github.com> Date: Thu, 7 Nov 2024 10:48:49 +0100 Subject: [PATCH 01/22] releaser: update go to 1.23 and update dependencies Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com> --- _releaser/Dockerfile | 2 +- _releaser/go.mod | 7 +++---- _releaser/go.sum | 46 +++++++++----------------------------------- 3 files changed, 13 insertions(+), 42 deletions(-) diff --git a/_releaser/Dockerfile b/_releaser/Dockerfile index d8d54024cf4e..11c574d173a0 100644 --- a/_releaser/Dockerfile +++ b/_releaser/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.23 FROM scratch AS sitedir diff --git a/_releaser/go.mod b/_releaser/go.mod index 3232fbe70152..560760169ad8 100644 --- a/_releaser/go.mod +++ b/_releaser/go.mod @@ -1,15 +1,14 @@ module github.com/docker/docs/_releaser -go 1.18 +go 1.22 require ( - github.com/alecthomas/kong v0.7.1 - github.com/aws/aws-sdk-go v1.44.180 + github.com/alecthomas/kong v1.4.0 + github.com/aws/aws-sdk-go v1.55.5 ) require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect - golang.org/x/net v0.17.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect ) diff --git a/_releaser/go.sum b/_releaser/go.sum index 6a266d611645..8a68e163bf9f 100644 --- a/_releaser/go.sum +++ b/_releaser/go.sum @@ -1,51 +1,23 @@ -github.com/alecthomas/assert/v2 v2.1.0 h1:tbredtNcQnoSd3QBhQWI7QZ3XHOVkw1Moklp2ojoH/0= -github.com/alecthomas/kong v0.7.1 h1:azoTh0IOfwlAX3qN9sHWTxACE2oV8Bg2gAwBsMwDQY4= -github.com/alecthomas/kong v0.7.1/go.mod h1:n1iCIO2xS46oE8ZfYCNDqdR0b0wZNrXAIAqro/2132U= -github.com/alecthomas/repr v0.1.0 h1:ENn2e1+J3k09gyj2shc0dHr/yjaWSHRlrJ4DPMevDqE= -github.com/aws/aws-sdk-go v1.44.180 h1:VLZuAHI9fa/3WME5JjpVjcPCNfpGHVMiHx8sLHWhMgI= -github.com/aws/aws-sdk-go v1.44.180/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= +github.com/alecthomas/assert/v2 v2.11.0 h1:2Q9r3ki8+JYXvGsDyBXwH3LcJ+WK5D0gc5E8vS6K3D0= +github.com/alecthomas/assert/v2 v2.11.0/go.mod h1:Bze95FyfUr7x34QZrjL+XP+0qgp/zg8yS+TtBj1WA3k= +github.com/alecthomas/kong v1.4.0 h1:UL7tzGMnnY0YRMMvJyITIRX1EpO6RbBRZDNcCevy3HA= +github.com/alecthomas/kong v1.4.0/go.mod h1:p2vqieVMeTAnaC83txKtXe8FLke2X07aruPWXyMPQrU= +github.com/alecthomas/repr v0.4.0 h1:GhI2A8MACjfegCPVq9f1FLvIBS+DrQ2KQBFZP1iFzXc= +github.com/alecthomas/repr v0.4.0/go.mod h1:Fr0507jx4eOXV7AlPV6AVZLYrLIuIeSOWtW57eE/O/4= +github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU= +github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM= +github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= -golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= -golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= From b759ac65bbda5b4a515fb94c08a43e8e2f42bd87 Mon Sep 17 00:00:00 2001 From: CrazyMax <1951866+crazy-max@users.noreply.github.com> Date: Thu, 7 Nov 2024 10:51:16 +0100 Subject: [PATCH 02/22] releaser(aws): remove type assertion on errors Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com> --- _releaser/aws.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/_releaser/aws.go b/_releaser/aws.go index b6c14e0c3c31..b608b7c5d413 100644 --- a/_releaser/aws.go +++ b/_releaser/aws.go @@ -4,6 +4,7 @@ import ( "archive/zip" "bytes" "encoding/json" + "errors" "fmt" "log" "os" @@ -143,13 +144,14 @@ func (s *AwsCloudfrontUpdateCmd) Run() error { FunctionName: aws.String(s.Function), }) if err != nil { - if aerr, ok := err.(awserr.Error); ok && aerr.Code() != lambda.ErrCodeResourceNotFoundException { + var aerr awserr.Error + if errors.As(err, &aerr) && aerr.Code() != lambda.ErrCodeResourceNotFoundException { return fmt.Errorf("cannot find lambda function %q: %w", s.Function, err) } _, err = svc.CreateFunction(&lambda.CreateFunctionInput{ FunctionName: aws.String(s.Function), }) - if aerr, ok := err.(awserr.Error); ok && aerr.Code() != lambda.ErrCodeResourceConflictException { + if errors.As(err, &aerr) && aerr.Code() != lambda.ErrCodeResourceConflictException { return err } } From 0ec23df99ff5c360bddbbd3d1477f79b4db4970c Mon Sep 17 00:00:00 2001 From: Sarah Sanders Date: Thu, 7 Nov 2024 11:14:05 -0800 Subject: [PATCH 03/22] Update new-plans.md callouts for Dec. 10th date --- content/includes/new-plans.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/includes/new-plans.md b/content/includes/new-plans.md index dec253ec7166..ddee7b250f8c 100644 --- a/content/includes/new-plans.md +++ b/content/includes/new-plans.md @@ -6,8 +6,8 @@ > Docker is introducing enhanced subscription plans. Our new plans are packed > with more features, higher usage limits, and simplified pricing. The new > subscription plans take effect at your next renewal date that occurs on or -> after November 15, 2024. No charges on Docker Hub image pulls or storage will -> be incurred between November 15, 2024, and January 31, 2025. See [Announcing +> after December 10, 2024. No charges on Docker Hub image pulls or storage will +> be incurred before February 28, 2025. See [Announcing > Upgraded Docker > Plans](https://www.docker.com/blog/november-2024-updated-plans-announcement/) > for more details and learn how your usage fits into these updates. \ No newline at end of file From 94d72ed6683997fedd4206d24954a4019d7a6de1 Mon Sep 17 00:00:00 2001 From: Sarah Sanders Date: Thu, 7 Nov 2024 16:04:05 -0800 Subject: [PATCH 04/22] Fix callout in Hub guide --- content/manuals/docker-hub/download-rate-limit.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/manuals/docker-hub/download-rate-limit.md b/content/manuals/docker-hub/download-rate-limit.md index 82afc75af2a7..3830f10a6698 100644 --- a/content/manuals/docker-hub/download-rate-limit.md +++ b/content/manuals/docker-hub/download-rate-limit.md @@ -149,8 +149,8 @@ URLs (`/v2/*/manifests/*`). > Docker is introducing enhanced subscription plans. Our new plans are packed > with more features, higher usage limits, and simplified pricing. The new > subscription plans take effect at your next renewal date that occurs on or -> after November 1, 2024. No charges on Docker Hub image pulls or storage will -> be incurred between November 15, 2024, and January 31, 2025. See [Announcing +> after December 10, 2024. No charges on Docker Hub image pulls or storage will +> be incurred before February 28, 2025. See [Announcing > Upgraded Docker > Plans](https://www.docker.com/blog/november-2024-updated-plans-announcement/) > for more details and learn how your usage fits into these updates. From 894617569ccacdbc260e74bb76dff90f7dfd8126 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 10:56:24 +0100 Subject: [PATCH 05/22] chore: fix "norway problem" in new guide issue template Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/new_guide.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/new_guide.yml b/.github/ISSUE_TEMPLATE/new_guide.yml index ad66eb6e7a36..4d9c4bbc9f1f 100644 --- a/.github/ISSUE_TEMPLATE/new_guide.yml +++ b/.github/ISSUE_TEMPLATE/new_guide.yml @@ -22,4 +22,4 @@ body: and someone (a Docker employee, Docker captain, or community member) may pick it up and start working on it. options: - - label: Yes + - label: "Yes" From 473a19c720f82ac96239811bab77460b55ee4337 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 12:04:33 +0100 Subject: [PATCH 06/22] chore: use dynamic api version in example Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- content/reference/api/engine/_index.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/content/reference/api/engine/_index.md b/content/reference/api/engine/_index.md index 67b163d18d8e..70e79ecebfd2 100644 --- a/content/reference/api/engine/_index.md +++ b/content/reference/api/engine/_index.md @@ -99,15 +99,21 @@ You can specify the API version to use in any of the following ways: that incorporates the API version with the features you need. - When using `curl` directly, specify the version as the first part of the URL. For instance, if the endpoint is `/containers/` you can use - `/v1.47/containers/`. + `/v{{% param "latest_engine_api_version" %}}/containers/`. - To force the Docker CLI or the Docker Engine SDKs to use an older version of the API than the version reported by `docker version`, set the environment variable `DOCKER_API_VERSION` to the correct version. This works on Linux, Windows, or macOS clients. + {{% apiVersionPrevious.inline %}} + {{- $version := site.Params.latest_engine_api_version }} + {{- $parts := strings.Split $version "." }} + {{- $major := cast.ToInt (index $parts 0) }} + {{- $minor := cast.ToInt (index $parts 1) }} ```console - $ DOCKER_API_VERSION=1.46 + $ DOCKER_API_VERSION={{ $major }}.{{ math.Sub $minor 1 }} ``` + {{% /apiVersionPrevious.inline %}} While the environment variable is set, that version of the API is used, even if the Docker daemon supports a newer version. This environment variable From 473edabe0e16125fc52a07ca57cda0473c8f5b5a Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 13:27:39 +0100 Subject: [PATCH 07/22] chore: sort vale vocabulary Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 37e782dc22ba..3771c96d395b 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -72,11 +72,10 @@ IPv[46] IPvlan Intel Intune -Jamf JFrog +Jamf JetBrains Kerberos -[Kk]eyrings? Kitematic Kubernetes LTS @@ -84,15 +83,15 @@ Linux LinuxKit Logstash MAC +MDM Mac Mail(chimp|gun) -MDM Microsoft MySQL NAT +NTLM Netplan Nginx -NTLM Nuxeo OAT OAuth @@ -154,6 +153,7 @@ Zsh [GgCc]oroutine [Hh]ostname [Ii]nfosec +[Kk]eyrings? [Ll]oopback [Mm]oby [Oo]nboarding @@ -165,8 +165,8 @@ Zsh [Ss]wappable [Ss]warm [Tt]oolchains? -[Vv]irtualize [Vv]irtiofs +[Vv]irtualize [Ww]alkthrough cgroup config From f4878e69f2a2aad731bd7715c1939f50e92d2752 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 13:29:26 +0100 Subject: [PATCH 08/22] vale: remove PAT and OAT from vocabulary These acronyms are not well-known enough to be defined as vocabulary terms. Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 3771c96d395b..dc0c64229150 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -93,12 +93,10 @@ NTLM Netplan Nginx Nuxeo -OAT OAuth OCI OTel Okta -PAT PEM Postgres PowerShell From b5364b37891af9adaa74130757fc70fea7d3b19f Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 13:32:49 +0100 Subject: [PATCH 09/22] vale: remove Ambassador from vocabulary Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index dc0c64229150..193e0a07e42d 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -4,7 +4,6 @@ ARM AWS Admin Console Amazon -Ambassador Anchore Apple Artifactory From 64736e4c392861637830f972515430e0d6961571 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 15:02:50 +0100 Subject: [PATCH 10/22] style: s/distro/distribution/g Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- content/manuals/compose/install/linux.md | 6 ++--- content/manuals/compose/install/uninstall.md | 2 +- .../manuals/compose/releases/release-notes.md | 2 +- .../manuals/desktop/features/wsl/_index.md | 18 ++++++------- .../manuals/desktop/features/wsl/use-wsl.md | 6 ++--- .../desktop/previous-versions/2.x-windows.md | 8 +++--- .../edge-releases-windows.md | 10 +++---- content/manuals/desktop/release-notes.md | 26 +++++++++---------- .../settings-and-maintenance/settings.md | 4 +-- .../desktop/setup/install/linux/_index.md | 2 +- .../desktop/use-desktop/resource-saver.md | 4 +-- .../manuals/engine/containers/runmetrics.md | 4 +-- content/manuals/engine/install/_index.md | 20 +++++++------- content/manuals/engine/install/debian.md | 2 +- content/manuals/engine/install/ubuntu.md | 2 +- content/manuals/engine/release-notes/18.09.md | 2 +- content/manuals/engine/release-notes/20.10.md | 6 ++--- .../engine/release-notes/prior-releases.md | 4 +-- content/manuals/engine/security/rootless.md | 4 +-- .../security/faqs/networking-and-vms.md | 2 +- .../limitations.md | 8 +++--- 21 files changed, 71 insertions(+), 71 deletions(-) diff --git a/content/manuals/compose/install/linux.md b/content/manuals/compose/install/linux.md index faffb9cf25f7..22866f705fcd 100644 --- a/content/manuals/compose/install/linux.md +++ b/content/manuals/compose/install/linux.md @@ -25,7 +25,7 @@ For Compose standalone, see [Install Compose Standalone](standalone.md). ## Install using the repository -1. Set up the repository. Find distro-specific instructions in: +1. Set up the repository. Find distribution-specific instructions in: [Ubuntu](/manuals/engine/install/ubuntu.md#install-using-the-repository) | [CentOS](/manuals/engine/install/centos.md#set-up-the-repository) | @@ -43,7 +43,7 @@ For Compose standalone, see [Install Compose Standalone](standalone.md). $ sudo apt-get update $ sudo apt-get install docker-compose-plugin ``` - * For RPM-based distros, run: + * For RPM-based distributions, run: ```console $ sudo yum update @@ -74,7 +74,7 @@ To update the Compose plugin, run the following commands: $ sudo apt-get update $ sudo apt-get install docker-compose-plugin ``` -* For RPM-based distros, run: +* For RPM-based distributions, run: ```console $ sudo yum update diff --git a/content/manuals/compose/install/uninstall.md b/content/manuals/compose/install/uninstall.md index a57d76b1cbb6..2c5ad0cb7cb1 100644 --- a/content/manuals/compose/install/uninstall.md +++ b/content/manuals/compose/install/uninstall.md @@ -24,7 +24,7 @@ Ubuntu, Debian: ```console $ sudo apt-get remove docker-compose-plugin ``` -RPM-based distros: +RPM-based distributions: ```console $ sudo yum remove docker-compose-plugin diff --git a/content/manuals/compose/releases/release-notes.md b/content/manuals/compose/releases/release-notes.md index cdde1b26f804..cf706d447832 100644 --- a/content/manuals/compose/releases/release-notes.md +++ b/content/manuals/compose/releases/release-notes.md @@ -1751,7 +1751,7 @@ For a list of PRs and issues fixed in this release, see [Compose 1.28.3](https:/ - Removed `None` entries on exec command. -- Added `distro` package to get distro information. +- Added `distribution` package to get distribution information. - Added `python-dotenv` to delegate `.env` file processing. diff --git a/content/manuals/desktop/features/wsl/_index.md b/content/manuals/desktop/features/wsl/_index.md index 117ba4640306..0d53cb15d4aa 100644 --- a/content/manuals/desktop/features/wsl/_index.md +++ b/content/manuals/desktop/features/wsl/_index.md @@ -58,11 +58,11 @@ Now `docker` commands work from Windows using the new WSL 2 engine. > If you want to change the location, for example, to another drive you can do so via the `Settings -> Resources -> Advanced` page from the Docker Dashboard. > Read more about this and other Windows settings at [Changing settings](/manuals/desktop/settings-and-maintenance/settings.md) -## Enabling Docker support in WSL 2 distros +## Enabling Docker support in WSL 2 distributions -WSL 2 adds support for "Linux distros" to Windows, where each distro behaves like a VM except they all run on top of a single shared Linux kernel. +WSL 2 adds support for "Linux distributions" to Windows, where each distribution behaves like a VM except they all run on top of a single shared Linux kernel. -Docker Desktop does not require any particular Linux distros to be installed. The `docker` CLI and UI all work fine from Windows without any additional Linux distros. However for the best developer experience, we recommend installing at least one additional distro and enable Docker support: +Docker Desktop does not require any particular Linux distributions to be installed. The `docker` CLI and UI all work fine from Windows without any additional Linux distributions. However for the best developer experience, we recommend installing at least one additional distribution and enable Docker support: 1. Ensure the distribution runs in WSL 2 mode. WSL can run distributions in both v1 or v2 mode. @@ -72,10 +72,10 @@ Docker Desktop does not require any particular Linux distros to be installed. Th $ wsl.exe -l -v ``` - To upgrade the Linux distro to v2, run: + To upgrade the Linux distribution to v2, run: ```console - $ wsl.exe --set-version (distro name) 2 + $ wsl.exe --set-version (distribution name) 2 ``` To set v2 as the default version for future installations, run: @@ -86,19 +86,19 @@ Docker Desktop does not require any particular Linux distros to be installed. Th 2. When Docker Desktop starts, go to **Settings** > **Resources** > **WSL Integration**. - The Docker-WSL integration is enabled on the default WSL distribution, which is [Ubuntu](https://learn.microsoft.com/en-us/windows/wsl/install). To change your default WSL distro, run: + The Docker-WSL integration is enabled on the default WSL distribution, which is [Ubuntu](https://learn.microsoft.com/en-us/windows/wsl/install). To change your default WSL distribution, run: ```console - $ wsl --set-default + $ wsl --set-default ``` 3. Select **Apply & Restart**. > [!NOTE] > -> With Docker Desktop version 4.30 and earlier, Docker Desktop installed two special-purpose internal Linux distros `docker-desktop` and `docker-desktop-data`. `docker-desktop` is used to run the Docker engine `dockerd`, while `docker-desktop-data` stores containers and images. Neither can be used for general development. +> With Docker Desktop version 4.30 and earlier, Docker Desktop installed two special-purpose internal Linux distributions `docker-desktop` and `docker-desktop-data`. `docker-desktop` is used to run the Docker engine `dockerd`, while `docker-desktop-data` stores containers and images. Neither can be used for general development. > > With fresh installations of Docker Desktop 4.30 and later, `docker-desktop-data` is no longer created. Instead, Docker Desktop creates and -> manages its own virtual hard disk for storage. The `docker-desktop` distro is still created and used to run the Docker engine. +> manages its own virtual hard disk for storage. The `docker-desktop` distribution is still created and used to run the Docker engine. > > Note that Docker Desktop version 4.30 and later keeps using the `docker-desktop-data` distribution if it was already created by an earlier version of Docker Desktop and has not been freshly installed or factory reset. diff --git a/content/manuals/desktop/features/wsl/use-wsl.md b/content/manuals/desktop/features/wsl/use-wsl.md index 8d77202c83fe..fc4a7fd40316 100644 --- a/content/manuals/desktop/features/wsl/use-wsl.md +++ b/content/manuals/desktop/features/wsl/use-wsl.md @@ -6,11 +6,11 @@ aliases: - /desktop/wsl/use-wsl/ --- -The following section describes how to start developing your applications using Docker and WSL 2. We recommend that you have your code in your default Linux distribution for the best development experience using Docker and WSL 2. After you have turned on the WSL 2 feature on Docker Desktop, you can start working with your code inside the Linux distro and ideally with your IDE still in Windows. This workflow is straightforward if you are using [VS Code](https://code.visualstudio.com/download). +The following section describes how to start developing your applications using Docker and WSL 2. We recommend that you have your code in your default Linux distribution for the best development experience using Docker and WSL 2. After you have turned on the WSL 2 feature on Docker Desktop, you can start working with your code inside the Linux distribution and ideally with your IDE still in Windows. This workflow is straightforward if you are using [VS Code](https://code.visualstudio.com/download). ## Develop with Docker and WSL 2 -1. Open VS Code and install the [Remote - WSL](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl) extension. This extension lets you work with a remote server in the Linux distro and your IDE client still on Windows. +1. Open VS Code and install the [Remote - WSL](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl) extension. This extension lets you work with a remote server in the Linux distribution and your IDE client still on Windows. 2. Open your terminal and type: ```console @@ -22,7 +22,7 @@ The following section describes how to start developing your applications using $ code . ``` - This opens a new VS Code window connected remotely to your default Linux distro which you can check in the bottom corner of the screen. + This opens a new VS Code window connected remotely to your default Linux distribution which you can check in the bottom corner of the screen. Alternatively, you can open your default Linux distribution from the **Start** menu, navigate to your project directory, and then run `code .` diff --git a/content/manuals/desktop/previous-versions/2.x-windows.md b/content/manuals/desktop/previous-versions/2.x-windows.md index fdeae97381ff..1b20bc5c82dd 100644 --- a/content/manuals/desktop/previous-versions/2.x-windows.md +++ b/content/manuals/desktop/previous-versions/2.x-windows.md @@ -104,15 +104,15 @@ Docker Desktop 2.4.0.0 contains a Kubernetes upgrade. Your local Kubernetes clus ### WSL 2 changes -- Docker contexts are now synced between Windows and WSL distros. +- Docker contexts are now synced between Windows and WSL distributions. - Fixed an issue that intermittently causes the backend to fail to start. - Fixed a proxy crash that happened when glibc was not compatible. See [docker/for-win#8183](https://github.com/docker/for-win/issues/8183). - Fixed an issue when removing a container mounting `/mnt/wsl` would break WSL integration. See [docker/for-win#7836](https://github.com/docker/for-win/issues/7836). -- Added support for mounting files from a distro using the Windows CLI (e.g. `docker run -v \\wsl$\Ubuntu\home\simon\web:/web ...`) +- Added support for mounting files from a distribution using the Windows CLI (e.g. `docker run -v \\wsl$\Ubuntu\home\simon\web:/web ...`) - Fixed the error message when attempting to use a shared volume with a relative path. Fixes [docker/for-win#6894](https://github.com/docker/for-win/issues/6894). - Fixed an issue when updating Windows to a WSL 2 capable version, where a configuration file is locked by the old Hyper-V VM. - Fixed a discrepancy in the version of Docker Compose inside and outside of WSL 2. Fixes [docker/for-win#6461](https://github.com/docker/for-win/issues/6461). -- Detect when the `docker-desktop` wsl distro is stopped and display a clearer error message. +- Detect when the `docker-desktop` wsl distribution is stopped and display a clearer error message. - Fix a race condition when exposing ports. - Enable dialog no longer blocks other windows. @@ -205,7 +205,7 @@ Docker Desktop 2.4.0.0 contains a Kubernetes upgrade. Your local Kubernetes clus **WSL 2** - Docker Desktop only exposes host ports in Linux if the Windows port is available. -- Docker Desktop now allows users to refresh the list of distros. +- Docker Desktop now allows users to refresh the list of distributions. - Docker Desktop defaults to WSL 2 on install on compatible OS versions. - Docker Desktop detects missing Linux kernel and adds a pointer to the Microsoft documentation to download the kernel. - Detect when the WSL 2 backend stops and allow the user to restart it. diff --git a/content/manuals/desktop/previous-versions/edge-releases-windows.md b/content/manuals/desktop/previous-versions/edge-releases-windows.md index 1ef855df011b..619ec747989e 100644 --- a/content/manuals/desktop/previous-versions/edge-releases-windows.md +++ b/content/manuals/desktop/previous-versions/edge-releases-windows.md @@ -179,7 +179,7 @@ the `--privileged` flag. See [docker/for-win#8326](https://github.com/docker/for ### Bug fixes and minor changes -- Fixed an issue with Docker Desktop integration with other WSL 2 distros. See [docker/for-win#6894](https://github.com/docker/for-win/issues/6894) +- Fixed an issue with Docker Desktop integration with other WSL 2 distributions. See [docker/for-win#6894](https://github.com/docker/for-win/issues/6894) - Fixed DNS resolution of short names. See [docker/for-win#4425](https://github.com/docker/for-win/issues/4425) ## Docker Desktop Community 2.3.5.1 @@ -354,7 +354,7 @@ the `--privileged` flag. See [docker/for-win#8326](https://github.com/docker/for - Fixed an upgrade bug where users on versions still using the PowerShell-based VM management experience a silent un-installation crash leading to Docker Desktop being uninstalled instead of upgraded. - Fixed a crash when failing to login due to no Internet connection. - Fixed bug in handling shared volume paths with `..` characters. Fixes [docker/for-win#5375](https://github.com/docker/for-win/issues/5375). -- WSL 2: Docker Desktop detects when the wsl-distro is stopped and displays an actionable error message. +- WSL 2: Docker Desktop detects when the wsl-distribution is stopped and displays an actionable error message. - Fixed a bug in `ftruncate` which prevented [libgit2sharp](https://github.com/libgit2/libgit2sharp) from cloning repositories on shared volumes. See [docker/for-win#5808](https://github.com/docker/for-win/issues/5808#issuecomment-610996272). - Fixed a bug that caused starting and stopping of a Compose application from the UI to fail when the path contains whitespace. @@ -423,7 +423,7 @@ the `--privileged` flag. See [docker/for-win#8326](https://github.com/docker/for **WSL 2** - Docker Desktop only exposes host ports in Linux if the Windows port is available. -- Docker Desktop now allows users to refresh the list of Linux distros. +- Docker Desktop now allows users to refresh the list of Linux distributions. - Docker Desktop defaults to WSL 2 on install on compatible OS versions. - Docker Desktop detects missing Linux kernel and adds a pointer to the Microsoft documentation to download the kernel. @@ -594,8 +594,8 @@ Added the ability to start and stop Compose-based applications and view combined - Fixed a container start error when a container has more than one port with an arbitrary or not-yet-configured external port number. For example, `docker run -p 80 -p 443 nginx`). Fixes [docker/for-win#4935](https://github.com/docker/for-win/issues/4935) and [docker/compose#6998](https://github.com/docker/compose/issues/6998). - Fixed an issue which caused Docker Desktop to crash when resetting to factory defaults while running Windows containers. - Fixed multiple issues related to Fast Startup. -- Injected Docker CLI, CLI plugins, Docker Compose, Notary, and kubectl into WSL distros when Docker Desktop WSL integration is enabled. -- Fixed an issue where bind mounts created with Docker Compose from a WSL distro were incorrectly translated. Fixes [docker/for-win#5084](https://github.com/docker/for-win/issues/5084). +- Injected Docker CLI, CLI plugins, Docker Compose, Notary, and kubectl into WSL distributions when Docker Desktop WSL integration is enabled. +- Fixed an issue where bind mounts created with Docker Compose from a WSL distribution were incorrectly translated. Fixes [docker/for-win#5084](https://github.com/docker/for-win/issues/5084). - Docker Desktop now supports inotify events on shared filesystems for Windows file sharing. - Fixed a cache invalidation bug when a file in a shared volume is renamed on the host for Windows file sharing. - Fixed a handle leak when calling `Mknod` on a shared volume for Windows file sharing. diff --git a/content/manuals/desktop/release-notes.md b/content/manuals/desktop/release-notes.md index 7d34d886cc8c..4028bbe14644 100644 --- a/content/manuals/desktop/release-notes.md +++ b/content/manuals/desktop/release-notes.md @@ -202,7 +202,7 @@ Take a look at the [Docker Public Roadmap](https://github.com/orgs/docker/projec - Fixed a bug where Docker Desktop would reset docker's `credsStore` to `desktop` when the user's intention is to keep it empty. Fixes [docker/for-win#9843](https://github.com/docker/for-win/issues/9843). - Fixed a bug that would cause Docker Desktop to not start in the WSL2 engine [docker/for-win#14034](https://github.com/docker/for-win/issues/14034). -- Fixed a bug that caused WSL distro to terminate abruptly. Fixes [docker/for-win/14230](https://github.com/docker/for-win/issues/14230). +- Fixed a bug that caused WSL distribution to terminate abruptly. Fixes [docker/for-win/14230](https://github.com/docker/for-win/issues/14230). - Fixed an issue that caused WSL to update in each startup. Fixes [docker/for-win/13868](https://github.com/docker/for-win/issues/13868), [docker/for-win/13806](https://github.com/docker/for-win/issues/13806). ### Known issues @@ -615,7 +615,7 @@ This can be resolved by adding the user to the **docker-users** group. Before st #### For Windows - Fixed a bug where `docker run -v` would fail after switching between WSL 2 and Hyper-V. -- Fixed a bug where Docker Desktop was not stopping its WSL distros (`docker-desktop` and `docker-desktop-data`) when it was shutdown. Fixes [docker/for-win/issues/13443](https://github.com/docker/for-win/issues/13443) and [docker/for-win/issues/13938](https://github.com/docker/for-win/issues/13938). +- Fixed a bug where Docker Desktop was not stopping its WSL distributions (`docker-desktop` and `docker-desktop-data`) when it was shutdown. Fixes [docker/for-win/issues/13443](https://github.com/docker/for-win/issues/13443) and [docker/for-win/issues/13938](https://github.com/docker/for-win/issues/13938). #### For Linux @@ -689,7 +689,7 @@ This can be resolved by adding the user to the **docker-users** group. Before st #### For Windows - Fixed an issue with DNS timeouts on Windows. -- Added support for Enhanced Container Isolation Docker socket mount permission on WSL user distros. +- Added support for Enhanced Container Isolation Docker socket mount permission on WSL user distributions. - Fixed an issue that caused the `failed to get console mode` error when redirecting output from the CLI. - Fixed an issue with the engine socket permissions when mounted inside containers. Fixes [docker/for-win#13898](https://github.com/docker/for-win/issues/13898) @@ -1312,13 +1312,13 @@ This can be resolved by adding the user to the **docker-users** group. Before st - Fixed a bug on WSL 2 where if Desktop is paused, killed, and then restarted, the startup hangs unless WSL is shut down first with `wsl --shutdown`. - Fixed the WSL engine in cases where wsl.exe is not on the PATH [docker/for-win#13547](https://github.com/docker/for-win/issues/13547). -- Fixed the WSL engine's ability to detect cases where one of the Docker Desktop distros' drive is missing [docker/for-win#13554](https://github.com/docker/for-win/issues/13554). +- Fixed the WSL engine's ability to detect cases where one of the Docker Desktop distributions' drive is missing [docker/for-win#13554](https://github.com/docker/for-win/issues/13554). - A slow or unresponsive WSL integration no longer prevents Docker Desktop from starting. Fixes [docker/for-win#13549](https://github.com/docker/for-win/issues/13549). - Fixed a bug that caused Docker Desktop to crash on startup [docker/for-win#6890](https://github.com/docker/for-mac/issues/6890). - Added the following installer flags: - `--hyper-v-default-data-root` which specifies the default location for Hyper-V VM disk. - `--windows-containers-default-data-root` which specifies the default data root for Windows Containers. - - `--wsl-default-data-root` which specifies the default location for WSL distro disks. + - `--wsl-default-data-root` which specifies the default location for WSL distribution disks. ## 4.20.1 @@ -1367,7 +1367,7 @@ This can be resolved by adding the user to the **docker-users** group. Before st #### For Windows - Fixed a bug that meant WSL data could not be moved to a different disk. Fixes [docker/for-win#13269](https://github.com/docker/for-win/issues/13269). -- Fixed a bug where Docker Desktop was not stopping its WSL distros (docker-desktop and docker-desktop-data) when it was shutdown, consuming host memory unnecessarily. +- Fixed a bug where Docker Desktop was not stopping its WSL distributions (docker-desktop and docker-desktop-data) when it was shutdown, consuming host memory unnecessarily. - Added a new setting that allows the Windows Docker daemon to use Docker Desktop's internal proxy when running Windows containers. See [Windows proxy settings](/manuals/desktop/settings-and-maintenance/settings.md#proxies). #### For Linux @@ -1581,11 +1581,11 @@ This can be resolved by adding the user to the **docker-users** group. Before st ### For Windows -- Added statical linking of WSL integration tools against `musl` so there is no need to install `alpine-pkg-glibc` in user distros. +- Added statical linking of WSL integration tools against `musl` so there is no need to install `alpine-pkg-glibc` in user distributions. - Added support for running under cgroupv2 on WSL 2. This is activated by adding `kernelCommandLine = systemd.unified_cgroup_hierarchy=1 cgroup_no_v1=all` to your `%USERPROFILE%\.wslconfig` file in the `[wsl2]` section. - Fixed an issue that caused Docker Desktop to get stuck in the "starting" phase when in WSL 2 mode (introduced in 4.16). - Fixed Docker Desktop failing to start the WSL 2 backend when file system compression or encryption is enabled on `%LOCALAPPDATA%`. -- Fixed Docker Desktop failing to report a missing or outdated (incapable of running WSL version 2 distros) WSL installation when starting. +- Fixed Docker Desktop failing to report a missing or outdated (incapable of running WSL version 2 distributions) WSL installation when starting. - Fixed a bug where opening in Visual Studio Code fails if the target path has a space. - Fixed a bug that causes `~/.docker/context` corruption and the error message "unexpected end of JSON input". You can also remove `~/.docker/context` to work around this problem. - Ensured the credential helper used in WSL 2 is properly signed. Related to [docker/for-win#10247](https://github.com/docker/for-win/issues/10247). @@ -2012,7 +2012,7 @@ This can be resolved by adding the user to the **docker-users** group. Before st #### For Windows -- Fixed `docker login` to private registries from WSL2 distro [docker/for-win#12871](https://github.com/docker/for-win/issues/12871) +- Fixed `docker login` to private registries from WSL2 distribution [docker/for-win#12871](https://github.com/docker/for-win/issues/12871) ## 4.11.0 @@ -2758,7 +2758,7 @@ actual memory usage. See #### For Windows -- Fixed a regression in WSL 2 integrations for some distros (e.g. Arch or Alpine). Fixes [docker/for-win#12229](https://github.com/docker/for-win/issues/12229) +- Fixed a regression in WSL 2 integrations for some distributions (e.g. Arch or Alpine). Fixes [docker/for-win#12229](https://github.com/docker/for-win/issues/12229) - Fixed update notification overlay sometimes getting out of sync between the Settings button and the Software update button in the Dashboard. ## 4.1.0 @@ -2779,7 +2779,7 @@ actual memory usage. See - [Go 1.17.1](https://github.com/golang/go/releases/tag/go1.17.1) - [Alpine 3.14](https://alpinelinux.org/posts/Alpine-3.14.0-released.html) - [Qemu 6.1.0](https://wiki.qemu.org/ChangeLog/6.1) -- Base distro to debian:bullseye +- Base distribution to debian:bullseye ### Bug fixes and minor changes @@ -2791,7 +2791,7 @@ actual memory usage. See - Fixed CLI context switch sync with UI. See [docker/for-win#11721](https://github.com/docker/for-win/issues/11721). - Added the key `vpnKitMaxPortIdleTime` to `settings.json` to allow the idle network connection timeout to be disabled or extended. - Fixed a crash on exit. See [docker/for-win#12128](https://github.com/docker/for-win/issues/12128). -- Fixed a bug where the CLI tools would not be available in WSL 2 distros. +- Fixed a bug where the CLI tools would not be available in WSL 2 distributions. - Fixed switching from Linux to Windows containers that was stuck because access rights on panic.log. See [for-win#11899](https://github.com/docker/for-win/issues/11899). ### Known Issues @@ -2857,5 +2857,5 @@ For more information, see [Docker subscription overview](../subscription/_index. #### For Windows -- Fixed a bug where the CLI tools would not be available in WSL 2 distros. +- Fixed a bug where the CLI tools would not be available in WSL 2 distributions. - Fixed a bug when switching from Linux to Windows containers due to access rights on `panic.log`. [for-win#11899](https://github.com/docker/for-win/issues/11899) diff --git a/content/manuals/desktop/settings-and-maintenance/settings.md b/content/manuals/desktop/settings-and-maintenance/settings.md index 149c328e9cb2..9080ee5e2e85 100644 --- a/content/manuals/desktop/settings-and-maintenance/settings.md +++ b/content/manuals/desktop/settings-and-maintenance/settings.md @@ -313,8 +313,8 @@ On Windows in WSL 2 mode, you can configure which WSL 2 distributions will have WSL integration. By default, the integration is enabled on your default WSL distribution. -To change your default WSL distro, run `wsl --set-default `. (For example, -to set Ubuntu as your default WSL distro, run `wsl --set-default ubuntu`). +To change your default WSL distribution, run `wsl --set-default `. (For example, +to set Ubuntu as your default WSL distribution, run `wsl --set-default ubuntu`). You can also select any additional distributions you would like to enable the WSL 2 integration on. diff --git a/content/manuals/desktop/setup/install/linux/_index.md b/content/manuals/desktop/setup/install/linux/_index.md index 185c6807a70a..5cd8e9f3ab98 100644 --- a/content/manuals/desktop/setup/install/linux/_index.md +++ b/content/manuals/desktop/setup/install/linux/_index.md @@ -138,7 +138,7 @@ To install Docker Desktop successfully, your Linux host must meet the following - QEMU must be version 5.2 or later. We recommend upgrading to the latest version. - systemd init system. - Gnome, KDE, or MATE Desktop environment. - - For many Linux distros, the Gnome environment does not support tray icons. To add support for tray icons, you need to install a Gnome extension. For example, [AppIndicator](https://extensions.gnome.org/extension/615/appindicator-support/). + - For many Linux distributions, the Gnome environment does not support tray icons. To add support for tray icons, you need to install a Gnome extension. For example, [AppIndicator](https://extensions.gnome.org/extension/615/appindicator-support/). - At least 4 GB of RAM. - Enable configuring ID mapping in user namespaces, see [File sharing](/manuals/desktop/troubleshoot-and-support/faqs/linuxfaqs.md#how-do-i-enable-file-sharing). Note that for Docker Desktop version 4.35 and later, this is not required anymore. - Recommended: [Initialize `pass`](/manuals/desktop/setup/sign-in.md#credentials-management-for-linux-users) for credentials management. diff --git a/content/manuals/desktop/use-desktop/resource-saver.md b/content/manuals/desktop/use-desktop/resource-saver.md index 9d4dcb57baf2..4b14ec6dd2c3 100644 --- a/content/manuals/desktop/use-desktop/resource-saver.md +++ b/content/manuals/desktop/use-desktop/resource-saver.md @@ -63,8 +63,8 @@ feature, as it results in much better CPU and memory savings. Resource Saver works a bit differently on Windows with WSL. Instead of stopping the WSL VM, it only pauses the Docker Engine inside the -`docker-desktop` WSL distro. That's because in WSL there's a single Linux VM -shared by all WSL distros, so Docker Desktop can't stop the Linux VM (i.e., +`docker-desktop` WSL distribution. That's because in WSL there's a single Linux VM +shared by all WSL distributions, so Docker Desktop can't stop the Linux VM (i.e., the WSL Linux VM is not owned by Docker Desktop). As a result, Resource Saver reduces CPU utilization on WSL, but it does not reduce Docker's memory utilization. diff --git a/content/manuals/engine/containers/runmetrics.md b/content/manuals/engine/containers/runmetrics.md index d16b06be9346..2f95b808ea06 100644 --- a/content/manuals/engine/containers/runmetrics.md +++ b/content/manuals/engine/containers/runmetrics.md @@ -38,7 +38,7 @@ CPU, memory, and block I/O usage. You can access those metrics and obtain network usage metrics as well. This is relevant for "pure" LXC containers, as well as for Docker containers. -Control groups are exposed through a pseudo-filesystem. In modern distros, you +Control groups are exposed through a pseudo-filesystem. In modern distributions, you should find this filesystem under `/sys/fs/cgroup`. Under that directory, you see multiple sub-directories, called `devices`, `freezer`, `blkio`, and so on. Each sub-directory actually corresponds to a different cgroup hierarchy. @@ -151,7 +151,7 @@ more pseudo-files exist and contain statistics. Memory metrics are found in the `memory` cgroup. The memory control group adds a little overhead, because it does very fine-grained -accounting of the memory usage on your host. Therefore, many distros +accounting of the memory usage on your host. Therefore, many distributions chose to not enable it by default. Generally, to enable it, all you have to do is to add some kernel command-line parameters: `cgroup_enable=memory swapaccount=1`. diff --git a/content/manuals/engine/install/_index.md b/content/manuals/engine/install/_index.md index 58d73fc6f163..5450ed0bb4f1 100644 --- a/content/manuals/engine/install/_index.md +++ b/content/manuals/engine/install/_index.md @@ -54,32 +54,32 @@ through Docker Desktop. For instructions on how to install Docker Desktop, see: | [Ubuntu](ubuntu.md) | ✅ | ✅ | ✅ | ✅ | ✅ | | [Binaries](binaries.md) | ✅ | ✅ | ✅ | | | -### Other Linux distros +### Other Linux distributions > [!NOTE] > > While the following instructions may work, Docker doesn't test or verify -> installation on distro derivatives. +> installation on distribution derivatives. - If you use Debian derivatives such as "BunsenLabs Linux", "Kali Linux" or "LMDE" (Debian-based Mint) should follow the installation instructions for - [Debian](debian.md), substitute the version of your distro for the - corresponding Debian release. Refer to the documentation of your distro to find + [Debian](debian.md), substitute the version of your distribution for the + corresponding Debian release. Refer to the documentation of your distribution to find which Debian release corresponds with your derivative version. - Likewise, if you use Ubuntu derivatives such as "Kubuntu", "Lubuntu" or "Xubuntu" you should follow the installation instructions for [Ubuntu](ubuntu.md), - substituting the version of your distro for the corresponding Ubuntu release. - Refer to the documentation of your distro to find which Ubuntu release + substituting the version of your distribution for the corresponding Ubuntu release. + Refer to the documentation of your distribution to find which Ubuntu release corresponds with your derivative version. -- Some Linux distros provide a package of Docker Engine through their +- Some Linux distributions provide a package of Docker Engine through their package repositories. These packages are built and maintained by the Linux - distro's package maintainers and may have differences in configuration + distribution's package maintainers and may have differences in configuration or are built from modified source code. Docker isn't involved in releasing these packages and you should report any bugs or issues involving these packages to - your Linux distro's issue tracker. + your Linux distribution's issue tracker. Docker provides [binaries](binaries.md) for manual installation of Docker Engine. -These binaries are statically linked and you can use them on any Linux distro. +These binaries are statically linked and you can use them on any Linux distribution. ## Release channels diff --git a/content/manuals/engine/install/debian.md b/content/manuals/engine/install/debian.md index ebb0b94d56b6..d43a24a67e96 100644 --- a/content/manuals/engine/install/debian.md +++ b/content/manuals/engine/install/debian.md @@ -123,7 +123,7 @@ Docker from the repository. > [!NOTE] > - > If you use a derivative distro, such as Kali Linux, + > If you use a derivative distribution, such as Kali Linux, > you may need to substitute the part of this command that's expected to > print the version codename: > diff --git a/content/manuals/engine/install/ubuntu.md b/content/manuals/engine/install/ubuntu.md index 0989b8cec43b..00f23e7f2ed2 100644 --- a/content/manuals/engine/install/ubuntu.md +++ b/content/manuals/engine/install/ubuntu.md @@ -134,7 +134,7 @@ Docker from the repository. > [!NOTE] > - > If you use an Ubuntu derivative distro, such as Linux Mint, + > If you use an Ubuntu derivative distribution, such as Linux Mint, > you may need to use `UBUNTU_CODENAME` instead of `VERSION_CODENAME`. 2. Install the Docker packages. diff --git a/content/manuals/engine/release-notes/18.09.md b/content/manuals/engine/release-notes/18.09.md index 535bcc3ad626..b01c055012d6 100644 --- a/content/manuals/engine/release-notes/18.09.md +++ b/content/manuals/engine/release-notes/18.09.md @@ -16,7 +16,7 @@ toc_max: 2 > ``` > > See the [installation instructions](../install/_index.md) for the corresponding -> Linux distro for details. +> Linux distribution for details. ## 18.09.9 2019-09-03 diff --git a/content/manuals/engine/release-notes/20.10.md b/content/manuals/engine/release-notes/20.10.md index 2e93cc8e7728..e526d7c3f1b2 100644 --- a/content/manuals/engine/release-notes/20.10.md +++ b/content/manuals/engine/release-notes/20.10.md @@ -50,7 +50,7 @@ Docker Buildx, containerd, and some minor bug fixes and enhancements. - Update Docker Compose to [v2.15.1](https://github.com/docker/compose/releases/tag/v2.15.1). - Update Docker Buildx to [v0.10.0](https://github.com/docker/buildx/releases/tag/v0.10.0). - Update containerd (`containerd.io` package) to [v1.6.15](https://github.com/containerd/containerd/releases/tag/v1.6.15). -- Update the package versioning format for `docker-compose-cli` to allow distro version updates [docker/docker-ce-packaging#822](https://github.com/docker/docker-ce-packaging/pull/822). +- Update the package versioning format for `docker-compose-cli` to allow distribution version updates [docker/docker-ce-packaging#822](https://github.com/docker/docker-ce-packaging/pull/822). - Update Go runtime to [1.18.10](https://go.dev/doc/devel/release#go1.18.minor), ### Bug fixes and enhancements @@ -365,13 +365,13 @@ the latest version. Use the instructions below to update `docker scan` to the la version. You can also use these instructions to install, or upgrade the `docker scan` package without upgrading the Docker Engine: -On `.deb` based distros, such as Ubuntu and Debian: +On `.deb` based distributions, such as Ubuntu and Debian: ```console $ apt-get update && apt-get install docker-scan-plugin ``` -On rpm-based distros, such as CentOS or Fedora: +On rpm-based distributions, such as CentOS or Fedora: ```console $ yum install docker-scan-plugin diff --git a/content/manuals/engine/release-notes/prior-releases.md b/content/manuals/engine/release-notes/prior-releases.md index 5ed930e7f62d..e8bbc5a33603 100644 --- a/content/manuals/engine/release-notes/prior-releases.md +++ b/content/manuals/engine/release-notes/prior-releases.md @@ -518,7 +518,7 @@ systemctl restart docker` to reload changes and (re)start the docker daemon. - Run "dnf upgrade" before installing in fedora [#29150](https://github.com/docker/docker/pull/29150) - Add build-date back to RPM packages [#29150](https://github.com/docker/docker/pull/29150) -- deb package filename changed to include distro to distinguish between distro code names [#27829](https://github.com/docker/docker/pull/27829) +- deb package filename changed to include distribution to distinguish between distribution code names [#27829](https://github.com/docker/docker/pull/27829) ## 1.12.3 (2016-10-26) @@ -704,7 +704,7 @@ systemctl restart docker` to reload changes and (re)start the docker daemon. ### Contrib + Official ARM installation for Debian Jessie, Ubuntu Trusty, and Raspbian Jessie [#24815](https://github.com/docker/docker/pull/24815) [#25591](https://github.com/docker/docker/pull/25637) -- Add selinux policy per distro/version, fixing issue preventing successful installation on Fedora 24, and Oracle Linux [#25334](https://github.com/docker/docker/pull/25334) [#25593](https://github.com/docker/docker/pull/25593) +- Add selinux policy per distribution/version, fixing issue preventing successful installation on Fedora 24, and Oracle Linux [#25334](https://github.com/docker/docker/pull/25334) [#25593](https://github.com/docker/docker/pull/25593) ### Networking diff --git a/content/manuals/engine/security/rootless.md b/content/manuals/engine/security/rootless.md index c22f878d2631..4b78bdf34e6c 100644 --- a/content/manuals/engine/security/rootless.md +++ b/content/manuals/engine/security/rootless.md @@ -27,7 +27,7 @@ UIDs/GIDs to be used in the user namespace. ## Prerequisites - You must install `newuidmap` and `newgidmap` on the host. These commands - are provided by the `uidmap` package on most distros. + are provided by the `uidmap` package on most distributions. - `/etc/subuid` and `/etc/subgid` should contain at least 65,536 subordinate UIDs/GIDs for the user. In the following example, the user `testuser` has @@ -123,7 +123,7 @@ testuser:231072:65536 This step is not required on openSUSE Tumbleweed. - `sudo modprobe ip_tables iptable_mangle iptable_nat iptable_filter` is required. - This might be required on other distros as well depending on the configuration. + This might be required on other distributions as well depending on the configuration. - Known to work on openSUSE 15 and SLES 15. {{< /tab >}} diff --git a/content/manuals/security/faqs/networking-and-vms.md b/content/manuals/security/faqs/networking-and-vms.md index 546ae7114dac..39df4646213b 100644 --- a/content/manuals/security/faqs/networking-and-vms.md +++ b/content/manuals/security/faqs/networking-and-vms.md @@ -35,4 +35,4 @@ On Mac it is an unprivileged operation to start a VM, so that is not enforced by ### How does Docker Desktop achieve network level isolation when Hyper-V and/or WSL2 is used? -The VM processes are the same for both WSL 2 (running inside the `docker-desktop` distro) and Hyper-V (running inside the `DockerDesktopVM`). Host/VM communication uses `AF_VSOCK` hypervisor sockets (shared memory). It does not use Hyper-V network switches or network interfaces. All host networking is performed using normal TCP/IP sockets from the `com.docker.vpnkit.exe` and `com.docker.backend.exe` processes. For more information see [How Docker Desktop networking works under the hood](https://www.docker.com/blog/how-docker-desktop-networking-works-under-the-hood/). +The VM processes are the same for both WSL 2 (running inside the `docker-desktop` distribution) and Hyper-V (running inside the `DockerDesktopVM`). Host/VM communication uses `AF_VSOCK` hypervisor sockets (shared memory). It does not use Hyper-V network switches or network interfaces. All host networking is performed using normal TCP/IP sockets from the `com.docker.vpnkit.exe` and `com.docker.backend.exe` processes. For more information see [How Docker Desktop networking works under the hood](https://www.docker.com/blog/how-docker-desktop-networking-works-under-the-hood/). diff --git a/content/manuals/security/for-admins/hardened-desktop/enhanced-container-isolation/limitations.md b/content/manuals/security/for-admins/hardened-desktop/enhanced-container-isolation/limitations.md index 96eb70aa2c0a..58d519427869 100644 --- a/content/manuals/security/for-admins/hardened-desktop/enhanced-container-isolation/limitations.md +++ b/content/manuals/security/for-admins/hardened-desktop/enhanced-container-isolation/limitations.md @@ -36,9 +36,9 @@ Note however that ECI on WSL is not as secure as on Hyper-V because: ECI on Hyper-V does not allow Docker Desktop users to breach the Docker Desktop Linux VM. -* With WSL 2, all WSL 2 distros on the same Windows host share the same instance +* With WSL 2, all WSL 2 distributions on the same Windows host share the same instance of the Linux kernel. As a result, Docker Desktop can't ensure the integrity of - the kernel in the Docker Desktop Linux VM since another WSL 2 distro could + the kernel in the Docker Desktop Linux VM since another WSL 2 distribution could modify shared kernel settings. In contrast, when using Hyper-V, the Docker Desktop Linux VM has a dedicated kernel that is solely under the control of Docker Desktop. @@ -53,8 +53,8 @@ The table below summarizes this. In general, using ECI with Hyper-V is more secure than with WSL 2. But WSL 2 offers advantages for performance and resource utilization on the host machine, -and it's an excellent way for users to run their favorite Linux distro on -Windows hosts and access Docker from within (see Docker Desktop's WSL distro +and it's an excellent way for users to run their favorite Linux distribution on +Windows hosts and access Docker from within (see Docker Desktop's WSL distribution integration feature, enabled via the Dashboard's **Settings** > **Resources** > **WSL Integration**). ### ECI protection for Docker Builds with the "Docker" driver From 7b7ef844ccf6c4cb9ee9a175f5ca1a6fb0cb2043 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:51:17 +0100 Subject: [PATCH 11/22] vale: suggest "distribution" over "distro" Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/RecommendedWords.yml | 1 + _vale/config/vocabularies/Docker/accept.txt | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/_vale/Docker/RecommendedWords.yml b/_vale/Docker/RecommendedWords.yml index c4bd532dfbf1..baa8d0e6d921 100644 --- a/_vale/Docker/RecommendedWords.yml +++ b/_vale/Docker/RecommendedWords.yml @@ -31,6 +31,7 @@ swap: check box: checkbox check boxes: checkboxes click: select + distro: distribution ergo: therefore file name: filename keypress: keystroke diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 193e0a07e42d..09210a0f5b87 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -144,7 +144,6 @@ Zsh [Bb]uildx [Cc]odenames? [Cc]ompose -[Dd]istros [Ff]ilepaths? [Ff]iletypes? [GgCc]oroutine From d2038b48373b36f957b139c6b3a675ab358d8a2f Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 15:05:05 +0100 Subject: [PATCH 12/22] vale: add distroless to vocabulary Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 09210a0f5b87..62c1deeab73c 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -144,6 +144,7 @@ Zsh [Bb]uildx [Cc]odenames? [Cc]ompose +[Dd]istroless [Ff]ilepaths? [Ff]iletypes? [GgCc]oroutine From 1829e8597c5ce079ad54056ab91ac68b11c5fc48 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:56:19 +0100 Subject: [PATCH 13/22] vale: add GNU to acronym exceptions Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/Acronyms.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/_vale/Docker/Acronyms.yml b/_vale/Docker/Acronyms.yml index c1fa32d44838..cd5052d3e268 100644 --- a/_vale/Docker/Acronyms.yml +++ b/_vale/Docker/Acronyms.yml @@ -32,6 +32,7 @@ exceptions: - GDB - GET - GHSA + - GNU - GPU - GTK - GUI From 9f87432f431562a93149e437f6ae54c927324f96 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 13:33:59 +0100 Subject: [PATCH 14/22] vale: move acronyms from vocabulary to Acronyms rule Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/Acronyms.yml | 33 +++++++++++++++++ _vale/config/vocabularies/Docker/accept.txt | 40 --------------------- 2 files changed, 33 insertions(+), 40 deletions(-) diff --git a/_vale/Docker/Acronyms.yml b/_vale/Docker/Acronyms.yml index cd5052d3e268..8753e6e8e5f7 100644 --- a/_vale/Docker/Acronyms.yml +++ b/_vale/Docker/Acronyms.yml @@ -14,13 +14,18 @@ exceptions: - AUFS - AWS - BIOS + - CISA - CLI + - CNCF + - CORS - CPU - CSS - CSV - CVE - DCT - DEBUG + - DHCP + - DNS - DOM - DPI - DSOS @@ -33,53 +38,81 @@ exceptions: - GET - GHSA - GNU + - GPG - GPU + - GRUB - GTK - GUI - HEAD - HTML - HTTP - HTTPS + - IAM - IDE - JAR - JSON - JSX - LESS - LLDB + - LTS + - MAC + - MDM + - NAT - NET - NFS - NOTE + - NTLM - NVDA + - OCI - OSS - PATH - PDF + - PEM - PHP - POSIX - POST + - QEMU - RAM - REPL - REST + - RHEL + - RPM - RSA + - SAML + - SARIF - SBOM + - SCIM - SCM - SCSS - SDK + - SLES + - SLSA + - SPDX - SQL - SSD - SSH - SSL + - SSO - SVG - TBD - TCP + - TCP - TIP + - TLS - TODO - TTY + - TXT + - UDP - URI - URL - USB - USD - UTF + - UUID - VAT + - VLAN + - VM + - VPN - WSL - XML - XSS diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index 62c1deeab73c..ed31d372827d 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -1,7 +1,5 @@ A?GPL(v3)? APIs? -ARM -AWS Admin Console Amazon Anchore @@ -13,9 +11,6 @@ Azure Btrfs BuildKit BusyBox -CISA -CNCF -CORS CVEs? CentOS Ceph @@ -26,10 +21,6 @@ Codefresh Codespaces CouchDB Couchbase -DHCP -DNS -DSOS -DVP Datadog Ddosify Debootstrap @@ -54,18 +45,14 @@ Ethernet Fargate Fedora Flink -GPG GPUs? -GRUB GeoNetwork Git GitHub( Actions)? Google Grafana Gravatar -HTTP HyperKit -IAM IPs? IPv[46] IPvlan @@ -77,65 +64,38 @@ JetBrains Kerberos Kitematic Kubernetes -LTS Linux LinuxKit Logstash -MAC -MDM Mac Mail(chimp|gun) Microsoft MySQL -NAT -NTLM Netplan Nginx Nuxeo OAuth -OCI OTel Okta -PEM Postgres PowerShell Python -QEMU -RHEL -RPM S3 -SAML -SARIF SBOMs? -SCIM SDKs? -SLES -SLSA -SPDX SQLite -SSH -SSO Slack Snyk Solr SonarQube Syft Sysdig -TCP -TLS -TXT Testcontainers Traefik -UDP URLs? -UUID Ubuntu Unix -VLAN -VM VMware -VPN -WSL Wasm Windows WireMock From e9effe92f1f5c774493215e7c5d864d4000dfd04 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:05:16 +0100 Subject: [PATCH 15/22] vale: remove AGPLv3 from vocabulary Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index ed31d372827d..add21f935f66 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -1,4 +1,3 @@ -A?GPL(v3)? APIs? Admin Console Amazon From d3d0b9605d5dc6b0cad624de57a833c098b1488e Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:08:11 +0100 Subject: [PATCH 16/22] vale: add GPL, AGPL to acronym exceptions Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/Acronyms.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/_vale/Docker/Acronyms.yml b/_vale/Docker/Acronyms.yml index 8753e6e8e5f7..9c79996b59ea 100644 --- a/_vale/Docker/Acronyms.yml +++ b/_vale/Docker/Acronyms.yml @@ -8,6 +8,7 @@ first: '\b([A-Z]{3,5})\b' second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' # ... with the exception of these: exceptions: + - AGPL - API - ARM - ASP @@ -39,6 +40,7 @@ exceptions: - GHSA - GNU - GPG + - GPL - GPU - GRUB - GTK From c646f079ea322612981c05b45c763a0d19dc0cbc Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:16:58 +0100 Subject: [PATCH 17/22] vale: add pluralized acronyms to vocabulary Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/config/vocabularies/Docker/accept.txt | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index add21f935f66..d57f2cf9f07c 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -1,4 +1,4 @@ -APIs? +(?-i)[A-Z]{3,}s Admin Console Amazon Anchore @@ -10,7 +10,6 @@ Azure Btrfs BuildKit BusyBox -CVEs? CentOS Ceph Chrome @@ -44,7 +43,6 @@ Ethernet Fargate Fedora Flink -GPUs? GeoNetwork Git GitHub( Actions)? @@ -80,8 +78,6 @@ Postgres PowerShell Python S3 -SBOMs? -SDKs? SQLite Slack Snyk @@ -91,7 +87,6 @@ Syft Sysdig Testcontainers Traefik -URLs? Ubuntu Unix VMware From 8e2705bedf6592f30c51ab3a8af2f553ee381c64 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:27:59 +0100 Subject: [PATCH 18/22] vale: also check for two-letter acronyms Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/Acronyms.yml | 4 ++-- _vale/config/vocabularies/Docker/accept.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/_vale/Docker/Acronyms.yml b/_vale/Docker/Acronyms.yml index 9c79996b59ea..de20a92c1e09 100644 --- a/_vale/Docker/Acronyms.yml +++ b/_vale/Docker/Acronyms.yml @@ -4,8 +4,8 @@ link: https://docs.docker.com/contribute/style/grammar/#acronyms-and-initialisms level: warning ignorecase: false # Ensures that the existence of 'first' implies the existence of 'second'. -first: '\b([A-Z]{3,5})\b' -second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' +first: '\b([A-Z]{2,5})\b' +second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{2,5})\)' # ... with the exception of these: exceptions: - AGPL diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index d57f2cf9f07c..d245ef2c7e17 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -1,4 +1,4 @@ -(?-i)[A-Z]{3,}s +(?-i)[A-Z]{2,}s Admin Console Amazon Anchore From 03120e91a47a4406ce77b442405515c46913015c Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:44:37 +0100 Subject: [PATCH 19/22] vale: move IP from vocabulary to Acronyms rule Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- _vale/Docker/Acronyms.yml | 1 + _vale/config/vocabularies/Docker/accept.txt | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/_vale/Docker/Acronyms.yml b/_vale/Docker/Acronyms.yml index de20a92c1e09..b71ca8873d70 100644 --- a/_vale/Docker/Acronyms.yml +++ b/_vale/Docker/Acronyms.yml @@ -51,6 +51,7 @@ exceptions: - HTTPS - IAM - IDE + - IP - JAR - JSON - JSX diff --git a/_vale/config/vocabularies/Docker/accept.txt b/_vale/config/vocabularies/Docker/accept.txt index d245ef2c7e17..b7d98e3d3d95 100644 --- a/_vale/config/vocabularies/Docker/accept.txt +++ b/_vale/config/vocabularies/Docker/accept.txt @@ -50,7 +50,6 @@ Google Grafana Gravatar HyperKit -IPs? IPv[46] IPvlan Intel From 412167977573bfc549f8dc03131f701e01eccd51 Mon Sep 17 00:00:00 2001 From: Allie Sadler <102604716+aevesdocker@users.noreply.github.com> Date: Mon, 11 Nov 2024 12:08:40 +0000 Subject: [PATCH 20/22] remove banner (#21395) ## Description ## Related issues or tickets ## Reviews - [ ] Technical review - [ ] Editorial review - [ ] Product review --- content/manuals/desktop/use-desktop/volumes.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/content/manuals/desktop/use-desktop/volumes.md b/content/manuals/desktop/use-desktop/volumes.md index 0b045ba705cb..c137b8260643 100644 --- a/content/manuals/desktop/use-desktop/volumes.md +++ b/content/manuals/desktop/use-desktop/volumes.md @@ -119,10 +119,6 @@ To empty a volume: ## Export a volume -{{% experimental title="Beta feature" %}} -The export volume feature is currently in [Beta](../../release-lifecycle.md#beta). -{{% /experimental %}} - You can export the content of a volume to a local file, a local image, an to an image in Docker Hub, or to a supported cloud provider. When exporting content from a volume used by one or more running containers, the containers are From d4c7e4ab3ed4a45f1c1cc39740bb21aca71ff261 Mon Sep 17 00:00:00 2001 From: Mihaela Stoica Date: Mon, 11 Nov 2024 12:27:58 +0000 Subject: [PATCH 21/22] Update VMM page (#21396) ## Description Add a note about the memory requirement for Docker VMM ## Reviews - [ ] Technical review - [ ] Editorial review - [ ] Product review --------- Co-authored-by: Allie Sadler <102604716+aevesdocker@users.noreply.github.com> --- content/manuals/desktop/features/vmm.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/content/manuals/desktop/features/vmm.md b/content/manuals/desktop/features/vmm.md index 990f9c1f966d..1af1d399b510 100644 --- a/content/manuals/desktop/features/vmm.md +++ b/content/manuals/desktop/features/vmm.md @@ -27,6 +27,10 @@ Some key performance enhancements provided by Docker VMM include: These improvements directly impact developers who rely on frequent file access and overall system responsiveness during containerized development. Docker VMM marks a significant leap in speed, enabling smoother workflows and faster iteration cycles. +> [!NOTE] +> +> Docker VMM requires a minimum of 4GB of memory to be allocated to the Docker Linux VM. The memory needs to be increased before Docker VMM is enabled, and this can be done from the **Resources** tab in **Settings**. + ### Known issues As Docker VMM is still in Beta, there are a few known limitations: From ee41406114043be4b614587f66a5bfdd5f348de0 Mon Sep 17 00:00:00 2001 From: Craig Osterhout <103533812+craig-osterhout@users.noreply.github.com> Date: Mon, 11 Nov 2024 09:15:50 -0800 Subject: [PATCH 22/22] hub: refresh quickstart (#21374) ## Description Refreshed Hub Quickstart. - Added a brief intro. - Added the "how to find an image" use-case. - Updated pull/push steps to use the same image to show how easy it is to extend images. - Moved install DD and create an account as prereqs to keeps the steps Hub-focused. - Updated next steps to have a more natural flow related to the previous step. -------- Signed-off-by: Craig --- content/manuals/docker-hub/quickstart.md | 275 ++++++++++++++--------- 1 file changed, 174 insertions(+), 101 deletions(-) diff --git a/content/manuals/docker-hub/quickstart.md b/content/manuals/docker-hub/quickstart.md index 6930b9836ee3..cd1708bed199 100644 --- a/content/manuals/docker-hub/quickstart.md +++ b/content/manuals/docker-hub/quickstart.md @@ -1,148 +1,221 @@ --- description: Learn how to get started using Docker Hub -keywords: Docker, docker, registry, accounts, plans, Dockerfile, Docker Hub, accounts, - organizations, repositories, groups, teams +keywords: Docker Hub, push image, pull image, repositories title: Docker Hub quickstart linkTitle: Quickstart weight: 10 --- -The following section contains step-by-step instructions on how to get started with Docker Hub. +Docker Hub provides a vast library of pre-built images and resources, +accelerating development workflows and reducing setup time. You can build upon +pre-built images from Docker Hub and then use repositories to share and +distribute your own images with your team or millions of other developers. -### Step 1: Sign up for a free Docker account +This guide shows you how to find and run a pre-built image. It then walks you +through creating a custom image and sharing it through Docker Hub. -Start by creating a [Docker ID](https://hub.docker.com/signup). +## Prerequisites -A [Docker ID](/accounts/create-account/) grants you access to Docker Hub repositories and lets you explore available images from the community and verified publishers. You also need a Docker ID to share images on Docker Hub. +- [Download and install Docker](../../get-started/get-docker.md) +- [Create a Docker account](https://app.docker.com/signup) -> [!TIP] -> -> Explore [Docker's core subscriptions](https://www.docker.com/pricing/) to see what else Docker can offer you. +## Step 1: Find an image in Docker Hub's library -### Step 2: Create your first repository +You can search for content in Docker Hub itself, in the Docker Desktop +Dashboard, or by using the `docker search` CLI command. Searching on Docker Hub +itself offers the most options to explore content. -To create a repository: +To search or browse for content on Docker Hub: -1. Sign in to [Docker Hub](https://hub.docker.com). -2. On the Repositories page, select **Create repository**. -3. Name it **<your-username>/my-private-repo**. -4. Set the visibility to **Private**. -5. Select **Create**. +1. Navigate to the [Docker Hub Explore page](https://hub.docker.com/explore). -You've created your first repository. + On the Explore page, you can browse by catalog or category, or use the search + to quickly find content. -### Step 3: Download and install Docker Desktop +2. Under **Categories**, select **Web servers**. -You need to download Docker Desktop to build, push, and pull container images. + After the results are displayed, you can further filter the results using the + filters on the left side of the page. -1. Download and install [Docker Desktop](/manuals/desktop/_index.md). +3. In the filters, select **Docker Official Image**. -2. Sign in to Docker Desktop using the Docker ID you created in step one. + Filtering by Trusted Content ensures that you see only high-quality, secure + images curated by Docker and verified publishing partners. -### Step 4: Pull and run a container image from Docker Hub +4. In the results, select the **nginx** image. -1. In your terminal, run `docker pull hello-world` to pull the image from Docker Hub. You should see output similar to: + Selecting the image opens the image's page where you can learn more about how + to use the image. On the page, you'll also find the `docker pull` command to + pull the image. + +Now that you've found an image, it's time to pull and run it on your device. + +## Step 2: Pull and run an image from Docker Hub + +1. In your terminal, run the following command to pull and run the Nginx image. ```console - $ docker pull hello-world - Using default tag: latest - latest: Pulling from library/hello-world - 2db29710123e: Pull complete - Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625 - Status: Downloaded newer image for hello-world:latest - docker.io/library/hello-world:latest + $ docker run -p 8080:80 --rm nginx ``` -2. Run `docker run hello-world` to run the image locally. You should see output similar to: - - ```console - $ docker run hello-world - Hello from Docker! - This message shows that your installation appears to be working correctly. + The `docker run` command automatically pulls and runs the image without the + need to run `docker pull` first. To learn more about the command and its + options, see the [`docker run` CLI + reference](../../reference/cli/docker/container/run.md). After running the + command, you should see output similar to the following. + + ```console {collapse=true} + Unable to find image 'nginx:latest' locally + latest: Pulling from library/nginx + a480a496ba95: Pull complete + f3ace1b8ce45: Pull complete + 11d6fdd0e8a7: Pull complete + f1091da6fd5c: Pull complete + 40eea07b53d8: Pull complete + 6476794e50f4: Pull complete + 70850b3ec6b2: Pull complete + Digest: sha256:28402db69fec7c17e179ea87882667f1e054391138f77ffaf0c3eb388efc3ffb + Status: Downloaded newer image for nginx:latest + /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration + /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ + /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh + 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf + 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf + /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh + /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh + /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh + /docker-entrypoint.sh: Configuration complete; ready for start up + 2024/11/07 21:43:41 [notice] 1#1: using the "epoll" event method + 2024/11/07 21:43:41 [notice] 1#1: nginx/1.27.2 + 2024/11/07 21:43:41 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14) + 2024/11/07 21:43:41 [notice] 1#1: OS: Linux 6.10.11-linuxkit + 2024/11/07 21:43:41 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576 + 2024/11/07 21:43:41 [notice] 1#1: start worker processes + 2024/11/07 21:43:41 [notice] 1#1: start worker process 29 + ... + ``` - To generate this message, Docker took the following steps: - 1. The Docker client contacted the Docker daemon. - 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. - (amd64) - 3. The Docker daemon created a new container from that image which runs the - executable that produces the output you are currently reading. - 4. The Docker daemon streamed that output to the Docker client, which sent - it to your terminal. +2. Visit [https://localhost:8080](https://localhost:8080) to view the default + Nginx page and verify that the container is running. - To try something more ambitious, you can run an Ubuntu container with: - $ docker run -it ubuntu bash +3. In the terminal, press CTRL+C to stop the container. - Share images, automate workflows, and more with a free Docker ID: - https://hub.docker.com/ +You've now run a web server without any set up or configuration, all from a +single command. Docker Hub provides instant access to pre-built, ready-to-use +container images, letting you quickly pull and run applications without needing +to install or configure software manually. With Docker Hub's vast library of +images, you can experiment with and deploy applications effortlessly, boosting +productivity and making it easy to try out new tools, set up development +environments, or build on top of existing software. - For more examples and ideas, visit: - https://docs.docker.com/get-started/ - ``` +You can also extend images from Docker Hub, letting you quickly build and +customize your own images to suit specific needs. -### Step 5: Build and push a container image to Docker Hub from your computer +## Step 3: Build and push an image to Docker Hub -1. Start by creating a [Dockerfile](/reference/dockerfile.md) to specify your application as shown below: +1. Create a [Dockerfile](/reference/dockerfile.md) to specify your application: ```dockerfile - # syntax=docker/dockerfile:1 - FROM busybox - CMD echo "Hello world! This is my first Docker image." + FROM nginx + RUN echo "

Hello world from Docker!

" > /usr/share/nginx/html/index.html + ``` + + This Dockerfile extends the Nginx image from Docker Hub to create a + simple website. With just a few lines, you can easily set up, customize, and + share a static website using Docker. + +2. Run the following command to build your image. Replace `` with your Docker ID. + + ```console + $ docker build -t /nginx-custom . + ``` + + This command builds your image and tags it so that Docker understands which + repository to push it to in Docker Hub. To learn more about the command and + its options, see the [`docker build` CLI + reference](../../reference/cli/docker/buildx/build.md). After running the + command, you should see output similar to the following. + + ```console {collapse=true} + [+] Building 0.6s (6/6) FINISHED docker:desktop-linux + => [internal] load build definition from Dockerfile 0.0s + => => transferring dockerfile: 128B 0.0s + => [internal] load metadata for docker.io/library/nginx:latest 0.0s + => [internal] load .dockerignore 0.0s + => => transferring context: 2B 0.0s + => [1/2] FROM docker.io/library/nginx:latest 0.1s + => [2/2] RUN echo "

Hello world from Docker!

" > /usr/share/ 0.2s + => exporting to image 0.1s + => => exporting layers 0.0s + => => writing image sha256:f85ab68f4987847713e87a95c39009a5c9f4ad78 0.0s + => => naming to docker.io/mobyismyname/nginx-custom 0.0s + ``` + +3. Run the following command to test your image. Replace `` with + your Docker ID. + + ```console + $ docker run -p 8080:80 --rm /nginx-custom ``` -2. Run `docker build -t /my-private-repo .` to build your Docker - image. +4. Visit [https://localhost:8080](https://localhost:8080) to view the page. You + should see `Hello world from Docker!`. + +5. In the terminal, press CTRL+C to stop the container. -3. Run `docker run /my-private-repo` to test your -Docker image locally. +6. Sign in to Docker Desktop. You must be signed in before pushing an image to + Docker Hub. -4. Run `docker push /my-private-repo` to push your Docker image to Docker Hub. You should see output similar to: +7. Run the following command to push your image to Docker Hub. Replace `` with your Docker ID. ```console - $ cat > Dockerfile < [internal] load build definition from Dockerfile - => => transferring dockerfile: 110B - => [internal] load .dockerignore - => => transferring context: 2B - => [internal] load metadata for docker.io/library/busybox:latest - => CACHED [1/1] FROM docker.io/library/busybox@sha256:a9286defaba7n3a519 - => exporting to image - => => exporting layers - => => writing image sha256:dcdb1fd928bf257bfc0122ea47accd911a3a386ce618 - => => naming to docker.io/mobythewhale/my-private-repo - $ docker run mobythewhale/my-private-repo - Hello world! This is my first Docker image. - $ docker push mobythewhale/my-private-repo - The push refers to repository [docker.io/mobythewhale/my-private-repo] - d2421964bad1: Layer already exists - latest: digest: sha256:7604fbf8eeb03d866fd005fa95cdbb802274bf9fa51f7dafba6658294 - efa9baa size: 526 + $ docker push /nginx-custom ``` - >**Note** - > - > You must be signed in to Docker Hub through Docker Desktop or the command line, and you must also name your images correctly, as per the above steps. + The command pushes the image to Docker Hub and automatically + creates the repository if it doesn't exist. To learn more about the command, + see the [`docker push` CLI + reference](../../reference/cli/docker/image/push.md). After running the + command, you should see output similar to the following. + + ```console {collapse=true} + Using default tag: latest + The push refers to repository [docker.io/mobyismyname/nginx-custom] + d0e011850342: Pushed + e4e9e9ad93c2: Mounted from library/nginx + 6ac729401225: Mounted from library/nginx + 8ce189049cb5: Mounted from library/nginx + 296af1bd2844: Mounted from library/nginx + 63d7ce983cd5: Mounted from library/nginx + b33db0c3c3a8: Mounted from library/nginx + 98b5f35ea9d3: Mounted from library/nginx + latest: digest: sha256:7f5223ae866e725a7f86b856c30edd3b86f60d76694df81d90b08918d8de1e3f size: 1985 + ``` + + Now that you've created a repository and pushed your image, it's time to view + your repository and explore its options. + +## Step 4: View your repository on Docker Hub and explore options + +1. Go to [Docker Hub](https://hub.docker.com) and sign in. -5. Your repository in Docker Hub should now display a new `latest` tag under **Tags**: + After signing in, you should be on the **Repositories** page. If not, then go + to the [**Repositories**](https://hub.docker.com/repositories/) page. - ![Tag created](images/index-tag.webp) +2. Find the **nginx-custom** repository and select that row. -You've successfully: + After selecting the repository, you should see more details and options for + your repository. -- Signed up for a Docker account -- Created your first repository -- Pulled an existing container image from Docker Hub -- Built your own container image on your computer -- Pushed it successfully to Docker Hub +You've now verified that your repository exists on Docker Hub, and you've +discovered more options for it. View the next steps to learn more about some of +these options. -### Next steps +## Next steps -- Create an [organization](orgs.md) to use Docker Hub with your team. -- Automatically build container images from code through [builds](builds/_index.md). -- [Explore](https://hub.docker.com/explore) official & publisher images. -- [Upgrade your subscription](https://www.docker.com/pricing) to push additional private Docker images to -Docker Hub. +- Automatically build container images from code through + [builds](builds/_index.md). +- Use [webhooks](./webhooks.md) to cause an action in another service in + response to a push event in the repository. +- Manage [repository settings](./repos/_index.md) to set the default privacy for + your repositories. \ No newline at end of file