diff --git a/.github/vale/Vocab/Industry/accept.txt b/.github/vale/Vocab/Industry/accept.txt index 587975f9e865..4b9f43b10915 100644 --- a/.github/vale/Vocab/Industry/accept.txt +++ b/.github/vale/Vocab/Industry/accept.txt @@ -25,6 +25,7 @@ Kubernetes Lightstreamer Linux Logstash +LTS Mac Mail(chimp|gun) Microsoft @@ -38,9 +39,11 @@ Postgres PowerShell Python QEMU +Raspbian RHEL S3 SQLite +SLES Slack Snyk Solr diff --git a/.github/vale/Vocab/Technology/accept.txt b/.github/vale/Vocab/Technology/accept.txt index ed7d5454afcb..12595a0819d6 100644 --- a/.github/vale/Vocab/Technology/accept.txt +++ b/.github/vale/Vocab/Technology/accept.txt @@ -1,6 +1,7 @@ APIs? Ethernet Git +GPG HTTP IPs? IPv[46] @@ -43,6 +44,7 @@ stdout subnet swappable systemd +umask ungated virtiofs virtualize diff --git a/.vale.ini b/.vale.ini index 90a3d508a729..1174a1c7ae83 100644 --- a/.vale.ini +++ b/.vale.ini @@ -6,4 +6,4 @@ Vocab = Docker, Industry, Technology [*.md] BasedOnStyles = Vale, Docker TokenIgnores = ({%.*%}), \ -({:.*?}) +({:(?:.|\n)*?}) diff --git a/Gemfile.lock b/Gemfile.lock index 1debabf1a175..ceb17254ed89 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -76,12 +76,12 @@ GEM tomlrb mixlib-shellout (3.2.7) chef-utils - nokogiri (1.13.8) + nokogiri (1.13.9) mini_portile2 (~> 2.8.0) racc (~> 1.4) - nokogiri (1.13.8-aarch64-linux) + nokogiri (1.13.9-aarch64-linux) racc (~> 1.4) - nokogiri (1.13.8-x86_64-linux) + nokogiri (1.13.9-x86_64-linux) racc (~> 1.4) octopress-hooks (2.6.2) jekyll (>= 2.0) diff --git a/_config.yml b/_config.yml index 582084c34e1d..361145f38aef 100644 --- a/_config.yml +++ b/_config.yml @@ -41,7 +41,7 @@ exclude: latest_engine_api_version: "1.41" docker_ce_version: "20.10" compose_v1_version: "1.29.2" -compose_version: "v2.11.2" +compose_version: "v2.12.2" compose_file_v3: "3.9" compose_file_v2: "2.4" machine_version: "0.16.0" @@ -172,10 +172,13 @@ fetch-remote: - dest: "build/building/drivers" src: - "docs/guides/drivers/**" + - dest: "build/building/cache/backends" + src: + - "docs/guides/cache/**" - repo: "https://github.com/distribution/distribution" default_branch: "main" - ref: "release/2.7" + ref: "main" paths: - dest: "registry/spec" src: diff --git a/_data/compose-cli/docker_compose_push.yaml b/_data/compose-cli/docker_compose_push.yaml index d4dbb142698f..72c757551511 100644 --- a/_data/compose-cli/docker_compose_push.yaml +++ b/_data/compose-cli/docker_compose_push.yaml @@ -33,6 +33,17 @@ options: experimentalcli: false kubernetes: false swarm: false + - option: quiet + shorthand: q + value_type: bool + default_value: "false" + description: Push without printing progress information + deprecated: false + hidden: false + experimental: false + experimentalcli: false + kubernetes: false + swarm: false deprecated: false experimental: false experimentalcli: false diff --git a/_data/toc.yaml b/_data/toc.yaml index a923413a8b39..d65db162669e 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -18,7 +18,6 @@ horizontalnav: - title: Contribute path: /contribute/overview/ node: contribute - # TODO unify navbbar links: homepage currently has a custom "articles" link hide_home: true home: {} @@ -30,9 +29,9 @@ guides: path: /get-docker/ - sectiontitle: Get started section: - - title: "Part 1: Getting started" + - title: "Part 1: Orientation and setup" path: /get-started/ - - title: "Part 2: Sample application" + - title: "Part 2: Containerize an application" path: /get-started/02_our_app/ - title: "Part 3: Update the application" path: /get-started/03_updating_app/ @@ -376,8 +375,6 @@ guides: title: Use the VFS storage driver - path: /get-started/resources/ title: "Educational resources" -- path: /opensource/ - title: "Contribute to documentation" reference: - path: /reference/ @@ -1272,18 +1269,38 @@ manuals: title: Run Docker Desktop for Windows in a VM or VDI environment - path: /desktop/uninstall/ title: Uninstall Docker Desktop + - sectiontitle: Hardened Desktop + section: + - path: /desktop/hardened-desktop/ + title: Overview + - sectiontitle: Settings Management + section: + - path: /desktop/hardened-desktop/settings-management/ + title: What is Settings Management? + - path: /desktop/hardened-desktop/settings-management/configure/ + title: Configure Settings Management + - sectiontitle: Enhanced Container Isolation + section: + - path: /desktop/hardened-desktop/enhanced-container-isolation/ + title: What is Enhanced Container Isolation? + - path: /desktop/hardened-desktop/enhanced-container-isolation/how-eci-works/ + title: How does it work? + - path: /desktop/hardened-desktop/enhanced-container-isolation/features-benefits/ + title: Key features and benefits + - path: /desktop/hardened-desktop/enhanced-container-isolation/faq/ + title: FAQs and known issues + - path: /desktop/hardened-desktop/registry-access-management/ + title: Registry Access Management - sectiontitle: Dev Environments (Beta) section: - path: /desktop/dev-environments/ title: Overview - path: /desktop/dev-environments/create-dev-env/ - title: Create a Dev Environment + title: Create a simple dev environment - path: /desktop/dev-environments/create-compose-dev-env/ - title: Create a Compose Dev Environment + title: Create an advanced dev environment - path: /desktop/dev-environments/share/ - title: Share your Dev Environment - - path: /desktop/dev-environments/specify/ - title: Specify a Dockerfile or base image + title: Distribute your dev environment - sectiontitle: Extensions (Beta) section: - path: /desktop/extensions/ @@ -1340,6 +1357,8 @@ manuals: path: /desktop/extensions-sdk/design/mui-best-practices/ - sectiontitle: Developer SDK tools section: + - title: Interacting with Kubernetes + path: /desktop/extensions-sdk/dev/kubernetes/ - title: Authentication path: /desktop/extensions-sdk/dev/oauth2-flow/ - title: CLI reference @@ -1360,6 +1379,8 @@ manuals: path: /desktop/extensions-sdk/dev/api/reference/README/ - path: /desktop/containerd/ title: Containerd Image Store (Beta) + - path: /desktop/wasm/ + title: Wasm (Beta) - sectiontitle: FAQs section: - path: /desktop/faqs/general/ @@ -1472,9 +1493,7 @@ manuals: section: - path: /build/building/packaging/ title: Packaging your software - - path: /build/building/cache/ - title: Optimizing builds with cache management - - sectiontitle: Choosing a build driver + - sectiontitle: Build drivers section: - path: /build/building/drivers/ title: Overview @@ -1486,13 +1505,31 @@ manuals: title: Kubernetes driver - path: /build/building/drivers/remote/ title: Remote driver + - path: /build/building/cache/ + title: Optimizing builds with cache + - sectiontitle: Cache backends + section: + - path: /build/building/cache/backends/ + title: Overview + - path: /build/building/cache/backends/inline/ + title: Inline + - path: /build/building/cache/backends/local/ + title: Local + - path: /build/building/cache/backends/registry/ + title: Registry + - path: /build/building/cache/backends/gha/ + title: GitHub Actions + - path: /build/building/cache/backends/azblob/ + title: Azure Blob Storage + - path: /build/building/cache/backends/s3/ + title: Amazon S3 - path: /build/building/multi-stage/ title: Multi-stage builds - path: /build/building/multi-platform/ title: Multi-platform images - sectiontitle: Customizing builds section: - - sectiontitle: Orchestrating builds with Bake + - sectiontitle: High-level builds with Bake section: - path: /build/customize/bake/ title: Overview @@ -1518,18 +1555,26 @@ manuals: section: - path: /compose/ title: Overview + - path: /compose/features-uses/ + title: Key features and use cases - sectiontitle: Install Docker Compose section: - path: /compose/install/ - title: Install overview + title: Overview - path: /compose/install/linux/ - title: Install on Linux + title: Install the Compose plugin - path: /compose/install/other/ - title: Other install scenarios + title: Install the Compose standalone - path: /compose/install/uninstall/ - title: Uninstall Docker Compose + title: Uninstall Compose - path: /compose/gettingstarted/ - title: Getting started + title: Try Docker Compose + - sectiontitle: Compose V2 + section: + - path: /compose/compose-v2/ + title: Overview + - path: /compose/cli-command-compatibility/ + title: Compose v2 compatibility - sectiontitle: Environment variables section: - path: /compose/environment-variables/ @@ -1552,8 +1597,6 @@ manuals: title: Control startup order - path: /compose/samples-for-compose/ title: Sample apps with Compose - - path: /compose/cli-command-compatibility/ - title: Compose v2 compatibility - path: /compose/release-notes/ title: Release notes @@ -1615,7 +1658,7 @@ manuals: title: Convert an account into an organization - path: /docker-hub/deactivate-account/ title: Deactivate an account or an organization - - sectiontitle: Docker Verified Publisher Program + - sectiontitle: Docker Verified Publisher section: - path: /docker-hub/publish/ title: Overview @@ -1643,8 +1686,10 @@ manuals: section: - sectiontitle: Onboarding section: + - path: /docker-hub/onboard-team/ + title: Team - path: /docker-hub/onboard-business/ - title: Get started with Business + title: Business - path: /docker-hub/onboarding-faqs/ title: FAQs - path: /docker-hub/orgs/ @@ -1663,8 +1708,7 @@ manuals: title: System for Cross-domain Identity Management - path: /docker-hub/image-access-management/ title: Image Access Management - - path: /docker-hub/registry-access-management/ - title: Registry Access Management + - sectiontitle: Security section: @@ -1788,6 +1832,8 @@ contribute: title: Voice and tone - path: /contribute/file-conventions/ title: Source file conventions + - path: /contribute/ui/ + title: UI elements in content - sectiontitle: Useful components section: - path: /contribute/components/accordions/ @@ -1795,9 +1841,11 @@ contribute: - path: /contribute/components/badges/ title: Badges - path: /contribute/components/call-outs/ - title: Call outs + title: Callouts - path: /contribute/components/cards/ title: Cards + - path: /contribute/components/code-blocks/ + title: Code blocks - path: /contribute/components/images/ title: Images - path: /contribute/components/links/ diff --git a/_includes/beta.md b/_includes/beta.md new file mode 100644 index 000000000000..483cdd8026b4 --- /dev/null +++ b/_includes/beta.md @@ -0,0 +1,7 @@ +Beta features provide early access to future product functionality. +These features are intended for testing and feedback only as they may change +between releases without warning or can be removed entirely from a future +release. Beta features must not be used in production environments. +Docker does not offer support for beta features. + +For a list of current experimental features in the Docker CLI, see [Docker CLI Experimental features](https://github.com/docker/cli/blob/master/experimental/README.md). diff --git a/_includes/configure-registry-json.md b/_includes/configure-registry-json.md index c38f3ef3fb78..eae4a391fd74 100644 --- a/_includes/configure-registry-json.md +++ b/_includes/configure-registry-json.md @@ -66,7 +66,19 @@ To manually create a `registry.json` file, run the following PowerShell command PS> Set-Content /ProgramData/DockerDesktop/registry.json '{"allowedOrgs":["myorg"]}' ``` -This creates the `registry.json` file at `C:\ProgramData\DockerDesktop\registry.json` and includes the organization information the user belongs to. Make sure this file can't be edited by the user, only by the administrator. +This creates the `registry.json` file at `C:\ProgramData\DockerDesktop\registry.json` and includes the organization information the user belongs to. Make sure this file can't be edited by the user, only by the administrator: + +```console +PS C:\ProgramData\DockerDesktop> Get-Acl .\registry.json + + + Directory: C:\ProgramData\DockerDesktop + + +Path Owner Access +---- ----- ------ +registry.json BUILTIN\Administrators NT AUTHORITY\SYSTEM Allow FullControl... +```
diff --git a/_includes/desktop-install.html b/_includes/desktop-install.html index 7b3ae50bb9a4..086470b9d2b0 100644 --- a/_includes/desktop-install.html +++ b/_includes/desktop-install.html @@ -13,7 +13,7 @@
Download file

