Skip to content

Commit 319848a

Browse files
authored
Desktop: windows install (#23959)
<!--Delete sections as needed --> ## Description https://docker.atlassian.net/browse/GRO-118 No new content, just reordering ## Related issues or tickets <!-- Related issues, pull requests, or Jira tickets --> ## Reviews <!-- Notes for reviewers here --> <!-- List applicable reviews (optionally @tag reviewers) --> - [ ] Technical review - [ ] Editorial review - [ ] Product review
1 parent 8dd5194 commit 319848a

1 file changed

Lines changed: 106 additions & 107 deletions

File tree

content/manuals/desktop/setup/install/windows-install.md

Lines changed: 106 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ _For checksums, see [Release notes](/manuals/desktop/release-notes.md)_
4747
{{< tabs >}}
4848
{{< tab name="WSL 2 backend, x86_64" >}}
4949

50-
- WSL version 2.1.5 or later.
50+
- WSL version 2.1.5 or later. To check your version, see [WSL: Verification and setup](#wsl-verification-and-setup)
5151
- Windows 10 64-bit: Enterprise, Pro, or Education version 22H2 (build 19045).
5252
- Windows 11 64-bit: Enterprise, Pro, or Education version 23H2 (build 22631) or higher.
5353
- Turn on the WSL 2 feature on Windows. For detailed instructions, refer to the
@@ -67,7 +67,7 @@ For more information on setting up WSL 2 with Docker Desktop, see [WSL](/manuals
6767
6868
> [!IMPORTANT]
6969
>
70-
> To run Windows containers, you need Windows 10 or Windows 11 Professional or Enterprise edition.
70+
> To run [Windows containers](#windows-containers), you need Windows 10 or Windows 11 Professional or Enterprise edition.
7171
> Windows Home or Education editions only allow you to run Linux containers.
7272
7373
{{< /tab >}}
@@ -91,13 +91,13 @@ For more information on setting up WSL 2 with Docker Desktop, see [WSL](/manuals
9191
9292
> [!IMPORTANT]
9393
>
94-
> To run Windows containers, you need Windows 10 or Windows 11 Professional or Enterprise edition.
94+
> To run [Windows containers](#windows-containers), you need Windows 10 or Windows 11 Professional or Enterprise edition.
9595
> Windows Home or Education editions only allow you to run Linux containers.
9696
9797
{{< /tab >}}
9898
{{< tab name="WSL 2 backend, Arm (Early Access)" >}}
9999

100-
- WSL version 2.1.5 or later.
100+
- WSL version 2.1.5 or later. To check your version, see [WSL: Verification and setup](#wsl-verification-and-setup)
101101
- Windows 10 64-bit: Enterprise, Pro, or Education version 22H2 (build 19045).
102102
- Windows 11 64-bit: Enterprise, Pro, or Education version 23H2 (build 22631) or higher.
103103
- Turn on the WSL 2 feature on Windows. For detailed instructions, refer to the
@@ -124,81 +124,8 @@ Running Docker Desktop inside a VMware ESXi or Azure VM is supported for Docker
124124
It requires enabling nested virtualization on the hypervisor first.
125125
For more information, see [Running Docker Desktop in a VM or VDI environment](/manuals/desktop/setup/vm-vdi.md).
126126

127-
{{< accordion title="How do I switch between Windows and Linux containers?" >}}
128-
129-
From the Docker Desktop menu, you can toggle which daemon (Linux or Windows)
130-
the Docker CLI talks to. Select **Switch to Windows containers** to use Windows
131-
containers, or select **Switch to Linux containers** to use Linux containers
132-
(the default).
133-
134-
For more information on Windows containers, refer to the following documentation:
135-
136-
- Microsoft documentation on [Windows containers](https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/index).
137-
138-
- [Build and Run Your First Windows Server Container (Blog Post)](https://www.docker.com/blog/build-your-first-docker-windows-server-container/)
139-
gives a quick tour of how to build and run native Docker Windows containers on Windows 10 and Windows Server 2016 evaluation releases.
140-
141-
- [Getting Started with Windows Containers (Lab)](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md)
142-
shows you how to use the [MusicStore](https://github.com/aspnet/MusicStore/)
143-
application with Windows containers. The MusicStore is a standard .NET application and,
144-
[forked here to use containers](https://github.com/friism/MusicStore), is a good example of a multi-container application.
145-
146-
- To understand how to connect to Windows containers from the local host, see
147-
[I want to connect to a container from Windows](/manuals/desktop/features/networking.md#i-want-to-connect-to-a-container-from-the-host)
148-
149-
> [!NOTE]
150-
>
151-
> When you switch to Windows containers, **Settings** only shows those tabs that are active and apply to your Windows containers.
152-
153-
If you set proxies or daemon configuration in Windows containers mode, these
154-
apply only on Windows containers. If you switch back to Linux containers,
155-
proxies and daemon configurations return to what you had set for Linux
156-
containers. Your Windows container settings are retained and become available
157-
again when you switch back.
158-
159-
{{< /accordion >}}
160-
161-
## Administrator privileges and installation requirements
162-
163-
Installing Docker Desktop requires administrator privileges. However, once installed, it can be used without administrative access. Some actions, though, still need elevated permissions. See [Understand permission requirements for Windows](./windows-permission-requirements.md) for more detail.
164-
165-
If your users do not have administrator rights and plan to perform operations that require elevated privileges, be sure to install Docker Desktop using the `--always-run-service` installer flag. This ensures those actions can still be executed without prompting for User Account Control (UAC) elevation. See [Installer Flags](#installer-flags) for more detail.
166-
167-
## WSL: Verification and setup
168-
169-
If you have chosen to use WSL, first verify that your installed version meets system requirements by running the following command in your terminal:
170-
171-
```console
172-
wsl --version
173-
```
174-
175-
If version details do not appear, you are likely using the inbox version of WSL. This version does not support modern capabilities and must be updated.
176-
177-
You can update or install WSL using one of the following methods:
178-
179-
### Option 1: Install or update WSL via the terminal
180-
181-
1. Open PowerShell or Windows Command Prompt in administrator mode.
182-
2. Run either the install or update command. You may be prompted to restart your machine. For more information, refer to [Install WSL](https://learn.microsoft.com/en-us/windows/wsl/install).
183-
```console
184-
wsl --install
185-
186-
wsl --update
187-
```
188-
189-
### Option 2: Install WSL via the MSI package
190-
191-
If Microsoft Store access is blocked due to security policies:
192-
1. Go to the official [WSL GitHub Releases page](https://github.com/microsoft/WSL/releases).
193-
2. Download the `.msi` installer from the latest stable release (under the Assets drop-down).
194-
3. Run the downloaded installer and follow the setup instructions.
195-
196127
## Install Docker Desktop on Windows
197128

198-
> [!TIP]
199-
>
200-
> See the [FAQs](/manuals/desktop/troubleshoot-and-support/faqs/general.md#how-do-i-run-docker-desktop-without-administrator-privileges) on how to install and run Docker Desktop without needing administrator privileges.
201-
202129
### Install interactively
203130

204131
1. Download the installer using the download button at the top of the page, or from the [release notes](/manuals/desktop/release-notes.md).
@@ -244,7 +171,72 @@ start /w "" "Docker Desktop Installer.exe" install
244171

245172
By default, Docker Desktop is installed at `C:\Program Files\Docker\Docker`.
246173

247-
#### Installer flags
174+
If your administrator account is different to your user account, you must add the user to the **docker-users** group to access features that require higher privileges, such as creating and managing the Hyper-V VM, or using Windows containers.
175+
176+
```console
177+
$ net localgroup docker-users <user> /add
178+
```
179+
180+
See the [Installer flags](#installer-flags) section to see what flags the `install` command accepts.
181+
182+
## Start Docker Desktop
183+
184+
Docker Desktop does not start automatically after installation. To start Docker Desktop:
185+
186+
1. Search for Docker, and select **Docker Desktop** in the search results.
187+
188+
2. The Docker menu ({{< inline-image src="images/whale-x.svg" alt="whale menu" >}}) displays the Docker Subscription Service Agreement.
189+
190+
{{% include "desktop-license-update.md" %}}
191+
192+
3. Select **Accept** to continue. Docker Desktop starts after you accept the terms.
193+
194+
Note that Docker Desktop won't run if you do not agree to the terms. You can choose to accept the terms at a later date by opening Docker Desktop.
195+
196+
For more information, see [Docker Desktop Subscription Service Agreement](https://www.docker.com/legal/docker-subscription-service-agreement/). It is recommended that you read the [FAQs](https://www.docker.com/pricing/faq).
197+
198+
> [!TIP]
199+
>
200+
> As an IT administrator, you can use endpoint management (MDM) software to identify the number of Docker Desktop instances and their versions within your environment. This can provide accurate license reporting, help ensure your machines use the latest version of Docker Desktop, and enable you to [enforce sign-in](/manuals/enterprise/security/enforce-sign-in/_index.md).
201+
> - [Intune](https://learn.microsoft.com/en-us/mem/intune/apps/app-discovered-apps)
202+
> - [Jamf](https://docs.jamf.com/10.25.0/jamf-pro/administrator-guide/Application_Usage.html)
203+
> - [Kandji](https://support.kandji.io/support/solutions/articles/72000559793-view-a-device-application-list)
204+
> - [Kolide](https://www.kolide.com/features/device-inventory/properties/mac-apps)
205+
> - [Workspace One](https://blogs.vmware.com/euc/2022/11/how-to-use-workspace-one-intelligence-to-manage-app-licenses-and-reduce-costs.html)
206+
207+
208+
## Advanced system configuration and installation options
209+
210+
### WSL: Verification and setup
211+
212+
If you have chosen to use WSL, first verify that your installed version meets system requirements by running the following command in your terminal:
213+
214+
```console
215+
wsl --version
216+
```
217+
218+
If version details do not appear, you are likely using the inbox version of WSL. This version does not support modern capabilities and must be updated.
219+
220+
You can update or install WSL using one of the following methods:
221+
222+
#### Option 1: Install or update WSL via the terminal
223+
224+
1. Open PowerShell or Windows Command Prompt in administrator mode.
225+
2. Run either the install or update command. You may be prompted to restart your machine. For more information, refer to [Install WSL](https://learn.microsoft.com/en-us/windows/wsl/install).
226+
```console
227+
wsl --install
228+
229+
wsl --update
230+
```
231+
232+
#### Option 2: Install WSL via the MSI package
233+
234+
If Microsoft Store access is blocked due to security policies:
235+
1. Go to the official [WSL GitHub Releases page](https://github.com/microsoft/WSL/releases).
236+
2. Download the `.msi` installer from the latest stable release (under the Assets drop-down).
237+
3. Run the downloaded installer and follow the setup instructions.
238+
239+
### Installer flags
248240

249241
> [!NOTE]
250242
>
@@ -254,31 +246,23 @@ By default, Docker Desktop is installed at `C:\Program Files\Docker\Docker`.
254246
> Start-Process 'Docker Desktop Installer.exe' -Wait -ArgumentList 'install', '--accept-license'
255247
> ```
256248
257-
If your admin account is different to your user account, you must add the user to the **docker-users** group to access features that require higher privileges, such as creating and managing the Hyper-V VM, or using Windows containers.
258-
259-
```console
260-
$ net localgroup docker-users <user> /add
261-
```
262-
263-
The `install` command accepts the following flags:
264-
265-
##### Installation behavior
249+
#### Installation behavior
266250
267251
- `--quiet`: Suppresses information output when running the installer
268252
- `--accept-license`: Accepts the [Docker Subscription Service Agreement](https://www.docker.com/legal/docker-subscription-service-agreement) now, rather than requiring it to be accepted when the application is first run
269253
- `--installation-dir=<path>`: Changes the default installation location (`C:\Program Files\Docker\Docker`)
270254
- `--backend=<backend name>`: Selects the default backend to use for Docker Desktop, `hyper-v`, `windows` or `wsl-2` (default)
271255
- `--always-run-service`: After installation completes, starts `com.docker.service` and sets the service startup type to Automatic. This circumvents the need for administrator privileges, which are otherwise necessary to start `com.docker.service`. `com.docker.service` is required by Windows containers and Hyper-V backend.
272256
273-
##### Security and access control
257+
#### Security and access control
274258
275259
- `--allowed-org=<org name>`: Requires the user to sign in and be part of the specified Docker Hub organization when running the application
276260
- `--admin-settings`: Automatically creates an `admin-settings.json` file which is used by admins to control certain Docker Desktop settings on client machines within their organization. For more information, see [Settings Management](/manuals/enterprise/security/hardened-desktop/settings-management/_index.md).
277261
- It must be used together with the `--allowed-org=<org name>` flag.
278262
- For example:`--allowed-org=<org name> --admin-settings="{'configurationFileVersion': 2, 'enhancedContainerIsolation': {'value': true, 'locked': false}}"`
279263
- `--no-windows-containers`: Disables the Windows containers integration. This can improve security. For more information, see [Windows containers](/manuals/desktop/setup/install/windows-permission-requirements.md#windows-containers).
280264
281-
##### Proxy configuration
265+
#### Proxy configuration
282266
283267
- `--proxy-http-mode=<mode>`: Sets the HTTP Proxy mode, `system` (default) or `manual`
284268
- `--override-proxy-http=<URL>`: Sets the URL of the HTTP proxy that must be used for outgoing HTTP requests, requires `--proxy-http-mode` to be `manual`
@@ -288,48 +272,63 @@ The `install` command accepts the following flags:
288272
- `--override-proxy-pac=<PAC file URL>`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode.
289273
- `--override-proxy-embedded-pac=<PAC script>`: Specifies an embedded PAC (Proxy Auto-Config) script. This setting takes effect only when using `manual` proxy mode and has precedence over the `--override-proxy-pac` flag.
290274
291-
###### Example of specifying PAC file
275+
##### Example of specifying PAC file
292276
293277
```console
294278
"Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac"
295279
```
296280
297-
###### Example of specifying PAC script
281+
##### Example of specifying PAC script
298282

299283
```console
300284
"Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"
301285
```
302286

303-
##### Data root and disk location
287+
#### Data root and disk location
304288

305289
- `--hyper-v-default-data-root=<path>`: Specifies the default location for the Hyper-V VM disk.
306290
- `--windows-containers-default-data-root=<path>`: Specifies the default location for the Windows containers.
307291
- `--wsl-default-data-root=<path>`: Specifies the default location for the WSL distribution disk.
308292

309-
## Start Docker Desktop
293+
### Administrator privileges
310294

311-
Docker Desktop does not start automatically after installation. To start Docker Desktop:
295+
Installing Docker Desktop requires administrator privileges. However, once installed, it can be used without administrative access. Some actions, though, still need elevated permissions. See [Understand permission requirements for Windows](./windows-permission-requirements.md) for more detail.
312296

313-
1. Search for Docker, and select **Docker Desktop** in the search results.
297+
See the [FAQs](/manuals/desktop/troubleshoot-and-support/faqs/general.md#how-do-i-run-docker-desktop-without-administrator-privileges) on how to install and run Docker Desktop without needing administrator privileges.
314298

315-
2. The Docker menu ({{< inline-image src="images/whale-x.svg" alt="whale menu" >}}) displays the Docker Subscription Service Agreement.
299+
If you're an IT admin and your users do not have administrator rights and plan to perform operations that require elevated privileges, be sure to install Docker Desktop using the `--always-run-service` installer flag. This ensures those actions can still be executed without prompting for User Account Control (UAC) elevation. See [Installer Flags](#installer-flags) for more detail.
316300

317-
{{% include "desktop-license-update.md" %}}
301+
### Windows containers
318302

319-
3. Select **Accept** to continue. Docker Desktop starts after you accept the terms.
303+
From the Docker Desktop menu, you can toggle which daemon (Linux or Windows)
304+
the Docker CLI talks to. Select **Switch to Windows containers** to use Windows
305+
containers, or select **Switch to Linux containers** to use Linux containers
306+
(the default).
320307

321-
Note that Docker Desktop won't run if you do not agree to the terms. You can choose to accept the terms at a later date by opening Docker Desktop.
308+
For more information on Windows containers, refer to the following documentation:
322309

323-
For more information, see [Docker Desktop Subscription Service Agreement](https://www.docker.com/legal/docker-subscription-service-agreement/). It is recommended that you read the [FAQs](https://www.docker.com/pricing/faq).
310+
- Microsoft documentation on [Windows containers](https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/index).
324311

325-
> [!TIP]
312+
- [Build and Run Your First Windows Server Container (Blog Post)](https://www.docker.com/blog/build-your-first-docker-windows-server-container/)
313+
gives a quick tour of how to build and run native Docker Windows containers on Windows 10 and Windows Server 2016 evaluation releases.
314+
315+
- [Getting Started with Windows Containers (Lab)](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md)
316+
shows you how to use the [MusicStore](https://github.com/aspnet/MusicStore/)
317+
application with Windows containers. The MusicStore is a standard .NET application and,
318+
[forked here to use containers](https://github.com/friism/MusicStore), is a good example of a multi-container application.
319+
320+
- To understand how to connect to Windows containers from the local host, see
321+
[I want to connect to a container from Windows](/manuals/desktop/features/networking.md#i-want-to-connect-to-a-container-from-the-host)
322+
323+
> [!NOTE]
326324
>
327-
> As an IT administrator, you can use endpoint management (MDM) software to identify the number of Docker Desktop instances and their versions within your environment. This can provide accurate license reporting, help ensure your machines use the latest version of Docker Desktop, and enable you to [enforce sign-in](/manuals/enterprise/security/enforce-sign-in/_index.md).
328-
> - [Intune](https://learn.microsoft.com/en-us/mem/intune/apps/app-discovered-apps)
329-
> - [Jamf](https://docs.jamf.com/10.25.0/jamf-pro/administrator-guide/Application_Usage.html)
330-
> - [Kandji](https://support.kandji.io/support/solutions/articles/72000559793-view-a-device-application-list)
331-
> - [Kolide](https://www.kolide.com/features/device-inventory/properties/mac-apps)
332-
> - [Workspace One](https://blogs.vmware.com/euc/2022/11/how-to-use-workspace-one-intelligence-to-manage-app-licenses-and-reduce-costs.html)
325+
> When you switch to Windows containers, **Settings** only shows those tabs that are active and apply to your Windows containers.
326+
327+
If you set proxies or daemon configuration in Windows containers mode, these
328+
apply only on Windows containers. If you switch back to Linux containers,
329+
proxies and daemon configurations return to what you had set for Linux
330+
containers. Your Windows container settings are retained and become available
331+
again when you switch back.
333332

334333
## Where to go next
335334

0 commit comments

Comments
 (0)