From b011f6741409336f6fb6d041ca786f7d0c834b80 Mon Sep 17 00:00:00 2001 From: Manju Karikatti Date: Fri, 3 Oct 2025 18:03:00 +0100 Subject: [PATCH 1/4] added installer flags for PAC file --- .../manuals/desktop/setup/install/mac-install.md | 7 +++++++ .../desktop/setup/install/windows-install.md | 7 +++++++ .../msi-install-and-configure.md | 14 ++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/content/manuals/desktop/setup/install/mac-install.md b/content/manuals/desktop/setup/install/mac-install.md index 12196e635411..23f5c8bcdb43 100644 --- a/content/manuals/desktop/setup/install/mac-install.md +++ b/content/manuals/desktop/setup/install/mac-install.md @@ -131,6 +131,13 @@ The `install` command accepts the following flags: - `--override-proxy-http=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTP requests. It requires `--proxy-http-mode` to be `manual`. - `--override-proxy-https=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests, requires `--proxy-http-mode` to be `manual` - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. It's a comma-separated list. +- `--override-proxy-pac=`: Sets the PAC file URL. Applicable for `manual` proxy mode. +- `--override-proxy-embedded-pac=`: Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. + + +##### Example of specifying PAC file / PAC script: + + `sudo /Applications/Docker.app/Contents/MacOS/install --user testuser --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"` > [!TIP] > diff --git a/content/manuals/desktop/setup/install/windows-install.md b/content/manuals/desktop/setup/install/windows-install.md index 87c90070cd78..450edb53c1b2 100644 --- a/content/manuals/desktop/setup/install/windows-install.md +++ b/content/manuals/desktop/setup/install/windows-install.md @@ -285,6 +285,13 @@ The `install` command accepts the following flags: - `--override-proxy-https=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests, requires `--proxy-http-mode` to be `manual` - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. - `--proxy-enable-kerberosntlm`: Enables Kerberos and NTLM proxy authentication. If you are enabling this, ensure your proxy server is properly configured for Kerberos/NTLM authentication. Available with Docker Desktop 4.32 and later. +- `--override-proxy-pac=`: Sets the PAC file URL. Applicable for `manual` proxy mode. +- `--override-proxy-embedded-pac=`: Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. + + +###### Example of specifying PAC file / PAC script: + + `"Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"` ##### Data root and disk location diff --git a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md index f36d85ee4abc..5e073c5df246 100644 --- a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md +++ b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md @@ -110,6 +110,18 @@ msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart ADMINSETTINGS= msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart ALLOWEDORG="your-organization" ALWAYSRUNSERVICE=1 ``` +#### Install interactively specifying a PAC file +```powershell +PowerShell + msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYPAC="http://localhost:8080/myproxy.pac" +``` + +#### Install interactively specifying a PAC script +```powershell +PowerShell + msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYEMBEDDEDPAC="function FindProxyForURL(url,host) {return ""DIRECT"" ;; }" +``` + #### Install with the passive display option You can use the `/passive` display option instead of `/quiet` when you want to perform a non-interactive installation but show a progress dialog. @@ -202,6 +214,8 @@ msiexec /x "DockerDesktop.msi" /quiet | `OVERRIDEPROXYHTTP` | Sets the URL of the HTTP proxy that must be used for outgoing HTTP requests. | None | | `OVERRIDEPROXYHTTPS` | Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests. | None | | `OVERRIDEPROXYEXCLUDE` | Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. | None | +| `OVERRIDEPROXYPAC` | Sets the PAC file URL. Applicable for `manual` proxy mode. | None | +| `OVERRIDEPROXYEMBEDDEDPAC` | Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. | None | | `HYPERVDEFAULTDATAROOT` | Specifies the default location for the Hyper-V VM disk. | None | | `WINDOWSCONTAINERSDEFAULTDATAROOT` | Specifies the default location for Windows containers. | None | | `WSLDEFAULTDATAROOT` | Specifies the default location for the WSL distribution disk. | None | From bac765f38d085697f8a92d64094d18c1ba2f5b15 Mon Sep 17 00:00:00 2001 From: Manju Karikatti Date: Fri, 3 Oct 2025 19:41:59 +0100 Subject: [PATCH 2/4] review --- content/manuals/desktop/setup/install/mac-install.md | 4 ++-- content/manuals/desktop/setup/install/windows-install.md | 4 ++-- .../enterprise-deployment/msi-install-and-configure.md | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/content/manuals/desktop/setup/install/mac-install.md b/content/manuals/desktop/setup/install/mac-install.md index 23f5c8bcdb43..8d21ca60149e 100644 --- a/content/manuals/desktop/setup/install/mac-install.md +++ b/content/manuals/desktop/setup/install/mac-install.md @@ -131,8 +131,8 @@ The `install` command accepts the following flags: - `--override-proxy-http=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTP requests. It requires `--proxy-http-mode` to be `manual`. - `--override-proxy-https=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests, requires `--proxy-http-mode` to be `manual` - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. It's a comma-separated list. -- `--override-proxy-pac=`: Sets the PAC file URL. Applicable for `manual` proxy mode. -- `--override-proxy-embedded-pac=`: Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. +- `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. +- `--override-proxy-embedded-pac=`: 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. ##### Example of specifying PAC file / PAC script: diff --git a/content/manuals/desktop/setup/install/windows-install.md b/content/manuals/desktop/setup/install/windows-install.md index 450edb53c1b2..030d663f8d8b 100644 --- a/content/manuals/desktop/setup/install/windows-install.md +++ b/content/manuals/desktop/setup/install/windows-install.md @@ -285,8 +285,8 @@ The `install` command accepts the following flags: - `--override-proxy-https=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests, requires `--proxy-http-mode` to be `manual` - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. - `--proxy-enable-kerberosntlm`: Enables Kerberos and NTLM proxy authentication. If you are enabling this, ensure your proxy server is properly configured for Kerberos/NTLM authentication. Available with Docker Desktop 4.32 and later. -- `--override-proxy-pac=`: Sets the PAC file URL. Applicable for `manual` proxy mode. -- `--override-proxy-embedded-pac=`: Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. +- `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. +- `--override-proxy-embedded-pac=`: 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. ###### Example of specifying PAC file / PAC script: diff --git a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md index 5e073c5df246..9107f1672d1c 100644 --- a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md +++ b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md @@ -214,8 +214,8 @@ msiexec /x "DockerDesktop.msi" /quiet | `OVERRIDEPROXYHTTP` | Sets the URL of the HTTP proxy that must be used for outgoing HTTP requests. | None | | `OVERRIDEPROXYHTTPS` | Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests. | None | | `OVERRIDEPROXYEXCLUDE` | Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. | None | -| `OVERRIDEPROXYPAC` | Sets the PAC file URL. Applicable for `manual` proxy mode. | None | -| `OVERRIDEPROXYEMBEDDEDPAC` | Specifies an embedded PAC (Proxy Auto-Config) script. Applicable for `manual` proxy mode. | None | +| `OVERRIDEPROXYPAC` | Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. | None | +| `OVERRIDEPROXYEMBEDDEDPAC` | 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.| None | | `HYPERVDEFAULTDATAROOT` | Specifies the default location for the Hyper-V VM disk. | None | | `WINDOWSCONTAINERSDEFAULTDATAROOT` | Specifies the default location for Windows containers. | None | | `WSLDEFAULTDATAROOT` | Specifies the default location for the WSL distribution disk. | None | From d4dabe70c122c9412f07d0cc13cff98c1e4c48ce Mon Sep 17 00:00:00 2001 From: aevesdocker Date: Mon, 6 Oct 2025 11:55:00 +0100 Subject: [PATCH 3/4] fixes and edits --- content/manuals/desktop/setup/install/mac-install.md | 9 +++++---- content/manuals/desktop/setup/install/windows-install.md | 7 ++++--- .../enterprise-deployment/msi-install-and-configure.md | 4 +++- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/content/manuals/desktop/setup/install/mac-install.md b/content/manuals/desktop/setup/install/mac-install.md index 8d21ca60149e..653f38f89393 100644 --- a/content/manuals/desktop/setup/install/mac-install.md +++ b/content/manuals/desktop/setup/install/mac-install.md @@ -132,12 +132,13 @@ The `install` command accepts the following flags: - `--override-proxy-https=`: Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests, requires `--proxy-http-mode` to be `manual` - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. It's a comma-separated list. - `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. -- `--override-proxy-embedded-pac=`: 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. +- `--override-proxy-embedded-pac=`: 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. +###### Example of specifying PAC file / PAC script: -##### Example of specifying PAC file / PAC script: - - `sudo /Applications/Docker.app/Contents/MacOS/install --user testuser --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"` +```console + $ sudo /Applications/Docker.app/Contents/MacOS/install --user testuser --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }" +``` > [!TIP] > diff --git a/content/manuals/desktop/setup/install/windows-install.md b/content/manuals/desktop/setup/install/windows-install.md index 030d663f8d8b..aa0098abd865 100644 --- a/content/manuals/desktop/setup/install/windows-install.md +++ b/content/manuals/desktop/setup/install/windows-install.md @@ -286,12 +286,13 @@ The `install` command accepts the following flags: - `--override-proxy-exclude=`: Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. - `--proxy-enable-kerberosntlm`: Enables Kerberos and NTLM proxy authentication. If you are enabling this, ensure your proxy server is properly configured for Kerberos/NTLM authentication. Available with Docker Desktop 4.32 and later. - `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. -- `--override-proxy-embedded-pac=`: 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. - +- `--override-proxy-embedded-pac=`: 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. ###### Example of specifying PAC file / PAC script: - `"Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"` +```console + "Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }" +``` ##### Data root and disk location diff --git a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md index 9107f1672d1c..0b1659f80c88 100644 --- a/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md +++ b/content/manuals/enterprise/enterprise-deployment/msi-install-and-configure.md @@ -111,12 +111,14 @@ msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart ALLOWEDORG="yo ``` #### Install interactively specifying a PAC file + ```powershell PowerShell msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYPAC="http://localhost:8080/myproxy.pac" ``` #### Install interactively specifying a PAC script + ```powershell PowerShell msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYEMBEDDEDPAC="function FindProxyForURL(url,host) {return ""DIRECT"" ;; }" @@ -215,7 +217,7 @@ msiexec /x "DockerDesktop.msi" /quiet | `OVERRIDEPROXYHTTPS` | Sets the URL of the HTTP proxy that must be used for outgoing HTTPS requests. | None | | `OVERRIDEPROXYEXCLUDE` | Bypasses proxy settings for the hosts and domains. Uses a comma-separated list. | None | | `OVERRIDEPROXYPAC` | Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. | None | -| `OVERRIDEPROXYEMBEDDEDPAC` | 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.| None | +| `OVERRIDEPROXYEMBEDDEDPAC` | Specifies an embedded PAC (Proxy Auto-Config) script. This setting takes effect only when using `manual` proxy mode and has precedence over the `OVERRIDEPROXYPAC` flag.| None | | `HYPERVDEFAULTDATAROOT` | Specifies the default location for the Hyper-V VM disk. | None | | `WINDOWSCONTAINERSDEFAULTDATAROOT` | Specifies the default location for Windows containers. | None | | `WSLDEFAULTDATAROOT` | Specifies the default location for the WSL distribution disk. | None | From 4094083777eb87ae2ec96ffb4ab79edefd262f54 Mon Sep 17 00:00:00 2001 From: aevesdocker Date: Mon, 6 Oct 2025 11:56:24 +0100 Subject: [PATCH 4/4] fixes and edits --- content/manuals/desktop/setup/install/mac-install.md | 2 +- content/manuals/desktop/setup/install/windows-install.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/content/manuals/desktop/setup/install/mac-install.md b/content/manuals/desktop/setup/install/mac-install.md index 653f38f89393..2cd92c6fd006 100644 --- a/content/manuals/desktop/setup/install/mac-install.md +++ b/content/manuals/desktop/setup/install/mac-install.md @@ -134,7 +134,7 @@ The `install` command accepts the following flags: - `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. - `--override-proxy-embedded-pac=`: 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. -###### Example of specifying PAC file / PAC script: +###### Example of specifying PAC file / PAC script ```console $ sudo /Applications/Docker.app/Contents/MacOS/install --user testuser --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }" diff --git a/content/manuals/desktop/setup/install/windows-install.md b/content/manuals/desktop/setup/install/windows-install.md index aa0098abd865..74a20d82712b 100644 --- a/content/manuals/desktop/setup/install/windows-install.md +++ b/content/manuals/desktop/setup/install/windows-install.md @@ -288,7 +288,7 @@ The `install` command accepts the following flags: - `--override-proxy-pac=`: Sets the PAC file URL. This setting takes effect only when using `manual` proxy mode. - `--override-proxy-embedded-pac=`: 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. -###### Example of specifying PAC file / PAC script: +###### Example of specifying PAC file / PAC script ```console "Docker Desktop Installer.exe" install --proxy-http-mode="manual" --override-proxy-pac="http://localhost:8080/myproxy.pac" --override-proxy-embedded-pac="function FindProxyForURL(url, host) { return \"DIRECT\"; }"