- Checksum: SHA-256 996a4c5fff5b80b707ecfc0121d7ebe70d96c0bd568f058fd96f32cdec0c10cf + Checksum: SHA-256 2452d4c9e315d36ad4cade724c962dd18515b8e2f0c2e7f66290648e0319d72b
@@ -31,7 +31,7 @@
Download file

- Checksum: SHA-256 41085009458ba1741c6a86c414190780ff3b288879aa27821fc4a985d229653c + Checksum: SHA-256 5a9e7b810bc9937a0945f9cbbb7ec00c2c5c386b5897c59c1c93187eaf0f2081 @@ -49,7 +49,7 @@
Download file

- Checksum: SHA-256 7eb63b4819cd1f87c61d5e8f54613692e07fb203d81bcf8d66f5de55489d3b81 + Checksum: SHA-256 f33037ef7b02946d5714012398848654bd7a759ee729b0346acc46a8e73a76ed @@ -64,10 +64,10 @@
- Download file + Download file

- Checksum: SHA-256 4407023db032219d6ac6031f81da6389ab192d3d06084ee6dad1ba4f4c64a4fe + Checksum: SHA-256 aa1d4ee1c2c72bf7be05c88d33d8f1f6344ab4e6d9de52f50367d9e799641102
@@ -82,10 +82,10 @@
- Download file + Download file

