Skip to content

Commit dca5b45

Browse files
Merge pull request docker#42 from londoncalling/d4mac-d4win-prs
PRs on shared drives and CAs, HTML fixes
2 parents a059edd + 063003d commit dca5b45

File tree

6 files changed

+91
-38
lines changed

6 files changed

+91
-38
lines changed

docker-for-mac/faqs.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,19 +97,33 @@ If you are working with applications like [Apache Maven](https://maven.apache.or
9797

9898
The Mac has a changing IP address (or none if you have no network access). Our current recommendation is to attach an unused IP to the `lo0` interface on the Mac so that containers can connect to this address.
9999

100-
For a full explanation and examples, see [I want to connect from a container to a service on the host](networking.md#i-want-to-connect-from-a-container-to-a-service-on-the-host) under [Known Limitations, Use Cases, and Workarounds](networking.md#known-limitations-use-cases-and-workarounds) in the Networking topic.
100+
For a full explanation and examples, see [I want to connect from a container to
101+
a service on the
102+
host](networking.md#i-want-to-connect-from-a-container-to-a-service-on-the-host)
103+
under [Known Limitations, Use Cases, and
104+
Workarounds](networking.md#known-limitations-use-cases-and-workarounds) in the
105+
Networking topic.
101106

102107
### How do I to connect to a container from the Mac?
103108

104109
Our current recommendation is to publish a port, or to connect from another container. Note that this is what you have to do even on Linux if the container is on an overlay network, not a bridge network, as these are not routed.
105110

106-
For a full explanation and examples, see [I want to connect to a container from the Mac](networking.md#i-want-to-connect-to-a-container-from-the-mac) under [Known Limitations, Use Cases, and Workarounds](networking.md#known-limitations-use-cases-and-workarounds) in the Networking topic.
111+
For a full explanation and examples, see [I want to connect to a container from
112+
the Mac](networking.md#i-want-to-connect-to-a-container-from-the-mac) under
113+
[Known Limitations, Use Cases, and
114+
Workarounds](networking.md#known-limitations-use-cases-and-workarounds) in the
115+
Networking topic.
116+
117+
### How do I add custom CA certificates?
118+
119+
Starting with Docker for Mac 1.12.1, 2016-09-16 (stable) and Beta 27 Release Notes (2016-09-28 1.12.2-rc1-beta27), all trusted certificate authorities (CAs) (root or intermediate) are supported.
120+
121+
Docker for Mac creates a certificate bundle of all user-trusted CAs based on the Mac Keychain, and appends it to Moby trusted certificates. So if an enterprise SSL certificate is trusted by the user on the host, it will be trusted by Docker for Mac.
107122

108123
### What are system requirements for Docker for Mac?
109124

110125
Note that you need a Mac that supports hardware virtualization, which is most non ancient ones; i.e., use OS X `10.10.3+` or `10.11` (OS X Yosemite or OS X El Capitan). See also "What to know before you install" in [Getting Started](index.md).
111126

112-
113127
### Do I need to uninstall Docker Toolbox to use Docker for Mac?
114128

115129
No, you can use these side by side. Docker Toolbox leverages a Docker daemon installed using `docker-machine` in a machine called `default`. Running `eval $(docker-machine env default)` in a shell sets DOCKER environment variables locally to connect to the default machine using Engine from Toolbox. To check whether Toolbox DOCKER environment variables are set, run `env | grep DOCKER`.

docker-for-mac/troubleshoot.md

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -175,32 +175,33 @@ See also, [Hypervisor Framework Reference](https://developer.apple.com/library/m
175175

176176
* IPv6 workaround to auto-filter DNS addresses - IPv6 is not yet supported on Docker for Mac, which typically manifests as a network timeout when running `docker` commands that need access to external network servers (e.g., `docker pull busybox`).
177177

178-
```
179178
$ docker pull busybox
180179
Using default tag: latest
181180
Pulling repository docker.io/library/busybox
182181
Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/busybox/images. You may want to check your internet connection or if you are behind a proxy.
183-
```
184182

185183
Starting with v1.12.1, 2016-09016 on the stable channel, and Beta 24 on the beta channel, a workaround is provided that auto-filters out the IPv6 addresses in DNS server lists and enables successful network accesss. For example, `2001:4860:4860::8888` would become `8.8.8.8`. So, the only workaround action needed for users is to [upgrade to Docker for Mac stable v1.12.1 or newer, or Beta 24 or newer](index.md#download-docker-for-mac).
186184

187185
On releases with the workaround included to filter out / truncate IPv6 addresses from the DNS list, the above command should run properly:
188186

189-
```
187+
190188
$ docker pull busybox
191189
Using default tag: latest
192190
latest: Pulling from library/busybox
193191
Digest: sha256:a59906e33509d14c036c8678d687bd4eec81ed7c4b8ce907b888c607f6a1e0e6
194192
Status: Image is up to date for busy box:latest
195-
```
193+
196194

197195
To learn more, see these issues on GitHub and Docker for Mac forums:
198196

199197
* [Network timeout when top two DNS servers in /etc/resolv.conf are IPv6 addresses](https://github.com/docker/for-mac/issues/9)
200198

201199
* [ERROR: Network timed out while trying to connect to index.docker.io](https://forums.docker.com/t/error-network-timed-out-while-trying-to-connect-to-index-docker-io/17206)
202200

201+
<p></p>
202+
203203
* If Docker for Mac fails to install or start properly:
204+
204205
* Make sure you quit Docker for Mac before installing a new version of the application ( <img src="../images/whale-x.png"> --> **Quit Docker**). Otherwise, you will get an "application in use" error when you try to copy the new app from the `.dmg` to `/Applications`.
205206

206207
* Restart your Mac to stop / discard any vestige of the daemon running from the previously installed version.
@@ -211,14 +212,11 @@ See also, [Hypervisor Framework Reference](https://developer.apple.com/library/m
211212

212213
* If `docker` commands aren't working properly or as expected:
213214

214-
Make sure you are not using the legacy Docker Machine environment in your shell
215-
or command window. You do not need `DOCKER_HOST` set, so unset it as it may be
216-
pointing at another Docker (e.g. VirtualBox). If you use bash, `unset
215+
* Make sure you are not using the legacy Docker Machine environment in your shell or command window. You do not need `DOCKER_HOST` set, so unset it as it
216+
may be pointing at another Docker (e.g. VirtualBox). If you use bash, `unset
217217
${!DOCKER_*}` will unset existing `DOCKER` environment variables you have set.
218-
For other shells, unset each environment variable individually as described in
219-
[Setting up to run Docker for
220-
Mac](docker-toolbox.md#setting-up-to-run-docker-for-mac) in [Docker for Mac vs.
221-
Docker Toolbox](docker-toolbox.md).
218+
219+
* For other shells, unset each environment variable individually as described in [Setting up to run Docker for Mac](docker-toolbox.md#setting-up-to-run-docker-for-mac) in [Docker for Mac vs. Docker Toolbox](docker-toolbox.md).
222220

223221
<p></p>
224222

@@ -256,6 +254,8 @@ servers. The aforementioned releases include a workaround for this because
256254
Docker for Mac does not yet support IPv6. See "IPv6 workaround to auto-filter DNS addresses" in
257255
[Workarounds for common problems](troubleshoot.md#workarounds-for-common-problems).
258256

257+
<p></p>
258+
259259
* You might encounter errors when using `docker-compose up` with Docker for Mac (`ValueError: Extra Data`). We've identified this is likely related to data and/or events being passed all at once rather than one by one, so sometimes the data comes back as 2+ objects concatenated and causes an error.
260260

261261
<p></p>
@@ -294,14 +294,16 @@ Alternatively you could create a plain-text TCP proxy on localhost:1234 using:
294294
repeated scans of large directory trees, may suffer from poor
295295
performance. Applications that behave in this way include:
296296

297-
- `rake`
298-
- `ember build`
299-
- Symfony
300-
- Magento
301-
- Zend Framework
302-
- PHP applications that use [Composer](https://getcomposer.org) to install dependencies in a ```vendor``` folder
297+
- `rake`
298+
- `ember build`
299+
- Symfony
300+
- Magento
301+
- Zend Framework
302+
- PHP applications that use [Composer](https://getcomposer.org) to install dependencies in a ```vendor``` folder
303+
304+
<p></p>
303305

304-
As a work-around for this behavior, you can put vendor or third-party library directories in Docker volumes, perform temporary file system
306+
As a work-around for this behavior, you can put vendor or third-party library directories in Docker volumes, perform temporary file system
305307
operations outside of `osxfs` mounts, and use third-party tools like
306308
Unison or `rsync` to synchronize between container directories and
307309
bind-mounted directories. We are actively working on `osxfs`
@@ -314,12 +316,12 @@ Alternatively you could create a plain-text TCP proxy on localhost:1234 using:
314316

315317
docker run --rm --privileged alpine hwclock -s
316318

317-
Or, to resolve both issues, you can add the local clock as a low-priority (high stratum) fallback NTP time source for the host. To do this, edit the host's `/etc/ntp-restrict.conf` to add:
319+
Or, to resolve both issues, you can add the local clock as a low-priority (high stratum) fallback NTP time source for the host. To do this, edit the host's `/etc/ntp-restrict.conf` to add:
318320

319321
server 127.127.1.1 # LCL, local clock
320322
fudge 127.127.1.1 stratum 12 # increase stratum
321323

322-
Then restart the NTP service with:
324+
Then restart the NTP service with:
323325

324326
sudo launchctl unload /System/Library/LaunchDaemons/org.ntp.ntpd.plist
325327
sudo launchctl load /System/Library/LaunchDaemons/org.ntp.ntpd.plist

docker-for-windows/faqs.md

Lines changed: 38 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,15 @@ This topic also has more information about the two channels.
3030

3131
A: Two different download channels are available for Docker for Windows:
3232

33-
* The stable channel provides a general availability release-ready installer for a fully baked and tested, more reliable app. The stable version of Docker for Windows comes with the latest released version of Docker Engine. The release schedule is synched with Docker Engine releases and hotfixes.
33+
* The stable channel provides a general availability release-ready installer for a fully baked and tested, more reliable app. The stable version of Docker
34+
for Windows comes with the latest released version of Docker Engine. The
35+
release schedule is synched with Docker Engine releases and hotfixes.
3436

35-
* The beta channel provides an installer with new features we are working on, but is not necessarily fully tested. It comes with the experimental version of Docker Engine. Bugs, crashes and issues are more likely to occur with the beta app, but you get a chance to preview new functionality, experiment, and provide feedback as the apps evolve. Releases are typically more frequent than for stable, often one or more per month.
37+
* The beta channel provides an installer with new features we are working on, but is not necessarily fully tested. It comes with the experimental version of
38+
Docker Engine. Bugs, crashes and issues are more likely to occur with the beta
39+
app, but you get a chance to preview new functionality, experiment, and provide
40+
feedback as the apps evolve. Releases are typically more frequent than for
41+
stable, often one or more per month.
3642

3743
**Q: Can I switch back and forth between stable and beta versions of Docker for Windows?**
3844

@@ -83,13 +89,26 @@ in [Docker Swarm](/engine/swarm/index.md). A good place to start is the
8389
You can find the list of frequent issues in
8490
[Logs and Troubleshooting](troubleshoot.md).
8591

86-
If you do not find a solution in Troubleshooting, browse issues on [Docker for Windows issues on GitHub](https://github.com/docker/for-win/issues) or create a new one. You can also create new issues based on diagnostics. To learn more about running diagnostics and about Docker for Windows GitHub issues, see [Diagnose and Feedback](index.md#diagnose-and-feedback).
92+
If you do not find a solution in Troubleshooting, browse issues on [Docker for
93+
Windows issues on GitHub](https://github.com/docker/for-win/issues) or create a
94+
new one. You can also create new issues based on diagnostics. To learn more
95+
about running diagnostics and about Docker for Windows GitHub issues, see
96+
[Diagnose and Feedback](index.md#diagnose-and-feedback).
8797

88-
[Docker for Windows forum](https://forums.docker.com/c/docker-for-windows) provides discussion threads as well, and you can create discussion topics there, but we recommend using the GitHub issues over the forums for better tracking and response.
98+
[Docker for Windows forum](https://forums.docker.com/c/docker-for-windows)
99+
provides discussion threads as well, and you can create discussion topics there,
100+
but we recommend using the GitHub issues over the forums for better tracking and
101+
response.
89102

90103
### Can I use Docker for Windows with new swarm mode?
91104

92-
Yes! You can use Docker for Windows to test single-node features of [swarm mode](/engine/swarm/index.md) introduced with Docker Engine 1.12, including initializing a swarm with a single node, creating services, and scaling services. Docker “Moby” on Hyper-V will serve as the single swarm node. You can also use Docker Machine, which comes with Docker for Windows, to create and experiment with a multi-node swarm. Check out the tutorial at [Get started with swarm mode](/engine/swarm/swarm-tutorial/index.md).
105+
Yes! You can use Docker for Windows to test single-node features of [swarm
106+
mode](/engine/swarm/index.md) introduced with Docker Engine 1.12, including
107+
initializing a swarm with a single node, creating services, and scaling
108+
services. Docker “Moby” on Hyper-V will serve as the single swarm node. You can
109+
also use Docker Machine, which comes with Docker for Windows, to create and
110+
experiment with a multi-node swarm. Check out the tutorial at [Get started with
111+
swarm mode](/engine/swarm/swarm-tutorial/index.md).
93112

94113
### How do I connect to the remote Docker Engine API?
95114

@@ -117,6 +136,14 @@ Symlinks created outside of containers (e.g., on the host) will not work in con
117136

118137
To learn more about the reasons for this limitation, see this issue on GitHub: [Symlinks don't work as expected](https://github.com/docker/for-win/issues/109#issuecomment-251307391).
119138

139+
### How do I add custom CA certificates?
140+
141+
Starting with Docker for Windows 1.12.1, 2016-09-16 (stable) and Beta 26 (2016-09-14 1.12.1-beta26), all trusted CAs (root or intermediate) are supported. Docker recognizes certs stored under Trust Root Certification Authorities or Intermediate Certification Authorities.
142+
143+
Docker for Windows creates a certificate bundle of all user-trusted CAs based on the Windows certificate store, and appends it to Moby trusted certificates. So if an enterprise SSL certificate is trusted by the user on the host, it will be trusted by Docker for Windows.
144+
145+
To learn more, see the GitHub issue [Allow user to add custom Certificate Authorities ](https://github.com/docker/for-win/issues/48).
146+
120147
### Why does Docker for Windows sometimes lose network connectivity (e.g., `push`/`pull` doesn't work)?
121148

122149
Networking is not yet fully stable across network changes and system sleep
@@ -140,8 +167,12 @@ Windows to work.
140167

141168
### Why does Docker for Windows fail to start when firewalls or anti-virus software is installed?
142169

143-
Some firewalls and anti-virus software might be incompatible with Hyper-V and some Windows 10 builds (possibly, the Anniversary Update), which impacts Docker for Windows. See details and workarounds in [Docker fails to start when firewall or anti-virus software is installed](troubleshoot.md#docker-fails-to-start-when-firewall-or-anti-virus-software-is-installed) in [Troubleshooting](troubleshoot.md).
144-
170+
Some firewalls and anti-virus software might be incompatible with Hyper-V and
171+
some Windows 10 builds (possibly, the Anniversary Update), which impacts Docker
172+
for Windows. See details and workarounds in [Docker fails to start when firewall
173+
or anti-virus software is
174+
installed](troubleshoot.md#docker-fails-to-start-when-firewall-or-anti-virus-software-is-installed)
175+
in [Troubleshooting](troubleshoot.md).
145176

146177
### How do I uninstall Docker Toolbox?
147178

docker-for-windows/index.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ To get a popup menu with application options, right-click the whale:
268268

269269
The **Settings** dialogs provide options to allow Docker auto-start, automatically check for updates, share local drives with Docker containers, enable VPN compatibility, manage CPUs and memory Docker uses, restart Docker, or perform a factory reset.
270270

271-
**Beta 26** includes an option to switch between Windows and Linux conatiners. See [Switch between Windows and Linux containers (Beta 26)](index.md#switch-between-windows-and-linux-containers-beta-26). This is not yet available on stable builds.
271+
**Beta 26 and newer** include an option to switch between Windows and Linux conatiners. See [Switch between Windows and Linux containers (Beta feature)](index.md#switch-between-windows-and-linux-containers-beta-feature). This is not yet available on stable builds.
272272

273273
![Beta 26 popup with switch for Windows or Linux containers](images/config-popup-menu-win-switch-containers.png)
274274

@@ -297,6 +297,8 @@ You will be asked to provide your Windows system username and password (domain u
297297

298298
Permissions to access shared drives are tied to the credentials you provide here. If you run `docker` commands and tasks under a different username than the one used here to set up sharing, your containers will not have permissions to access the mounted volumes.
299299

300+
>**Tip:** Shared drives are only required for volume mounting [Linux containers](#switch-between-windows-and-linux-containers-beta-feature), not Windows containers.
301+
300302
See also [Verify domain user has permissions for shared drives](troubleshoot.md#verify-domain-user-has-permissions-for-shared-drives-volumes) in Troubleshooting.
301303

302304
### Advanced
@@ -356,14 +358,16 @@ For a full list of options on the Docker daemon, see <a href="https://docs.docke
356358

357359
Note that updating these settings requires a reconfiguration and reboot of the Linux VM.
358360

359-
### Switch between Windows and Linux containers (Beta 26)
361+
### Switch between Windows and Linux containers (Beta feature)
360362

361363
Starting with Beta 26, you can select which daemon (Linux or Windows) the Docker CLI talks to. Select **Switch to Windows containers** to toggle to Windows containers. Select **Switch to Linux containers**.
362364

363365
Microsoft Developer Network has preliminary/draft information on Windows containers [here](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/about/about_overview).
364366

365367
This feature is not yet available on stable builds.
366368

369+
See also [Shared Drives](#shared-drives)
370+
367371
### Diagnose and Feedback
368372

369373
If you encounter problems for which you do not find solutions in this documentation, searching [Docker for Windows issues on GitHub](https://github.com/docker/for-win/issues) already filed by other users, or on the [Docker for Windows forum](https://forums.docker.com/c/docker-for-windows), we can help you troubleshoot the log data.

0 commit comments

Comments
 (0)