Skip to content

Commit 8d8aaf7

Browse files
updates to air-gapped containers and FAQs (#23844)
<!--Delete sections as needed --> ## Description Doc updates from an internal feedback: https://docker.slack.com/archives/C0W4XJVFW/p1759224192244879?thread_ts=1759135611.564829&cid=C0W4XJVFW ## Related issues or tickets <!-- Related issues, pull requests, or Jira tickets --> ## Reviews <!-- Notes for reviewers here --> <!-- List applicable reviews (optionally @tag reviewers) --> - [ ] Technical review - [x] Editorial review - [ ] Product review --------- Co-authored-by: aevesdocker <[email protected]>
1 parent a1dd8b7 commit 8d8aaf7

File tree

2 files changed

+56
-1
lines changed

2 files changed

+56
-1
lines changed

content/manuals/desktop/troubleshoot-and-support/faqs/general.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,47 @@ For more information and examples, see [how to connect from a container to a ser
6666

6767
Docker Desktop does not support direct USB device passthrough. However, you can use USB over IP to connect common USB devices to the Docker Desktop VM and in turn be forwarded to a container. For more details, see [Using USB/IP with Docker Desktop](/manuals/desktop/features/usbip.md).
6868

69+
### How do I verify Docker Desktop is using a proxy server ?
70+
71+
To verify, look at the most recent events logged in `httpproxy.log`. This is located at `~/Library/Containers/com.docker.docker/Data/log/host` on macOS or `%LOCALAPPDATA%/Docker/log/host/` on Windows.
72+
73+
The following shows a few examples of what you can expect to see:
74+
75+
- Docker Desktop using app level settings (proxy mode manual) for proxy:
76+
77+
```console
78+
host will use proxy: app settings http_proxy=http://172.211.16.3:3128 https_proxy=http://172.211.16.3:3128
79+
Linux will use proxy: app settings http_proxy=http://172.211.16.3:3128 https_proxy=http://172.211.16.3:3128
80+
```
81+
82+
- Docker Desktop using system level settings (proxy mode system) for proxy:
83+
84+
```console
85+
host will use proxy: static system http_proxy=http://172.211.16.3:3128 https_proxy=http://172.211.16.3:3128 no_proxy=
86+
Linux will use proxy: static system http_proxy=http://172.211.16.3:3128 https_proxy=http://172.211.16.3:3128 no_proxy=
87+
```
88+
89+
- Docker Desktop is not configured to use a proxy server:
90+
91+
```console
92+
host will use proxy: disabled
93+
Linux will use proxy: disabled
94+
```
95+
96+
- Docker Desktop is configured to use app level settings (proxy mode manual) and using a PAC file:
97+
98+
```console
99+
using a proxy PAC file: http://127.0.0.1:8081/proxy.pac
100+
host will use proxy: app settings from PAC file http://127.0.0.1:8081/proxy.pac
101+
Linux will use proxy: app settings from PAC file http://127.0.0.1:8081/proxy.pac
102+
```
103+
104+
- Connect request using the configured proxy server:
105+
106+
```console
107+
CONNECT desktop.docker.com:443: host connecting via static system HTTPS proxy http://172.211.16.3:3128
108+
```
109+
69110
### How do I run Docker Desktop without administrator privileges?
70111

71112
Docker Desktop requires administrator privileges only for installation. Once installed, administrator privileges are not needed to run it. However, for non-admin users to run Docker Desktop, it must be installed using a specific installer flag and meet certain prerequisites, which vary by platform.

content/manuals/enterprise/security/hardened-desktop/air-gapped-containers.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ Some important considerations include:
3939

4040
- The existing `proxy` setting continues to apply to Docker Desktop application traffic on the host
4141
- If PAC file download fails, containers block requests to target URLs
42-
- URL parameter format is `http://host_or_ip:port` or `https://host_or_ip:port`
4342
- Hostname is available for ports 80 and 443, but only IP addresses for other ports
4443

4544
## Prerequisites
@@ -143,6 +142,21 @@ function FindProxyForURL(url, host) {
143142
}
144143
```
145144

145+
### General considerations
146+
147+
- `FindProxyForURL` function URL parameter format is http://host_or_ip:port or https://host_or_ip:port
148+
- If you have an internal container trying to access https://docs.docker.com/enterprise/security/hardened-desktop/air-gapped-containers the docker proxy service will submit docs.docker.com for the host value and https://docs.docker.com:443 for the url value to FindProxyForURL, if you are using `shExpMatch` function in your PAC file as follows:
149+
150+
```console
151+
if(shExpMatch(url, "https://docs.docker.com:443/enterprise/security/*")) return "DIRECT";
152+
```
153+
154+
`shExpMatch` function will fail, instead use:
155+
156+
```console
157+
if (host == docs.docker.com && url.indexOf(":443") > 0) return "DIRECT";
158+
```
159+
146160
### PAC file return values
147161

148162
| Return value | Action |

0 commit comments

Comments
 (0)