Skip to content

Commit 0048b0a

Browse files
Merge pull request #22631 from docker/published-update
publish updates from main
2 parents 0e799b9 + aca7fee commit 0048b0a

File tree

21 files changed

+1292
-157
lines changed

21 files changed

+1292
-157
lines changed

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# check=skip=InvalidBaseImagePlatform
33

44
ARG ALPINE_VERSION=3.21
5-
ARG GO_VERSION=1.23.8
5+
ARG GO_VERSION=1.24
66
ARG HTMLTEST_VERSION=0.17.0
77
ARG HUGO_VERSION=0.141.0
88
ARG NODE_VERSION=22

content/manuals/build/metadata/annotations.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ arbitrary information and attach it to your image, which helps consumers and
1111
tools understand the origin, contents, and how to use the image.
1212

1313
Annotations are similar to, and in some sense overlap with, [labels]. Both
14-
serve the same purpose: attach metadata to a resource. As a general principle,
14+
serve the same purpose: to attach metadata to a resource. As a general principle,
1515
you can think of the difference between annotations and labels as follows:
1616

1717
- Annotations describe OCI image components, such as [manifests], [indexes],
@@ -68,7 +68,7 @@ For examples on how to add annotations to images built with GitHub Actions, see
6868
You can also add annotations to an image created using `docker buildx
6969
imagetools create`. This command only supports adding annotations to an index
7070
or manifest descriptors, see
71-
[CLI reference](/reference/cli/docker/buildx/imagetools/create.md#annotations).
71+
[CLI reference](/reference/cli/docker/buildx/imagetools/create.md#annotation).
7272

7373
## Inspect annotations
7474

content/manuals/desktop/setup/install/enterprise-deployment/faq.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,4 +83,18 @@ Add-LocalGroupMember -Group $Group -Member $CurrentUser
8383

8484
> [!NOTE]
8585
>
86-
> After adding a new user to the `docker-users` group, the user must sign out and then sign back in for the changes to take effect.
86+
> After adding a new user to the `docker-users` group, the user must sign out and then sign back in for the changes to take effect.
87+
88+
## MDM
89+
90+
Common questions about deploying Docker Desktop using mobile device management
91+
(MDM) tools such as Jamf, Intune, or Workspace ONE.
92+
93+
### Why doesn't my MDM tool apply all Docker Desktop configuration settings at once?
94+
95+
Some MDM tools, such as Workspace ONE, may not support applying multiple
96+
configuration settings in a single XML file. In these cases, you may need to
97+
deploy each setting in a separate XML file.
98+
99+
Refer to your MDM provider's documentation for specific deployment
100+
requirements or limitations.

content/manuals/docker-hub/repos/manage/access.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,3 +132,42 @@ To configure team repository permissions:
132132
Organizations can use OATs. OATs let you assign fine-grained repository access
133133
permissions to tokens. For more details, see [Organization access
134134
tokens](/manuals/security/for-admins/access-tokens.md).
135+
136+
## Gated distribution
137+
138+
{{< summary-bar feature_name="Gated distribution" >}}
139+
140+
Gated distribution allows publishers to securely share private container images with external customers or partners, without giving them full organization access or visibility into your teams, collaborators, or other repositories.
141+
142+
This feature is ideal for commercial software publishers who want to control who can pull specific images while preserving a clean separation between internal users and external consumers.
143+
144+
### Key features
145+
146+
- **Private repository distribution**: Content is stored in private repositories and only accessible to explicitly invited users.
147+
148+
- **External access without organization membership**: External users don't need to be added to your internal organization to pull images.
149+
150+
- **Pull-only permissions**: External users receive pull-only access and cannot push or modify repository content.
151+
152+
- **Invite-only access**: Access is granted through authenticated email invites, managed via API.
153+
154+
### Invite distributor members via API
155+
156+
> [!NOTE]
157+
> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for details about the access permissions for each role.
158+
159+
Distributor members (used for gated distribution) can only be invited using the Docker Hub API. UI-based invitations are not currently supported for this role. To invite distributor members, use the Bulk create invites API endpoint.
160+
161+
To invite distributor members:
162+
163+
1. Use the [Authentication API](https://docs.docker.com/reference/api/hub/latest/#tag/authentication-api/operation/AuthCreateAccessToken) to generate a bearer token for your Docker Hub account.
164+
165+
2. Create a team in the Hub UI or use the [Teams API](https://docs.docker.com/reference/api/hub/latest/#tag/groups/paths/~1v2~1orgs~1%7Borg_name%7D~1groups/post).
166+
167+
3. Grant repository access to the team:
168+
- In the Hub UI: Navigate to your repository settings and add the team with "Read-only" permissions
169+
- Using the [Repository Teams API](https://docs.docker.com/reference/api/hub/latest/#tag/repositories/paths/~1v2~1repositories~1%7Bnamespace%7D~1%7Brepository%7D~1groups/post): Assign the team to your repositories with "read-only" access level
170+
171+
4. Use the [Bulk create invites endpoint](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) to send email invites with the distributor member role. In the request body, set the "role" field to "distributor_member".
172+
173+
5. The invited user will receive an email with a link to accept the invite. After signing in with their Docker ID, they'll be granted pull-only access to the specified private repository as a distributor member.

content/manuals/engine/install/debian.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ To get started with Docker Engine on Debian, make sure you
4242
To install Docker Engine, you need the 64-bit version of one of these Debian
4343
versions:
4444

45+
- Debian Trixie 13 (testing)
4546
- Debian Bookworm 12 (stable)
4647
- Debian Bullseye 11 (oldstable)
4748

@@ -144,7 +145,7 @@ Docker from the repository.
144145
```console
145146
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
146147
```
147-
148+
148149
{{< /tab >}}
149150
{{< tab name="Specific version" >}}
150151

content/manuals/engine/install/fedora.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@ To get started with Docker Engine on Fedora, make sure you
2626
To install Docker Engine, you need a maintained version of one of the following
2727
Fedora versions:
2828

29-
- Fedora 40
29+
- Fedora 42
3030
- Fedora 41
31+
- Fedora 40
3132

3233
### Uninstall old versions
3334

content/manuals/security/for-admins/hardened-desktop/settings-management/_index.md

Lines changed: 47 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -12,70 +12,73 @@ weight: 10
1212

1313
{{< summary-bar feature_name="Hardened Docker Desktop" >}}
1414

15-
Settings Management helps you control key Docker Desktop settings, like proxies and network configurations, on your developers' machines within your organization.
16-
17-
For an extra layer of security, you can also use Settings Management to enable and lock in [Enhanced Container Isolation](../enhanced-container-isolation/_index.md), which prevents containers from modifying any Settings Management configurations.
15+
Settings Management lets administrators configure and enforce Docker Desktop
16+
settings across ennd-user machines. It helps maintain consistent configurations
17+
and enhances security within your organization.
1818

1919
## Who is it for?
2020

21-
- For organizations that want to configure Docker Desktop to be within their organization's centralized control.
22-
- For organizations that want to create a standardized Docker Desktop environment at scale.
23-
- For Docker Business customers who want to confidently manage their use of Docker Desktop within tightly regulated environments.
21+
Settings Management is designed for organizations that:
22+
23+
- Require centralized control over Docker Desktop configurations.
24+
- Aim to standardize Docker Desktop environments across teams.
25+
- Operate in regulated environments and need to enforce compliance.
2426

25-
## How does it work?
27+
This feature is available with a Docker Business subscription.
2628

27-
You can configure several Docker Desktop settings using either:
29+
## How it works
2830

29-
- An `admin-settings.json` file. This file is located on the Docker Desktop host and can only be accessed by developers with root or administrator privileges.
30-
- Creating a settings policy in the Docker Admin Console.
31+
Administrators can define settings using one of the following methods:
3132

32-
Settings that are defined by an administrator override any previous values set by developers and ensure that these cannot be modified.
33+
- [Admin Console](/manuals/security/for-admins/hardened-desktop/settings-management/configure-admin-console.md): Create and assign settings policies through the
34+
Docker Admin Console.
35+
- [`admin-settings.json` file](/manuals/security/for-admins/hardened-desktop/settings-management/configure-json-file.md): Place a configuration file on the
36+
user's machine to enforce settings.
3337

34-
## What features can I configure with Settings Management?
38+
Enforced settings override user-defined configurations and can't be modified
39+
by developers.
3540

36-
Using the `admin-settings.json` file, you can:
41+
## Configurable settings
3742

38-
- Turn on and lock in [Enhanced Container Isolation](../enhanced-container-isolation/_index.md)
39-
- Configure HTTP proxies
40-
- Configure network settings
41-
- Configure Kubernetes settings
42-
- Enforce the use of WSL 2 based engine or Hyper-V
43-
- Enforce the use of Rosetta for x86_64/amd64 emulation on Apple Silicon
44-
- Configure Docker Engine
45-
- Turn off Docker Desktop's ability to checks for updates
46-
- Turn off Docker Extensions
47-
- Turn off Docker Scout SBOM indexing
48-
- Turn off beta and experimental features
49-
- Turn off Docker AI ([Ask Gordon](/manuals/ai/gordon/_index.md))
50-
- Turn off Docker Desktop's onboarding survey
51-
- Control whether developers can use the Docker terminal
52-
- Control the file sharing implementation for your developers on macOS
53-
- Specify which paths your developers can add file shares to
54-
- Configure Air-gapped containers
43+
Settings Management supports a broad range of Docker Desktop features,
44+
including proxies, network configurations, and container isolation.
5545

56-
For more details on the syntax and options, see [Configure Settings Management](configure-json-file.md).
46+
For a full list of settings you can enforce, see the [Settings reference](/manuals/security/for-admins/hardened-desktop/settings-management/settings-reference.md).
5747

58-
## How do I set up and enforce Settings Management?
48+
## Set up Settings Management
5949

60-
You first need to [enforce sign-in](/manuals/security/for-admins/enforce-sign-in/_index.md) to ensure that all Docker Desktop developers authenticate with your organization. Since the Settings Management feature requires a Docker Business subscription, enforced sign-in guarantees that only authenticated users have access and that the feature consistently takes effect across all users, even though it may still work without enforced sign-in.
50+
1. [Enforce sign-in](/manuals/security/for-admins/enforce-sign-in/_index.md) to
51+
ensure all developers authenticate with your organization.
52+
2. Choose a configuration method:
53+
- Use the `--admin-settings` installer flag on [macOS](/manuals/desktop/setup/install/mac-install.md#install-from-the-command-line) or [Windows](/manuals/desktop/setup/install/windows-install.md#install-from-the-command-line) to automatically create the `admin-settings.json`.
54+
- Manually create and configure the [`admin-settings.json` file](/manuals/security/for-admins/hardened-desktop/settings-management/configure-json-file.md).
55+
- Create a settings policy in the [Docker Admin Console](configure-admin-console.md).
6156

62-
Next, you must either:
63-
- Manually [create and configure the `admin-settings.json` file](configure-json-file.md), or use the `--admin-settings` installer flag on [macOS](/manuals/desktop/setup/install/mac-install.md#install-from-the-command-line) or [Windows](/manuals/desktop/setup/install/windows-install.md#install-from-the-command-line) to automatically create the `admin-settings.json` and save it in the correct location.
64-
- Fill out the **Settings policy** creation form in the [Docker Admin Console](configure-admin-console.md).
57+
After configuration, developers receive the enforced setting when they:
6558

66-
Once this is done, Docker Desktop developers receive the changed settings when they either:
67-
- Quit, re-launch, and sign in to Docker Desktop
68-
- Launch and sign in to Docker Desktop for the first time
59+
- Quit and relaunch Docker Desktop, then sign in.
60+
- Launch and sign in to Docker Desktop for the first time.
6961

70-
To avoid disrupting your developers' workflows, Docker doesn't automatically require that developers re-launch and re-authenticate once a change has been made.
62+
> [!NOTE]
63+
>
64+
> Docker Desktop does not automatically prompt users to restart or re-authenticate
65+
after a settings change.
7166

72-
## What do developers see when the settings are enforced?
67+
## Developer experience
7368

74-
Enforced settings appear grayed out in Docker Desktop. They can't be edited via the Docker Desktop Dashboard, CLI, or `settings-store.json` (or `settings.json` for Docker Desktop 4.34 and earlier).
69+
When settings are enforced:
7570

76-
In addition, if Enhanced Container Isolation is enforced, developers can't use privileged containers or similar techniques to modify enforced settings within the Docker Desktop Linux VM. For example, they can't reconfigure proxy and networking, or Docker Engine.
71+
- Options appear grayed out in Docker Desktop and can't be modified via the
72+
Dashboard, CLI, or configuration files.
73+
- If Enhanced Container Isolation is enabled, developers can't use privileged
74+
containers or similar methods to alter enforced settings within the Docker
75+
Desktop Linux VM.
7776

7877
## What's next?
7978

80-
- [Configure Settings Management with a `.json` file](configure-json-file.md)
79+
- [Configure Settings Management with the `admin-settings.json` file](configure-json-file.md)
8180
- [Configure Settings Management with the Docker Admin Console](configure-admin-console.md)
81+
82+
## Learn more
83+
84+
To see how each Docker Desktop setting maps across the Docker Dashboard, `admin-settings.json` file, and Admin Console, see the [Settings reference](settings-reference.md).

0 commit comments

Comments
 (0)