- Checksum: SHA-256 05e91f2a9763089acdfe710140893cb096bec955bcd99279bbe3aea035d09bc5 + Checksum: SHA-256 6f70246d11d06f123b8011eeafb7b0a161d60764719b44b817a49dee7da4a06e
@@ -100,10 +100,10 @@
- Download file + Download file

- Checksum: SHA-256 7c6b43c8ab140c755e6c8ce4ec494b3f5c4f3b0c1ab3cee8bfd0b6864f795d8a + Checksum: SHA-256 8aa42c18d643b5dc333cbea096f9585d89b912344a26fc9ea902f30d2c5140d8
diff --git a/_includes/head.html b/_includes/head.html index fbbf96e7c9af..3fb4bd12ac14 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -68,6 +68,7 @@ + {%- endif -%} {%- if site.local_search -%} diff --git a/_includes/install-script.md b/_includes/install-script.md index 0fc545e28f6c..c17f903211e3 100644 --- a/_includes/install-script.md +++ b/_includes/install-script.md @@ -1,16 +1,17 @@ - - ### Install using the convenience script -Docker provides a convenience script at [get.docker.com](https://get.docker.com/) -to install Docker into development environments quickly and non-interactively. -The convenience script is not recommended for production environments, but can be -used as an example to create a provisioning script that is tailored to your needs. -Also refer to the [install using the repository](#install-using-the-repository) -steps to learn about installation steps to install using the package repository. -The source code for the script is open source, and can be found in the -[`docker-install` repository on GitHub](https://github.com/docker/docker-install){:target="_blank" rel="noopener" class="_"}. +Docker provides a convenience script at +[https://get.docker.com/](https://get.docker.com/) to install Docker into +development environments non-interactively. The convenience script isn't +recommended for production environments, but it's useful for creating a +provisioning script tailored to your needs. Also refer to the +[install using the repository](#install-using-the-repository) steps to learn +about installation steps to install using the package repository. The source +code for the script is open source, and can be found in the +[`docker-install` repository on GitHub](https://github.com/docker/docker-install){:target="_blank" +rel="noopener" class="_"}. + Always examine scripts downloaded from the internet before running them locally. Before installing, make yourself familiar with potential risks and limitations of the convenience script: @@ -18,31 +19,32 @@ of the convenience script: - The script requires `root` or `sudo` privileges to run. - The script attempts to detect your Linux distribution and version and - configure your package management system for you, and does not allow you to - customize most installation parameters. + configure your package management system for you. +- The script doesn't allow you to customize most installation parameters. - The script installs dependencies and recommendations without asking for confirmation. This may install a large number of packages, depending on the current configuration of your host machine. -- By default, the script installs the latest stable release of Docker, containerd, - and runc. When using this script to provision a machine, this may result in - unexpected major version upgrades of Docker. Always test (major) upgrades in +- By default, the script installs the latest stable release of Docker, + containerd, and runc. When using this script to provision a machine, this may + result in unexpected major version upgrades of Docker. Always test upgrades in a test environment before deploying to your production systems. -- The script is not designed to upgrade an existing Docker installation. When +- The script isn't designed to upgrade an existing Docker installation. When using the script to update an existing installation, dependencies may not be - updated to the expected version, causing outdated versions to be used. + updated to the expected version, resulting in outdated versions. > Tip: preview script steps before running > > You can run the script with the `DRY_RUN=1` option to learn what steps the -> script will execute during installation: +> script will run when invoked: > > ```console > $ curl -fsSL https://get.docker.com -o get-docker.sh -> $ DRY_RUN=1 sh ./get-docker.sh +> $ DRY_RUN=1 sudo sh ./get-docker.sh > ``` -This example downloads the script from [get.docker.com](https://get.docker.com/) -and runs it to install the latest stable release of Docker on Linux: +This example downloads the script from +[https://get.docker.com/](https://get.docker.com/) and runs it to install the +latest stable release of Docker on Linux: ```console $ curl -fsSL https://get.docker.com -o get-docker.sh @@ -51,41 +53,42 @@ Executing docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b273 <...> ``` -Docker is installed. The `docker` service starts automatically on Debian based -distributions. On `RPM` based distributions, such as CentOS, Fedora, RHEL or SLES, -you need to start it manually using the appropriate `systemctl` or `service` command. -As the message indicates, non-root users cannot run Docker commands by default. +You have now successfully installed and started Docker Engine. The `docker` +service starts automatically on Debian based distributions. On `RPM` based +distributions, such as CentOS, Fedora, RHEL or SLES, you need to start it +manually using the appropriate `systemctl` or `service` command. As the message +indicates, non-root users can't run Docker commands by default. > **Use Docker as a non-privileged user, or install in rootless mode?** > > The installation script requires `root` or `sudo` privileges to install and > use Docker. If you want to grant non-root users access to Docker, refer to the > [post-installation steps for Linux](/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user). -> Docker can also be installed without `root` privileges, or configured to run -> in rootless mode. For instructions on running Docker in rootless mode, refer to +> You can also install Docker without `root` privileges, or configured to run in +> rootless mode. For instructions on running Docker in rootless mode, refer to > [run the Docker daemon as a non-root user (rootless mode)](/engine/security/rootless/). #### Install pre-releases -Docker also provides a convenience script at [test.docker.com](https://test.docker.com/) -to install pre-releases of Docker on Linux. This script is equivalent to the -script at `get.docker.com`, but configures your package manager to enable the -"test" channel from our package repository, which includes both stable and -pre-releases (beta versions, release-candidates) of Docker. Use this script to -get early access to new releases, and to evaluate them in a testing environment -before they are released as stable. +Docker also provides a convenience script at +[https://test.docker.com/](https://test.docker.com/) to install pre-releases of +Docker on Linux. This script is equal to the script at `get.docker.com`, but +configures your package manager to use the test channel of the Docker package +repository. The test channel includes both stable and pre-releases (beta +versions, release-candidates) of Docker. Use this script to get early access to +new releases, and to evaluate them in a testing environment before they're +released as stable. -To install the latest version of Docker on Linux from the "test" channel, run: +To install the latest version of Docker on Linux from the test channel, run: ```console $ curl -fsSL https://test.docker.com -o test-docker.sh $ sudo sh test-docker.sh -<...> ``` #### Upgrade Docker after using the convenience script If you installed Docker using the convenience script, you should upgrade Docker -using your package manager directly. There is no advantage to re-running the -convenience script, and it can cause issues if it attempts to re-add -repositories which have already been added to the host machine. +using your package manager directly. There's no advantage to re-running the +convenience script. Re-running it can cause issues if it attempts to re-install +repositories which already exist on the host machine. diff --git a/_includes/landing-page/hardened-desktop.html b/_includes/landing-page/hardened-desktop.html new file mode 100644 index 000000000000..69f96881e634 --- /dev/null +++ b/_includes/landing-page/hardened-desktop.html @@ -0,0 +1,19 @@ +
+
+
+

+ Hardened Desktop for Docker Business customers +

+
+

Two new security features have been introduced for Docker Business users, Settings Management and Enhanced Container Isolation, as part of Docker Desktop’s new Hardened Desktop security model.

+
+
+ extensions +
+ +
+
\ No newline at end of file diff --git a/_layouts/landing.html b/_layouts/landing.html index c68e77641629..136fa49f6f78 100644 --- a/_layouts/landing.html +++ b/_layouts/landing.html @@ -21,8 +21,7 @@ {%- for entry in site.data.toc.horizontalnav -%} {%- if entry.hide_home -%}{% continue %}{%- endif -%} {{ entry.title }} - {%- endfor -%} -
  • Articles
  • + {%- endfor -%}
  • Contribute