mirror of https://github.com/docker/docs.git
Merge pull request #1363 from mstanleyjones/broken_links
Fixing broken links
This commit is contained in:
commit
332c438df5
|
@ -11,7 +11,7 @@ long: |
|
|||
|
||||
## Daemon socket option
|
||||
|
||||
The Docker daemon can listen for [Docker Remote API](../api/docker_remote_api.md)
|
||||
The Docker daemon can listen for [Docker Remote API](/engine/api/index.md)
|
||||
requests via three different types of Socket: `unix`, `tcp`, and `fd`.
|
||||
|
||||
By default, a `unix` domain socket (or IPC socket) is created at
|
||||
|
|
|
@ -449,6 +449,8 @@ toc:
|
|||
title: docker attach
|
||||
- path: /engine/reference/commandline/build/
|
||||
title: docker build
|
||||
- path: /engine/reference/commandline/checkpoint/
|
||||
title: docker checkpoint
|
||||
- path: /engine/reference/commandline/commit/
|
||||
title: docker commit
|
||||
- sectiontitle: docker container *
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
- Build, then run your containers on a virtual host via [Docker Machine](machine/overview.md) as you develop.
|
||||
2. Configure [networking](engine/tutorials/networkingcontainers.md) and
|
||||
[storage](engine/tutorials/dockervolumes.md) for your solution, if needed.
|
||||
3. Upload builds to a registry ([ours](engine/tutorials/dockerrepos.md), [yours](/datacenter/dtr/2.0/index.md), or your cloud provider's), to collaborate with your team.
|
||||
3. Upload builds to a registry ([ours](/engine/getstarted/step_six.md), [yours](/datacenter/dtr/2.0/index.md), or your cloud provider's), to collaborate with your team.
|
||||
4. If you're gonna need to scale your solution across multiple hosts (VMs or physical machines), [plan
|
||||
for how you'll set up your Swarm cluster](engine/swarm/key-concepts.md) and [scale it to meet demand](engine/swarm/swarm-tutorial/index.md).
|
||||
- Note: Use [Universal Control Plane](/datacenter/ucp/1.1/overview.md) and you can manage your
|
||||
|
|
|
@ -8,46 +8,54 @@ You can run Compose on macOS, Windows and 64-bit Linux. To install it, you'll ne
|
|||
|
||||
To install Compose, do the following:
|
||||
|
||||
1. Install Docker Engine:
|
||||
1. Install Docker Engine:
|
||||
|
||||
* <a href="/engine/installation/mac/" target="_blank">macOS installation</a>
|
||||
* [macOS installation](/docker-for-mac/index.md){: target="_blank" class="_"}
|
||||
|
||||
* <a href="/engine/installation/windows/" target="_blank">Windows installation</a>
|
||||
* [Windows installation](/docker-for-windows/index.md){: target="_blank" class="_"}
|
||||
|
||||
* <a href="/engine/installation/linux/ubuntulinux/" target="_blank">Ubuntu installation</a>
|
||||
* [Ubuntu installation](/engine/installation/linux/ubuntu.md){: target="_blank" class="_"}
|
||||
|
||||
* <a href="/engine/installation/" target="_blank">other system installations</a>
|
||||
* [Other systems](/engine/installation/index.md){: target="_blank" class="_"}
|
||||
|
||||
2. The Docker Toolbox installation includes both Engine and Compose, so Mac and Windows users are done installing. Others should continue to the next step.
|
||||
2. The Docker Toolbox installation includes both Engine and Compose, so Mac and
|
||||
Windows users are done installing. Others should continue to the next step.
|
||||
|
||||
3. Go to the <a href="https://github.com/docker/compose/releases" target="_blank">Compose repository release page on GitHub</a>.
|
||||
3. Go to the
|
||||
[Compose repository release page on GitHub](https://github.com/docker/compose/releases){: target="_blank" class="_"}.
|
||||
|
||||
4. Follow the instructions from the release page and run the `curl` command,
|
||||
which the release page specifies, in your terminal.
|
||||
4. Follow the instructions from the release page and run the `curl` command,
|
||||
which the release page specifies, in your terminal.
|
||||
|
||||
> Note: If you get a "Permission denied" error, your `/usr/local/bin` directory
|
||||
probably isn't writable and you'll need to install Compose as the superuser. Run
|
||||
`sudo -i`, then the two commands below, then `exit`.
|
||||
> Note: If you get a "Permission denied" error, your `/usr/local/bin` directory
|
||||
> probably isn't writable and you'll need to install Compose as the superuser. Run
|
||||
> `sudo -i`, then the two commands below, then `exit`.
|
||||
|
||||
The following is an example command illustrating the format:
|
||||
The following is an example command illustrating the format:
|
||||
|
||||
$ curl -L "https://github.com/docker/compose/releases/download/1.10.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
```bash
|
||||
$ curl -L "https://github.com/docker/compose/releases/download/1.10.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
```
|
||||
|
||||
If you have problems installing with `curl`, see
|
||||
[Alternative Install Options](install.md#alternative-install-options).
|
||||
If you have problems installing with `curl`, see
|
||||
[Alternative Install Options](install.md#alternative-install-options).
|
||||
|
||||
5. Apply executable permissions to the binary:
|
||||
5. Apply executable permissions to the binary:
|
||||
|
||||
chmod +x /usr/local/bin/docker-compose
|
||||
```bash
|
||||
$ chmod +x /usr/local/bin/docker-compose
|
||||
```
|
||||
|
||||
6. Optionally, install [command completion](completion.md) for the
|
||||
`bash` and `zsh` shell.
|
||||
`bash` and `zsh` shell.
|
||||
|
||||
7. Test the installation.
|
||||
7. Test the installation.
|
||||
|
||||
$ docker-compose --version
|
||||
docker-compose version: 1.10.0
|
||||
```bash
|
||||
$ docker-compose --version
|
||||
|
||||
docker-compose version: 1.10.0
|
||||
```
|
||||
|
||||
## Alternative install options
|
||||
|
||||
|
@ -60,7 +68,9 @@ have python system packages that conflict with docker-compose dependencies. See
|
|||
the [virtualenv tutorial](http://docs.python-guide.org/en/latest/dev/virtualenvs/)
|
||||
to get started.
|
||||
|
||||
pip install docker-compose
|
||||
```bash
|
||||
$ pip install docker-compose
|
||||
```
|
||||
|
||||
> **Note:** pip version 6.0 or greater is required
|
||||
|
||||
|
@ -69,15 +79,18 @@ to get started.
|
|||
Compose can also be run inside a container, from a small bash script wrapper.
|
||||
To install compose as a container run:
|
||||
|
||||
$ curl -L https://github.com/docker/compose/releases/download/1.10.0/run.sh > /usr/local/bin/docker-compose
|
||||
$ chmod +x /usr/local/bin/docker-compose
|
||||
```bash
|
||||
$ curl -L https://github.com/docker/compose/releases/download/1.10.0/run.sh > /usr/local/bin/docker-compose
|
||||
$ chmod +x /usr/local/bin/docker-compose
|
||||
```
|
||||
|
||||
## Master builds
|
||||
|
||||
If you're interested in trying out a pre-release build you can download a
|
||||
binary from [https://dl.bintray.com/docker-compose/master/](https://dl.bintray.com/docker-compose/master/). Pre-release
|
||||
builds allow you to try out new features before they are released, but may
|
||||
be less stable.
|
||||
binary from
|
||||
[https://dl.bintray.com/docker-compose/master/](https://dl.bintray.com/docker-compose/master/).
|
||||
Pre-release builds allow you to try out new features before they are released,
|
||||
but may be less stable.
|
||||
|
||||
|
||||
## Upgrading
|
||||
|
@ -92,27 +105,35 @@ to run so that you don't end up with two sets of them. If you want to keep using
|
|||
your existing containers (for example, because they have data volumes you want
|
||||
to preserve) you can use compose 1.5.x to migrate them with the following command:
|
||||
|
||||
docker-compose migrate-to-labels
|
||||
```bash
|
||||
$ docker-compose migrate-to-labels
|
||||
```
|
||||
|
||||
Alternatively, if you're not worried about keeping them, you can remove them.
|
||||
Compose will just create new ones.
|
||||
|
||||
docker rm -f -v myapp_web_1 myapp_db_1 ...
|
||||
```bash
|
||||
docker rm -f -v myapp_web_1 myapp_db_1 ...
|
||||
```
|
||||
|
||||
## Uninstallation
|
||||
|
||||
To uninstall Docker Compose if you installed using `curl`:
|
||||
|
||||
rm /usr/local/bin/docker-compose
|
||||
```bash
|
||||
rm /usr/local/bin/docker-compose
|
||||
```
|
||||
|
||||
To uninstall Docker Compose if you installed using `pip`:
|
||||
|
||||
pip uninstall docker-compose
|
||||
```bash
|
||||
$ pip uninstall docker-compose
|
||||
```
|
||||
|
||||
>**Note**: If you get a "Permission denied" error using either of the above
|
||||
>methods, you probably do not have the proper permissions to remove
|
||||
>`docker-compose`. To force the removal, prepend `sudo` to either of the above
|
||||
>commands and run again.
|
||||
> **Note**: If you get a "Permission denied" error using either of the above
|
||||
> methods, you probably do not have the proper permissions to remove
|
||||
> `docker-compose`. To force the removal, prepend `sudo` to either of the above
|
||||
> >commands and run again.
|
||||
|
||||
|
||||
## Where to go next
|
||||
|
@ -122,5 +143,5 @@ To uninstall Docker Compose if you installed using `pip`:
|
|||
- [Get started with Django](django.md)
|
||||
- [Get started with Rails](rails.md)
|
||||
- [Get started with WordPress](wordpress.md)
|
||||
- [Command line reference](./reference/index.md)
|
||||
- [Command line reference](/compose/reference/index.md)
|
||||
- [Compose file reference](compose-file.md)
|
||||
|
|
|
@ -63,7 +63,7 @@ Release date: 10/27/2016
|
|||
- Fixed the shell container that runs on the managers, to remove a ssh host key that was accidentally added to the image.
|
||||
This could have led to a potential man in the middle (MITM) attack. The ssh host key is now generated on host startup, so that each host has its own key.
|
||||
- The SSH ELB for SSH'ing into the managers has been removed because it is no longer possible to SSH into the managers without getting a security warning
|
||||
- Each Manager can be SSH'd into by following our deploy [guide](../deploy)
|
||||
- Each Manager can be SSH'd into by following our deploy [guide](docker-for-aws/deploy.md)
|
||||
- Added new region us-east-2 (Ohio)
|
||||
- Fixed some bugs related to upgrading the swarm
|
||||
- SSH keypair is now a required field in CloudFormation
|
||||
|
|
|
@ -6,14 +6,16 @@ redirect_from:
|
|||
title: Frequently asked questions (FAQ)
|
||||
---
|
||||
|
||||
**Looking for popular FAQs on Docker for Mac?** Check out the [Docker Knowledge Hub](http://success.docker.com/) for knowledge base articles, FAQs, technical support for various subscription levels, and more.
|
||||
**Looking for popular FAQs on Docker for Mac?** Check out the
|
||||
[Docker Knowledge Hub](http://success.docker.com/) for knowledge base articles,
|
||||
FAQs, technical support for various subscription levels, and more.
|
||||
|
||||
### Stable and beta channels
|
||||
|
||||
**Q: How do I get the stable or beta version of Docker for Mac?**
|
||||
|
||||
A: Use the download links for the channels given in the topic [Download Docker
|
||||
for Mac](index.md#download-docker-for-mac).
|
||||
A: Use the download links for the channels given in the topic
|
||||
[Download Docker for Mac](index.md#download-docker-for-mac).
|
||||
|
||||
This topic also has more information about the two channels.
|
||||
|
||||
|
@ -21,9 +23,19 @@ This topic also has more information about the two channels.
|
|||
|
||||
A: Two different download channels are available for Docker for Mac:
|
||||
|
||||
* 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 Mac comes with the latest released version of Docker Engine. The release schedule is synched with Docker Engine releases and hotfixes. On the stable channel, you can select whether to send usage statistics and other data.
|
||||
* 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 Mac comes with the latest released version of Docker Engine. The release
|
||||
schedule is synched with Docker Engine releases and hotfixes. On the stable
|
||||
channel, you can select whether to send usage statistics and other data.
|
||||
|
||||
* 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. Usage statistics and crash reports are sent by default. You do not have the option to disable this on the beta channel.
|
||||
* 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. Usage statistics and crash reports are sent
|
||||
by default. You do not have the option to disable this on the beta channel.
|
||||
|
||||
**Q: Can I switch back and forth between stable and beta versions of Docker for Mac?**
|
||||
|
||||
|
@ -39,48 +51,68 @@ leveraging beta features that aren't in stable yet. Just keep this in mind as
|
|||
you create and work with beta containers, perhaps in the spirit of a playground
|
||||
space where you are prepared to troubleshoot or start over.
|
||||
|
||||
<font color="#CC3366">To safely switch between beta and stable versions be sure to save images and export the containers you need, then uninstall the current version before installing another. The workflow is described in more detail below.</font><br>
|
||||
<font color="#CC3366">To safely switch between beta and stable versions be sure
|
||||
to save images and export the containers you need, then uninstall the current
|
||||
version before installing another. The workflow is described in more detail
|
||||
below.</font><br>
|
||||
|
||||
Do the following each time:
|
||||
|
||||
1. Use `docker save` to save any images you want to keep. (See [save](/engine/reference/commandline/save.md) in the Docker Engine command line reference.)
|
||||
1. Use `docker save` to save any images you want to keep. (See
|
||||
[save](/engine/reference/commandline/save.md) in the Docker Engine command
|
||||
line reference.)
|
||||
|
||||
2. Use `docker export` to export containers you want to keep. (See [export](/engine/reference/commandline/export.md) in the Docker Engine command line reference.)
|
||||
2. Use `docker export` to export containers you want to keep. (See
|
||||
[export](/engine/reference/commandline/export.md) in the Docker Engine
|
||||
command line reference.)
|
||||
|
||||
3. Uninstall the current app (whether stable or beta).
|
||||
3. Uninstall the current app (whether stable or beta).
|
||||
|
||||
4. Install a different version of the app (stable or beta).
|
||||
4. Install a different version of the app (stable or beta).
|
||||
|
||||
### What is Docker.app?
|
||||
|
||||
`Docker.app` is Docker for Mac, a bundle of Docker client, and Docker
|
||||
Engine. `Docker.app` uses the macOS
|
||||
Hypervisor.framework (part of macOS 10.10 Yosemite and higher)
|
||||
to run containers, meaning that _**no separate VirtualBox is required**_.
|
||||
`Docker.app` is Docker for Mac, a bundle of Docker client, and Docker Engine.
|
||||
`Docker.app` uses the macOS Hypervisor.framework (part of macOS 10.10 Yosemite
|
||||
and higher) to run containers, meaning that _**no separate VirtualBox is
|
||||
required**_.
|
||||
|
||||
### What kind of feedback are we looking for?
|
||||
|
||||
Everything is fair game. We'd like your impressions on the download-install process, startup, functionality available, the GUI, usefulness of the app,
|
||||
command line integration, and so on. Tell us about problems, what you like, or functionality you'd like to see added.
|
||||
Everything is fair game. We'd like your impressions on the download-install
|
||||
process, startup, functionality available, the GUI, usefulness of the app,
|
||||
command line integration, and so on. Tell us about problems, what you like, or
|
||||
functionality you'd like to see added.
|
||||
|
||||
We are especially interested in getting feedback on the new swarm mode described in [Docker Swarm](/engine/swarm/index.md). A good place to start is the [tutorial](/engine/swarm/swarm-tutorial/index.md).
|
||||
We are especially interested in getting feedback on the new swarm mode described
|
||||
in [Docker Swarm](/engine/swarm/index.md). A good place to start is the
|
||||
[tutorial](/engine/swarm/swarm-tutorial/index.md).
|
||||
|
||||
### What if I have problems or questions?
|
||||
|
||||
You can find the list of frequent issues in
|
||||
[Logs and Troubleshooting](troubleshoot.md).
|
||||
[Logs and Troubleshooting](/docker-for-mac/troubleshoot.md).
|
||||
|
||||
If you do not find a solution in Troubleshooting, browse issues on [Docker for Mac issues on GitHub](https://github.com/docker/for-mac/issues) or create a new one. You can also create new issues based on diagnostics. To learn more, see [Diagnose problems, send feedback, and create GitHub issues](troubleshoot.md#diagnose-problems-send-feedback-and-create-github-issues).
|
||||
If you do not find a solution in Troubleshooting, browse issues on
|
||||
[Docker for Mac issues on GitHub](https://github.com/docker/for-mac/issues) or
|
||||
create a new one. You can also create new issues based on diagnostics. To learn more,
|
||||
see
|
||||
[Diagnose problems, send feedback, and create GitHub issues](troubleshoot.md#diagnose-problems-send-feedback-and-create-github-issues).
|
||||
|
||||
[Docker for Mac forum](https://forums.docker.com/c/docker-for-mac) 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.
|
||||
[Docker for Mac forum](https://forums.docker.com/c/docker-for-mac)
|
||||
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.
|
||||
|
||||
### Can I use Docker for Mac with new swarm mode?
|
||||
|
||||
Yes, you can use Docker for Mac 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
|
||||
Yes, you can use Docker for Mac 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 Hyperkit will serve as the single swarm node. You can
|
||||
also use Docker Machine, which comes with Docker for Mac, to create and
|
||||
experiment a multi-node swarm. Check out the tutorial at [Get started with swarm mode](/engine/swarm/swarm-tutorial/index.md).
|
||||
experiment a multi-node swarm. Check out the tutorial at
|
||||
[Get started with swarm mode](/engine/swarm/swarm-tutorial/index.md).
|
||||
|
||||
### How do I connect to the remote Docker Engine API?
|
||||
|
||||
|
@ -88,36 +120,46 @@ You might need to provide the location of the Engine API for Docker clients and
|
|||
|
||||
On Docker for Mac, clients can connect to the Docker Engine through a Unix socket: `unix:///var/run/docker.sock`.
|
||||
|
||||
See also [Docker Engine API](/engine/reference/api/docker_remote_api.md) and Docker for Mac forums topic [Using pycharm Docker plugin..](https://forums.docker.com/t/using-pycharm-docker-plugin-with-docker-beta/8617).
|
||||
See also [Docker Engine API](/engine/api.md) and Docker for Mac forums topic
|
||||
[Using pycharm Docker plugin..](https://forums.docker.com/t/using-pycharm-docker-plugin-with-docker-beta/8617).
|
||||
|
||||
If you are working with applications like [Apache Maven](https://maven.apache.org/) that expect settings for `DOCKER_HOST` and `DOCKER_CERT_PATH` environment variables, specify these to connect to Docker instances through Unix sockets. For example:
|
||||
If you are working with applications like
|
||||
[Apache Maven](https://maven.apache.org/) that expect settings for `DOCKER_HOST`
|
||||
and `DOCKER_CERT_PATH` environment variables, specify these to connect to Docker
|
||||
instances through Unix sockets. For example:
|
||||
|
||||
export DOCKER_HOST=unix:///var/run/docker.sock
|
||||
```bash
|
||||
export DOCKER_HOST=unix:///var/run/docker.sock
|
||||
```
|
||||
|
||||
### How do I connect from a container to a service on the host?
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
### How do I to connect to a container from the Mac?
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
### How do I add custom CA certificates?
|
||||
|
||||
Starting with Docker for Mac Beta 27 and Stable 1.12.3, all trusted certificate authorities (CAs) (root or intermediate) are supported.
|
||||
Starting with Docker for Mac Beta 27 and Stable 1.12.3, all trusted certificate
|
||||
authorities (CAs) (root or intermediate) are supported.
|
||||
|
||||
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
|
||||
|
@ -128,13 +170,12 @@ To manually add a custom, self-signed certificate, start by adding
|
|||
the certificate to the Mac’s keychain, which will be picked up by Docker for
|
||||
Mac. Here is an example.
|
||||
|
||||
```
|
||||
```bash
|
||||
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ca.crt
|
||||
```
|
||||
|
||||
For a complete explanation of how to do this, see the blog post [Adding Self-signed Registry Certs
|
||||
to Docker & Docker for
|
||||
Mac](http://container-solutions.com/adding-self-signed-registry-certs-docker-mac/).
|
||||
For a complete explanation of how to do this, see the blog post
|
||||
[Adding Self-signed Registry Certs to Docker & Docker for Mac](http://container-solutions.com/adding-self-signed-registry-certs-docker-mac/).
|
||||
|
||||
### How do I reduce the size of Docker.qcow2?
|
||||
|
||||
|
@ -160,7 +201,7 @@ Note the `Docker.qcow2` will not shrink in size immediately.
|
|||
In 1.13 a background `cron` job runs `fstrim` every 15 minutes.
|
||||
If the space needs to be reclaimed sooner, run this command:
|
||||
|
||||
```
|
||||
```bash
|
||||
docker run --rm -it --privileged --pid=host walkerlee/nsenter -t 1 -m -u -i -n fstrim /var
|
||||
```
|
||||
|
||||
|
@ -169,43 +210,59 @@ will compact the file and free up space. The app will
|
|||
take longer than usual to restart because it must wait for the
|
||||
compaction to complete.
|
||||
|
||||
For background conversation thread on this, see [Docker.qcow2 never shrinks
|
||||
..](https://github.com/docker/for-mac/issues/371) on Docker for Mac GitHub
|
||||
issues.
|
||||
For background conversation thread on this, see
|
||||
[Docker.qcow2 never shrinks ..](https://github.com/docker/for-mac/issues/371)
|
||||
on Docker for Mac GitHub issues.
|
||||
|
||||
### What are system requirements for Docker for Mac?
|
||||
|
||||
Note that you need a Mac that supports hardware virtualization, which is most non ancient ones; i.e., use macOS `10.10.3+` or `10.11` (macOS Yosemite or macOS El Capitan). See also "What to know before you install" in [Getting Started](index.md).
|
||||
Note that you need a Mac that supports hardware virtualization and can run at
|
||||
least macOS `10.10.3+` or `10.11` (macOS Yosemite or macOS El Capitan). See also
|
||||
"What to know before you install" in [Getting Started](index.md).
|
||||
|
||||
### Do I need to uninstall Docker Toolbox to use Docker for Mac?
|
||||
|
||||
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`.
|
||||
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`.
|
||||
|
||||
To make the client talk to the Docker for Mac Engine, run the command `unset ${!DOCKER_*}` to unset all DOCKER environment variables in the current shell. (Now, `env | grep DOCKER` should return no output.) You can have multiple command line shells open, some set to talk to Engine from Toolbox and others set to talk to Docker for Mac. The same applies to `docker-compose`.
|
||||
To make the client talk to the Docker for Mac Engine, run the command `unset
|
||||
${!DOCKER_*}` to unset all DOCKER environment variables in the current shell.
|
||||
(Now, `env | grep DOCKER` should return no output.) You can have multiple
|
||||
command line shells open, some set to talk to Engine from Toolbox and others set
|
||||
to talk to Docker for Mac. The same applies to `docker-compose`.
|
||||
|
||||
### How do I uninstall Docker Toolbox?
|
||||
|
||||
You might decide that you do not need Toolbox now that you have Docker for Mac,
|
||||
and want to uninstall it. For details on how to perform a clean uninstall of
|
||||
Toolbox on the Mac, see [How to uninstall
|
||||
Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox) in the
|
||||
Toolbox Mac topics.
|
||||
Toolbox on the Mac, see
|
||||
[How to uninstall Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox)
|
||||
in the Toolbox Mac topics.
|
||||
|
||||
### What is HyperKit?
|
||||
|
||||
HyperKit is a hypervisor built on top of the Hypervisor.framework in macOS 10.10 Yosemite and higher. It runs entirely in userspace and has no other dependencies.
|
||||
HyperKit is a hypervisor built on top of the Hypervisor.framework in macOS 10.10
|
||||
Yosemite and higher. It runs entirely in userspace and has no other dependencies.
|
||||
|
||||
We use HyperKit to eliminate the need for other VM products, such as Oracle Virtualbox or VMWare Fusion.
|
||||
We use HyperKit to eliminate the need for other VM products, such as Oracle
|
||||
Virtualbox or VMWare Fusion.
|
||||
|
||||
### What is the benefit of HyperKit?
|
||||
|
||||
It is thinner than VirtualBox and VMWare fusion, and the version we include is tailor made for Docker workloads on the Mac.
|
||||
It is thinner than VirtualBox and VMWare fusion, and the version we include is
|
||||
tailor made for Docker workloads on the Mac.
|
||||
|
||||
### Why is com.docker.vmnetd running after I quit the app?
|
||||
|
||||
The privileged helper process `com.docker.vmnetd` is started by `launchd` and runs in the background. The process will not
|
||||
consume any resources unless Docker.app connects to it, so it's safe to ignore.
|
||||
The privileged helper process `com.docker.vmnetd` is started by `launchd` and
|
||||
runs in the background. The process will not consume any resources unless
|
||||
Docker.app connects to it, so it's safe to ignore.
|
||||
|
||||
### Can I pass through a USB device to a container?
|
||||
|
||||
Unfortunately it is not possible to pass through a USB device (or a serial port) to a container. For use cases requiring this, we recommend the use of [Docker Toolbox](/toolbox/overview.md).
|
||||
Unfortunately it is not possible to pass through a USB device (or a serial
|
||||
port) to a container. For use cases requiring this, we recommend the use of
|
||||
[Docker Toolbox](/toolbox/overview.md).
|
||||
|
|
|
@ -17,16 +17,17 @@ Welcome to Docker for Mac!
|
|||
Docker is a full development platform for creating containerized apps, and
|
||||
Docker for Mac is the best way to get started with Docker on a Mac.
|
||||
|
||||
>**Already have Docker for Mac?** If you already have Docker for Mac installed, and are ready to get started, skip down to [Step 2. Check versions of Docker
|
||||
Engine, Compose, and
|
||||
Machine](#step-2-check-versions-of-docker-engine-compose-and-machine) to work
|
||||
through the rest of the Docker for Mac tour, or jump over to getting started tutorials at [Learn Docker](/learn.md).
|
||||
> **Already have Docker for Mac?** If you already have Docker for Mac installed,
|
||||
> and are ready to get started, skip down to
|
||||
[Step 2. Check versions of Docker Engine, Compose, and Machine](#step-2-check-versions-of-docker-engine-compose-and-machine)
|
||||
> to work through the rest of the Docker for Mac tour, or jump over to getting
|
||||
> started tutorials at [Learn Docker](/learn.md).
|
||||
|
||||
## Download Docker for Mac
|
||||
|
||||
If you have not already done so, please install Docker for Mac. You can download
|
||||
installers from the stable or beta channel. For more about stable and beta
|
||||
channels, see the [FAQs](faqs.md#stable-and-beta-channels).
|
||||
channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-beta-channels).
|
||||
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
|
@ -52,71 +53,104 @@ channels, see the [FAQs](faqs.md#stable-and-beta-channels).
|
|||
|
||||
>**Important Notes**:
|
||||
>
|
||||
>- Docker for Mac requires OS X El Capitan 10.11 or newer macOS release running on a 2010 or
|
||||
> newer Mac, with Intel's hardware support for MMU virtualization. The app will run on 10.10.3 Yosemite, but with limited support. Please see
|
||||
> [What to know before you install](index.md#what-to-know-before-you-install)
|
||||
> for a full explanation and list of prerequisites.
|
||||
> - Docker for Mac requires OS X El Capitan 10.11 or newer macOS release running on a 2010 or
|
||||
> newer Mac, with Intel's hardware support for MMU virtualization. The app will run on 10.10.3 Yosemite, but with limited support. Please see
|
||||
> [What to know before you install](index.md#what-to-know-before-you-install)
|
||||
> for a full explanation and list of prerequisites.
|
||||
>
|
||||
>- You can switch between beta and stable versions, but you must have only one
|
||||
> app installed at a time. Also, you will need to save images and export
|
||||
> containers you want to keep before uninstalling the current version before
|
||||
> installing another. For more about this, see the
|
||||
> [FAQs about beta and stable channels](faqs.md#stable-and-beta-channels).
|
||||
> - You can switch between beta and stable versions, but you must have only one
|
||||
> app installed at a time. Also, you will need to save images and export
|
||||
> containers you want to keep before uninstalling the current version before
|
||||
> installing another. For more about this, see the
|
||||
> [FAQs about beta and stable channels](faqs.md#stable-and-beta-channels).
|
||||
|
||||
## What to know before you install
|
||||
|
||||
* **README FIRST for Docker Toolbox and Docker Machine users**: If you are already running Docker on your machine, first read [Docker for Mac vs. Docker Toolbox](docker-toolbox.md) to understand the impact of this installation on your existing setup, how to set your environment for Docker for Mac, and how the two products can coexist.
|
||||
<p />
|
||||
* **Relationship to Docker Machine**: Installing Docker for Mac does not affect machines you created with Docker Machine. You'll get the option to copy containers and images from your local `default` machine (if one exists) to the new Docker for Mac <a href="https://github.com/docker/HyperKit/">HyperKit</a> VM. When you are running Docker for Mac, you do not need Docker Machine nodes running at all locally (or anywhere else). With Docker for Mac, you have a new, native virtualization system running (HyperKit) which takes the place of the VirtualBox system. To learn more, see [Docker for Mac vs. Docker Toolbox](docker-toolbox.md).
|
||||
<p />
|
||||
* **System Requirements**: Docker for Mac will launch only if all of these requirements are met.
|
||||
* **README FIRST for Docker Toolbox and Docker Machine users**: If you are
|
||||
already running Docker on your machine, first read
|
||||
[Docker for Mac vs. Docker Toolbox](docker-toolbox.md) to understand the
|
||||
impact of this installation on your existing setup, how to set your environment
|
||||
for Docker for Mac, and how the two products can coexist.
|
||||
|
||||
- Mac must be a 2010 or newer model, with Intel's hardware support for memory management unit (MMU) virtualization; i.e., Extended Page Tables (EPT) and Unrestricted Mode.
|
||||
* **Relationship to Docker Machine**: Installing Docker for Mac does not affect
|
||||
machines you created with Docker Machine. You'll get the option to copy
|
||||
containers and images from your local `default` machine (if one exists) to the
|
||||
new Docker for Mac [HyperKit](https://github.com/docker/HyperKit/)"> VM. When
|
||||
you are running Docker for Mac, you do not need Docker Machine nodes running
|
||||
at all locally (or anywhere else). With Docker for Mac, you have a new, native
|
||||
virtualization system running (HyperKit) which takes the place of the
|
||||
VirtualBox system. To learn more, see
|
||||
[Docker for Mac vs. Docker Toolbox](docker-toolbox.md).
|
||||
|
||||
- OS X El Capitan 10.11 and newer macOS releases are supported. At a minimum, Docker for Mac requires macOS Yosemite 10.10.3 or newer, with the caveat that going forward 10.10.x is a use-at-your-own risk proposition.
|
||||
* **System Requirements**: Docker for Mac will launch only if all of these
|
||||
requirements are met.
|
||||
|
||||
- Starting with Docker for Mac stable release 1.13 (upcoming), and concurrent Beta releases, we will no longer address issues specific to OS X Yosemite 10.10. In future releases, Docker for Mac could stop working on OS X Yosemite 10.10 due to the deprecated status of this OS X version. We recommend upgrading to the latest version of macOS.
|
||||
- Mac must be a 2010 or newer model, with Intel's hardware support for memory
|
||||
management unit (MMU) virtualization; i.e., Extended Page Tables (EPT) and
|
||||
Unrestricted Mode.
|
||||
|
||||
- OS X El Capitan 10.11 and newer macOS releases are supported. At a minimum,
|
||||
Docker for Mac requires macOS Yosemite 10.10.3 or newer, with the caveat
|
||||
that going forward 10.10.x is a use-at-your-own risk proposition.
|
||||
|
||||
- Starting with Docker for Mac stable release 1.13 (upcoming), and concurrent
|
||||
Beta releases, we will no longer address issues specific to OS X Yosemite
|
||||
10.10. In future releases, Docker for Mac could stop working on OS X Yosemite
|
||||
10.10 due to the deprecated status of this OS X version. We recommend
|
||||
upgrading to the latest version of macOS.
|
||||
|
||||
- At least 4GB of RAM
|
||||
|
||||
- VirtualBox prior to version 4.3.30 must NOT be installed (it is incompatible with Docker for Mac)
|
||||
- VirtualBox prior to version 4.3.30 must NOT be installed (it is incompatible
|
||||
with Docker for Mac)
|
||||
|
||||
>**Note**: If your system does not satisfy these requirements, you can install [Docker Toolbox](/toolbox/overview.md), which uses Oracle Virtual Box instead of HyperKit.
|
||||
> **Note**: If your system does not satisfy these requirements, you can
|
||||
> install [Docker Toolbox](/toolbox/overview.md), which uses Oracle VirtualBox
|
||||
> instead of HyperKit.
|
||||
|
||||
<p />
|
||||
* **What the install includes**: The installation provides [Docker Engine](/engine/userguide/intro/), Docker CLI client, [Docker Compose](/compose/overview/), and [Docker Machine](/machine/overview/).
|
||||
* **What the install includes**: The installation provides
|
||||
[Docker Engine](/engine/userguide/intro/), Docker CLI client,
|
||||
[Docker Compose](/compose/overview/), and [Docker Machine](/machine/overview/).
|
||||
|
||||
## Step 1. Install and Run Docker for Mac
|
||||
|
||||
1. Double-click `Docker.dmg` to open the installer, then drag Moby the whale to the Applications folder.
|
||||
1. Double-click `Docker.dmg` to open the installer, then drag Moby the whale to
|
||||
the Applications folder.
|
||||
|
||||

|
||||

|
||||
|
||||
You will be asked to authorize `Docker.app` with your system password during the install process. Privileged access is needed to install networking components and links to the Docker apps.
|
||||
You will be asked to authorize `Docker.app` with your system password during
|
||||
the install process. Privileged access is needed to install networking
|
||||
components and links to the Docker apps.
|
||||
|
||||
2. Double-click `Docker.app` to start Docker.
|
||||
2. Double-click `Docker.app` to start Docker.
|
||||
|
||||

|
||||

|
||||
|
||||
The whale in the top status bar indicates that Docker is running, and accessible from a terminal.
|
||||
The whale in the top status bar indicates that Docker is running, and
|
||||
accessible from a terminal.
|
||||
|
||||

|
||||

|
||||
|
||||
If you just installed the app, you also get a success message with suggested next steps and a link to this documentation. Click the whale (<img src="images/whale-x.png">) in the status bar to dismiss this popup.
|
||||
If you just installed the app, you also get a success message with suggested
|
||||
next steps and a link to this documentation. Click the whale )
|
||||
in the status bar to dismiss this popup.
|
||||
|
||||

|
||||

|
||||
|
||||
3. Click the whale (<img src="images/whale-x.png">) to get Preferences, and other options.
|
||||
3. Click the whale () to get Preferences and
|
||||
other options.
|
||||
|
||||

|
||||

|
||||
|
||||
4. Select **About Docker** to verify that you have the latest version.
|
||||
4. Select **About Docker** to verify that you have the latest version.
|
||||
|
||||
Congratulations! You are up and running with Docker for Mac.
|
||||
Congratulations! You are up and running with Docker for Mac.
|
||||
|
||||
## Step 2. Check versions of Docker Engine, Compose, and Machine
|
||||
|
||||
Run these commands to test if your versions of `docker`, `docker-compose`, and `docker-machine` are up-to-date and compatible with `Docker.app`.
|
||||
Run these commands to test if your versions of `docker`, `docker-compose`, and
|
||||
`docker-machine` are up-to-date and compatible with `Docker.app`.
|
||||
|
||||
```shell
|
||||
$ docker --version
|
||||
|
@ -129,34 +163,45 @@ $ docker-machine --version
|
|||
docker-machine version 0.9.0-rc2, build 7b19591
|
||||
```
|
||||
|
||||
>**Note**: The above is an example. Your output will differ if you are running different (e.g., newer) versions.
|
||||
> **Note**: The above is an example. Your output will differ if you are running
|
||||
> different (e.g., newer) versions.
|
||||
|
||||
## Step 3. Explore the application and run examples
|
||||
|
||||
1. Open a command-line terminal, and run some Docker commands to verify that Docker is working as expected.
|
||||
1. Open a command-line terminal, and run some Docker commands to verify that
|
||||
Docker is working as expected.
|
||||
|
||||
Some good commands to try are `docker version` to check that you have the latest release installed, and `docker ps` and `docker run hello-world` to verify that Docker is running.
|
||||
Some good commands to try are `docker version` to check that you have the
|
||||
latest release installed, and `docker ps` and `docker run hello-world` to
|
||||
verify that Docker is running.
|
||||
|
||||
2. For something more adventurous, start a Dockerized web server.
|
||||
|
||||
```
|
||||
```bash
|
||||
docker run -d -p 80:80 --name webserver nginx
|
||||
```
|
||||
|
||||
If the image is not found locally, Docker will pull it from Docker Hub.
|
||||
|
||||
In a web browser, go to `http://localhost/` to bring up the home page. (Since you specified the default HTTP port, it isn't necessary to append `:80` at the end of the URL.)
|
||||
In a web browser, go to `http://localhost/` to bring up the home page.
|
||||
(Since you specified the default HTTP port, it isn't necessary to append
|
||||
`:80` at the end of the URL.)
|
||||
|
||||

|
||||
|
||||
>**Note:** Early beta releases used `docker` as the hostname to build the URL. Now, ports are exposed on the private IP addresses of the VM and forwarded to `localhost` with no other host name set. See also, [Release Notes](release-notes.md) for Beta 9.
|
||||
> **Note:** Early beta releases used `docker` as the hostname to build the
|
||||
> URL. Now, ports are exposed on the private IP addresses of the VM and
|
||||
> forwarded to `localhost` with no other host name set. See also,
|
||||
> [Release Notes](release-notes.md) for Beta 9.
|
||||
|
||||
3. Run `docker ps` while your web server is running to see details on the webserver container.
|
||||
3. Run `docker ps` while your web server is running to see details on the
|
||||
webserver container.
|
||||
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
56f433965490 nginx "nginx -g 'daemon off" About a minute ago Up About a minute 0.0.0.0:80->80/tcp, 443/tcp webserver
|
||||
|
||||
4. Stop or remove containers and images.
|
||||
```none
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
56f433965490 nginx "nginx -g 'daemon off" About a minute ago Up About a minute 0.0.0.0:80->80/tcp, 443/tcp webserver
|
||||
```
|
||||
4. Stop or remove containers and images.
|
||||
|
||||
The `nginx` webserver will continue to run in the container on that port
|
||||
until you stop and/or remove the container. If you want to stop the
|
||||
|
@ -168,42 +213,46 @@ docker-machine version 0.9.0-rc2, build 7b19591
|
|||
`docker rm -f webserver`. This will remove the container, but not the
|
||||
`nginx` image. You can list local images with `docker images`. You might
|
||||
want to keep some images around so that you don't have to pull them again
|
||||
from Docker Hub. To remove an image you no longer need, use `docker rmi` followed by an image ID or image name. For example, `docker rmi nginx`.
|
||||
from Docker Hub. To remove an image you no longer need, use `docker rmi`
|
||||
followed by an image ID or image name. For example, `docker rmi nginx`.
|
||||
|
||||
**Want more example applications?** - For more example walkthroughs that include setting up services and databases in Docker Compose, see [Example Applications](examples.md).
|
||||
**Want more example applications?** - For more example walkthroughs that include
|
||||
setting up services and databases in Docker Compose, see
|
||||
[Example Applications](/docker-for-mac/examples.md).
|
||||
|
||||
## Preferences
|
||||
|
||||
Choose <img src="images/whale-x.png"> --> **Preferences** from the menu bar. You
|
||||
Choose  --> **Preferences** from the menu bar. You
|
||||
can set the following runtime options.
|
||||
|
||||
### General
|
||||
|
||||

|
||||

|
||||
|
||||
#### Auto-start, update, backups, usage data
|
||||
|
||||
* Docker for Mac is set to automatically **start Docker when you log in**.
|
||||
Uncheck this option if you don't want Docker to start when you
|
||||
open your session.
|
||||
* Docker for Mac is set to automatically **start Docker when you log in**.
|
||||
Uncheck this option if you don't want Docker to start when you
|
||||
open your session.
|
||||
|
||||
* Docker for Mac is set to **automatically check for updates** and notify
|
||||
you when an update is available. If an update is found, click **OK** to
|
||||
accept and install it (or cancel to keep the current version). If you
|
||||
disable the check for updates, you can still find out about updates manually
|
||||
by choosing <img src="images/whale-x.png"> -> **Check for Updates**
|
||||
you when an update is available. If an update is found, click **OK** to
|
||||
accept and install it (or cancel to keep the current version). If you
|
||||
disable the check for updates, you can still find out about updates manually
|
||||
by choosing  -> **Check for Updates**
|
||||
|
||||
* Check **Exclude VM from Time Machine backups** to prevent Time Machine
|
||||
from backing up the Docker for Mac virtual machine.
|
||||
from backing up the Docker for Mac virtual machine.
|
||||
|
||||
* **Send usage statistics** — You can set Docker for Mac to auto-send diagnostics, crash reports, and usage data. This information can help Docker
|
||||
improve the application and get more context for troubleshooting problems.
|
||||
Uncheck this to opt out and prevent auto-send of data. Docker may prompt for
|
||||
more information in some cases, even with auto-send enabled. Also, you can
|
||||
enable or disable these auto-reporting settings with one click on the
|
||||
information popup when you first start Docker.
|
||||
* **Send usage statistics** — You can set Docker for Mac to auto-send
|
||||
diagnostics, crash reports, and usage data. This information can help Docker
|
||||
improve the application and get more context for troubleshooting problems.
|
||||
Uncheck this to opt out and prevent auto-send of data. Docker may prompt for
|
||||
more information in some cases, even with auto-send enabled. Also, you can
|
||||
enable or disable these auto-reporting settings with one click on the
|
||||
information popup when you first start Docker.
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### File sharing
|
||||
|
@ -218,21 +267,20 @@ want to add.
|
|||
* Click **Apply & Restart** to make the directory available to
|
||||
containers using Docker's bind mount (`-v`) feature.
|
||||
|
||||
There are some limitations on the directories that can be shared:
|
||||
There are some limitations on the directories that can be shared:
|
||||
|
||||
* They cannot be a subdirectory of an already shared directory.
|
||||
* They cannot be a subdirectory of an already shared directory.
|
||||
|
||||
* They cannot already exist inside of Docker.
|
||||
* They cannot already exist inside of Docker.
|
||||
|
||||
See [Namespaces](osxfs.md#namespaces) in the topic on
|
||||
[osxfs file system sharing](osxfs.md) for more information.
|
||||
|
||||
>**Tip:** File sharing is required for volume mounting if the project lives
|
||||
outside of the `/Users` directory. In that case, share the drive where the
|
||||
Dockerfile and volume are located. Otherwise, you will get file not found or
|
||||
cannot start service errors at runtime. (See also [Volume mounting requires file
|
||||
sharing for any project directories outside of
|
||||
`/Users`](troubleshoot.md#volume-mounting-requires-file-sharing-for-any-project-directories-outside-of-users).)
|
||||
> **Tip:** File sharing is required for volume mounting if the project lives
|
||||
> outside of the `/Users` directory. In that case, share the drive where the
|
||||
> Dockerfile and volume are located. Otherwise, you will get file not found or
|
||||
> cannot start service errors at runtime. (See also
|
||||
> [Volume mounting requires file sharing for any project directories outside of `/Users`](troubleshoot.md#volume-mounting-requires-file-sharing-for-any-project-directories-outside-of-users).)
|
||||
|
||||
|
||||
### Advanced
|
||||
|
@ -266,12 +314,13 @@ these to Docker and to your containers. For example, if you set your proxy
|
|||
settings to `http://proxy.example.com`, Docker will use this proxy when pulling
|
||||
containers.
|
||||
|
||||

|
||||

|
||||
|
||||
### Docker Daemon
|
||||
|
||||
You can configure options on the Docker daemon that determine how your
|
||||
containers will run. You can configure some **Basic** options on the daemon with interactive settings, or switch to **Advanced** to edit the JSON directly.
|
||||
containers will run. You can configure some **Basic** options on the daemon with
|
||||
interactive settings, or switch to **Advanced** to edit the JSON directly.
|
||||
|
||||
The settings offered on **Basic** dialog can be
|
||||
configured directly in the JSON as well. This version just surfaces
|
||||
|
@ -281,15 +330,17 @@ some of the commmon settings to make it easier to configure them.
|
|||
* [Custom registries](#custom-registries)
|
||||
* [Edit the daemon configuration file](#edit-the-daemon-configuration-file)
|
||||
|
||||

|
||||

|
||||
|
||||
#### Experimental mode
|
||||
|
||||
By default, Docker for Mac Beta releases use the experimental version of Docker
|
||||
Engine, described in the [Docker Experimental Features README](https://github.com/docker/docker/tree/master/experimental) on GitHub. Starting with
|
||||
Beta 31, you can toggle **experimental mode** on and off. If you toggle it off,
|
||||
Docker for Mac Beta uses the current generally available release of Docker
|
||||
Engine, the same as Stable Docker for Mac versions uses.
|
||||
Engine, described in the
|
||||
[Docker Experimental Features README](https://github.com/docker/docker/tree/master/experimental)
|
||||
on GitHub. Starting with Beta 31, you can toggle **experimental mode** on and
|
||||
off. If you toggle it off, Docker for Mac Beta uses the current generally
|
||||
available release of Docker Engine, the same as Stable Docker for Mac versions
|
||||
uses.
|
||||
|
||||
You can check whether you are running experimental mode or not by typing `docker
|
||||
version` on the command line. Experimental mode is listed under `Server` data.
|
||||
|
@ -321,33 +372,35 @@ Server:
|
|||
As an alternative to using [Docker Hub](https://hub.docker.com/) to store your
|
||||
public or private images or [Docker Trusted
|
||||
Registry](/datacenter/dtr/2.1/guides/index.md), you can use Docker to set up
|
||||
your own insecure [registry](/registry/introduction/). Add URLs for insecure
|
||||
registries and registry mirrors on which to host your images. (See also, [How do
|
||||
I add custom CA certificates?](faqs.md#how-do-i-add-custom-ca-certificates) in
|
||||
the FAQs.)
|
||||
your own insecure [registry](/registry/introduction.md). Add URLs for insecure
|
||||
registries and registry mirrors on which to host your images. (See also,
|
||||
[How do I add custom CA certificates?](/docker-for-mac/faqs.md#how-do-i-add-custom-ca-certificates)
|
||||
in the FAQs.)
|
||||
|
||||
#### Edit the daemon configuration file
|
||||
|
||||
On the **Daemon -> Advanced dialog**, you can directly configure the daemon from
|
||||
the JSON file, and determine entirely how your containers will run. For a full
|
||||
list of options on the Docker daemon, see <a
|
||||
href="/engine/reference/commandline/dockerd/>daemon</a> in the Docker Engine
|
||||
list of options on the Docker daemon, see
|
||||
[daemon](/engine/reference/commandline/dockerd.md) in the Docker Engine
|
||||
command line reference.
|
||||
|
||||
After editing the daemon configuration , click **Apply & Restart** to save it
|
||||
and reboot Docker. Or, to cancel changes, click another preference tab, then
|
||||
choose to discard or not apply changes when asked.
|
||||
|
||||

|
||||

|
||||
|
||||
## Uninstall or reset
|
||||
Choose <img src="images/whale-x.png"> --> **Preferences** from the menu bar, then click **Uninstall / Reset** on the Preferences dialog.
|
||||
Choose  --> **Preferences** from
|
||||
the menu bar, then click **Uninstall / Reset** on the Preferences dialog.
|
||||
|
||||

|
||||
|
||||
* **Uninstall** - Choose this option to remove Docker for Mac from your system.
|
||||
|
||||
* **Reset to factory defaults** - Choose this option to reset all options on Docker for Mac to its initial state, the same as when it was first installed.
|
||||
* **Reset to factory defaults** - Choose this option to reset all options on
|
||||
Docker for Mac to its initial state, the same as when it was first installed.
|
||||
|
||||
You can uninstall Docker for Mac from the command line with this command:
|
||||
`<DockerforMacPath> --uninstall`. If Docker is installed in the default
|
||||
|
@ -359,21 +412,27 @@ Docker is running, exiting...
|
|||
Docker uninstalled successfully. You can move the Docker application to the trash.
|
||||
```
|
||||
|
||||
You might want to use the command-line uninstall if, for example, you find that the app is non-functional, and you cannot uninstall it from the menu.
|
||||
You might want to use the command-line uninstall if, for example, you find that
|
||||
the app is non-functional, and you cannot uninstall it from the menu.
|
||||
|
||||
## Installing bash completion
|
||||
|
||||
If you are using [bash completion](https://www.debian-administration.org/article/316/An_introduction_to_bash_completion_part_1), such as [homebrew bash-completion on Mac](http://davidalger.com/development/bash-completion-on-os-x-with-brew/), bash completion scripts for
|
||||
If you are using
|
||||
[bash completion](https://www.debian-administration.org/article/316/An_introduction_to_bash_completion_part_1),
|
||||
such as
|
||||
[homebrew bash-completion on Mac](http://davidalger.com/development/bash-completion-on-os-x-with-brew/)
|
||||
bash completion scripts for the following commands may be found inside
|
||||
`Docker.app`, in the `Contents/Resources/etc/` directory:
|
||||
|
||||
- docker
|
||||
- docker-machine
|
||||
- docker-compose
|
||||
may be found inside Docker.app, in the Contents/Resources/etc folder.
|
||||
|
||||
To activate bash completion, these files need to be copied or symlinked to your
|
||||
bash_completion.d directory. For example, if you use <a
|
||||
href="http://brew.sh/">Homebrew</a>:
|
||||
`bash_completion.d/` directory. For example, if you use
|
||||
[Homebrew](htt://brew.sh/):
|
||||
|
||||
```
|
||||
```bash
|
||||
ln -s /Applications/Docker.app/Contents/Resources/etc/docker.bash-completion /usr/local/etc/bash_completion.d/docker
|
||||
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-machine.bash-completion /usr/local/etc/bash_completion.d/docker-machine
|
||||
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-compose.bash-completion /usr/local/etc/bash_completion.d/docker-compose
|
||||
|
@ -387,9 +446,8 @@ forum](https://forums.docker.com/c/docker-for-mac).
|
|||
|
||||
To report bugs or problems, log on to [Docker for Mac issues on
|
||||
GitHub](https://github.com/docker/for-mac/issues), where you can review
|
||||
community reported issues, and file new ones. See [Diagnose problems, send
|
||||
feedback, and create GitHub
|
||||
issues](troubleshoot.md#diagnose-problems-send-feedback-and-create-github-issues).
|
||||
community reported issues, and file new ones. See
|
||||
[Diagnose problems, send feedback, and create GitHub issues](troubleshoot.md#diagnose-problems-send-feedback-and-create-github-issues).
|
||||
As a part of reporting issues on GitHub, we can help you troubleshoot the log
|
||||
data.
|
||||
|
||||
|
@ -400,13 +458,17 @@ options at the bottom of each docs page.
|
|||
|
||||
* Try out the [Getting Started with Docker](/engine/getstarted/index.md) tutorial.
|
||||
|
||||
* Follow up by working through the voting app example to learn how to [define and deploy a Docker stack](/engine/getstarted-voting-app/index.md) to a
|
||||
* Follow up by working through the voting app example to learn how to
|
||||
[define and deploy a Docker stack](/engine/getstarted-voting-app/index.md) to a
|
||||
[swarm](/engine/swarm/index.md). This example shows how to deploy multiple
|
||||
containers as services and use new [Compose Version
|
||||
3](/compose/compose-file.md#version-3) features.
|
||||
containers as services and use new
|
||||
[Compose Version 3](/compose/compose-file.md#version-3) features.
|
||||
|
||||
* Dig in deeper with [Docker Labs](https://github.com/docker/labs/) example walkthroughs and source code.
|
||||
* Dig in deeper with [Docker Labs](https://github.com/docker/labs/) example
|
||||
walkthroughs and source code.
|
||||
|
||||
* For a summary of Docker command line interface (CLI) commands, see [Docker CLI Reference Guide](/engine/reference/index.md).
|
||||
* For a summary of Docker command line interface (CLI) commands, see
|
||||
[Docker CLI Reference Guide](/engine/api.md).
|
||||
|
||||
* Check out the blog post [Introducing Docker 1.13.0](https://blog.docker.com/2017/01/whats-new-in-docker-1-13/).
|
||||
* Check out the blog post
|
||||
[Introducing Docker 1.13.0](https://blog.docker.com/2017/01/whats-new-in-docker-1-13/).
|
||||
|
|
|
@ -12,8 +12,8 @@ technical support for various subscription levels, and more.
|
|||
|
||||
**Q: How do I get the stable or beta version of Docker for Windows?**
|
||||
|
||||
A: Use the download links for the channels given in the topic [Download Docker
|
||||
for Windows](index.md#download-docker-for-windows).
|
||||
A: Use the download links for the channels given in the topic
|
||||
[Download Docker for Windows](/docker-for-windows/index.md#download-docker-for-windows).
|
||||
|
||||
This topic also has more information about the two channels.
|
||||
|
||||
|
@ -21,15 +21,19 @@ This topic also has more information about the two channels.
|
|||
|
||||
A: Two different download channels are available for Docker for Windows:
|
||||
|
||||
* 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. On the stable channel, you can select whether to send usage statistics and other data.
|
||||
* 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. On the
|
||||
stable channel, you can select whether to send usage statistics and other data.
|
||||
|
||||
* 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. Usage statistics and crash reports are sent by default. You do not have the option to disable this on the beta channel.
|
||||
* 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. Usage statistics and crash reports are
|
||||
sent by default. You do not have the option to disable this on the beta channel.
|
||||
|
||||
**Q: Can I switch back and forth between stable and beta versions of Docker for Windows?**
|
||||
|
||||
|
@ -52,17 +56,17 @@ below.</font><br>
|
|||
|
||||
Do the following each time:
|
||||
|
||||
1. Use `docker save` to save any images you want to keep. (See
|
||||
[save](/engine/reference/commandline/save.md) in the Docker Engine command line
|
||||
reference.)
|
||||
1. Use `docker save` to save any images you want to keep. (See
|
||||
[save](/engine/reference/commandline/save.md) in the Docker Engine command
|
||||
line reference.)
|
||||
|
||||
2. Use `docker export` to export containers you want to keep. (See
|
||||
[export](/engine/reference/commandline/export.md) in the Docker Engine command
|
||||
line reference.)
|
||||
2. Use `docker export` to export containers you want to keep. (See
|
||||
[export](/engine/reference/commandline/export.md) in the Docker Engine command
|
||||
line reference.)
|
||||
|
||||
3. Uninstall the current app (whether stable or beta).
|
||||
3. Uninstall the current app (whether stable or beta).
|
||||
|
||||
4. Install a different version of the app (stable or beta).
|
||||
4. Install a different version of the app (stable or beta).
|
||||
|
||||
### What kind of feedback are we looking for?
|
||||
|
||||
|
@ -78,13 +82,13 @@ in [Docker Swarm](/engine/swarm/index.md). A good place to start is the
|
|||
### What if I have problems or questions?
|
||||
|
||||
You can find the list of frequent issues in
|
||||
[Logs and Troubleshooting](troubleshoot.md).
|
||||
[Logs and Troubleshooting](/docker-for-windows/troubleshoot.md).
|
||||
|
||||
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).
|
||||
[Diagnose and Feedback](/docker-for-windows/index.md#diagnose-and-feedback).
|
||||
|
||||
[Docker for Windows forum](https://forums.docker.com/c/docker-for-windows)
|
||||
provides discussion threads as well, and you can create discussion topics there,
|
||||
|
@ -93,13 +97,13 @@ response.
|
|||
|
||||
### Can I use Docker for Windows with new swarm mode?
|
||||
|
||||
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
|
||||
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).
|
||||
experiment with a multi-node swarm. Check out the tutorial at
|
||||
[Get started with swarm mode](/engine/swarm/swarm-tutorial/index.md).
|
||||
|
||||
### How do I connect to the remote Docker Engine API?
|
||||
|
||||
|
@ -109,14 +113,16 @@ On Docker for Windows, clients can connect to the Docker Engine through a **name
|
|||
|
||||
This sets `DOCKER_HOST` and `DOCKER_CERT_PATH` environment variables to the given values (for the named pipe or TCP socket, whichever you use).
|
||||
|
||||
See also [Docker Engine API](/engine/reference/api/) and the Docker for Windows forums topic [How to find the remote API](https://forums.docker.com/t/how-to-find-the-remote-api/20988).
|
||||
See also [Docker Engine API](/engine/api.md) and the Docker for Windows forums
|
||||
topic
|
||||
[How to find the remote API](https://forums.docker.com/t/how-to-find-the-remote-api/20988).
|
||||
|
||||
### Why doesn't `nodemon` pick up file changes in a container mounted on a shared drive?
|
||||
|
||||
Currently, `inotify` does not work on Docker for Windows. This is a known issue.
|
||||
For more information and a temporary workaround, see [inotify on shared drives
|
||||
does not work](troubleshoot.md#inotify-on-shared-drives-does-not-work) in
|
||||
[Troubleshooting](troubleshoot.md).
|
||||
[Troubleshooting](/docker-for-windows/troubleshoot.md).
|
||||
|
||||
### Are symlinks supported?
|
||||
|
||||
|
@ -126,9 +132,11 @@ Symlinks created elsewhere (e.g., on the host) will not work.
|
|||
|
||||
To learn more about the reasons for this limitation, see the following discussions:
|
||||
|
||||
* GitHub issue: [Symlinks don't work as expected](https://github.com/docker/for-win/issues/109#issuecomment-251307391)
|
||||
* GitHub issue:
|
||||
[Symlinks don't work as expected](https://github.com/docker/for-win/issues/109#issuecomment-251307391)
|
||||
|
||||
* Docker for Windows forums topic: [Symlinks on shared volumes not supported](https://forums.docker.com/t/symlinks-on-shared-volumes-not-supported/9288)
|
||||
* Docker for Windows forums topic:
|
||||
[Symlinks on shared volumes not supported](https://forums.docker.com/t/symlinks-on-shared-volumes-not-supported/9288)
|
||||
|
||||
### How do I add custom CA certificates?
|
||||
|
||||
|
@ -136,7 +144,8 @@ Starting with Docker for Windows 1.12.1, 2016-09-16 (stable) and Beta 26 (2016-0
|
|||
|
||||
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.
|
||||
|
||||
To learn more, see the GitHub issue [Allow user to add custom Certificate Authorities ](https://github.com/docker/for-win/issues/48).
|
||||
To learn more, see the GitHub issue
|
||||
[Allow user to add custom Certificate Authorities ](https://github.com/docker/for-win/issues/48).
|
||||
|
||||
### Why does Docker for Windows sometimes lose network connectivity (e.g., `push`/`pull` doesn't work)?
|
||||
|
||||
|
@ -156,7 +165,8 @@ Docker for Windows does not support mounts for nodes you created with
|
|||
`docker-machine`.
|
||||
|
||||
For more about sharing local drives with containers using Docker for Windows,
|
||||
see [Shared Drives](index.md#shared-drives) in the Getting Started topic.
|
||||
see [Shared Drives](/docker-for-windows/index.md#shared-drives) in the Getting
|
||||
Started topic.
|
||||
|
||||
To learn more about using Docker for Windows and Docker Machine, see [What to
|
||||
know before you install](index.md#what-to-know-before-you-install) in the
|
||||
|
@ -187,14 +197,13 @@ Windows to work.
|
|||
|
||||
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).
|
||||
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](/docker-for-windows/troubleshoot.md).
|
||||
|
||||
### How do I uninstall Docker Toolbox?
|
||||
|
||||
You might decide that you do not need Toolbox now that you have Docker for Windows, and want to uninstall it. For
|
||||
details on how to perform a clean uninstall of Toolbox on Windows, see [How to
|
||||
uninstall Toolbox](/toolbox/toolbox_install_windows.md#how-to-uninstall-toolbox)
|
||||
details on how to perform a clean uninstall of Toolbox on Windows, see
|
||||
[How to uninstall Toolbox](/toolbox/toolbox_install_windows.md#how-to-uninstall-toolbox)
|
||||
in the Toolbox Windows topics.
|
||||
|
|
|
@ -26,7 +26,8 @@ through the rest of the Docker for Windows tour, or jump over to getting started
|
|||
|
||||
If you have not already done so, please install Docker for Windows. You can
|
||||
download installers from the stable or beta channel. For more about stable and
|
||||
beta channels, see the [FAQs](faqs.md#questions-about-stable-and-beta-channels).
|
||||
beta channels, see the
|
||||
[FAQs](/docker-for-windows/faqs.md#questions-about-stable-and-beta-channels).
|
||||
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
|
@ -52,16 +53,17 @@ beta channels, see the [FAQs](faqs.md#questions-about-stable-and-beta-channels).
|
|||
|
||||
>**Important Notes:**
|
||||
>
|
||||
>- Docker for Windows requires 64bit Windows 10 Pro, Enterprise and Education
|
||||
> (1511 November update, Build 10586 or later) and Microsoft Hyper-V. Please
|
||||
> see [What to know before you install](index.md#what-to-know-before-you-install)
|
||||
> for a full list of prerequisites.
|
||||
> - Docker for Windows requires 64bit Windows 10 Pro, Enterprise and Education
|
||||
> (1511 November update, Build 10586 or later) and Microsoft Hyper-V. Please
|
||||
> see
|
||||
> [What to know before you install](/docker-for-windows/index.md#what-to-know-before-you-install)
|
||||
> for a full list of prerequisites.
|
||||
>
|
||||
>- You can switch between beta and stable versions, but you must have only one
|
||||
> - You can switch between beta and stable versions, but you must have only one
|
||||
> app installed at a time. Also, you will need to save images and export
|
||||
> containers you want to keep before uninstalling the current version before
|
||||
> installing another. For more about this, see the
|
||||
> [FAQs about beta and stable channels](faqs.md#questions-about-stable-and-beta-channels).
|
||||
> containers you want to keep before uninstalling the current version before
|
||||
> installing another. For more about this, see the
|
||||
> [FAQs about beta and stable channels](/docker-for-windows/faqs.md#questions-about-stable-and-beta-channels).
|
||||
|
||||
## What to know before you install
|
||||
|
||||
|
@ -89,7 +91,7 @@ enabled](troubleshoot.md#virtualization-must-be-enabled) in Troubleshooting.
|
|||
<p />
|
||||
* Nested virtualization scenarios, such as running Docker for Windows on a VMWare or Parallels instance, might work, but come with no guarantees (i.e., not officially supported).
|
||||
<p />
|
||||
* **What the Docker for Windows install includes**: The installation provides [Docker Engine](/engine/userguide/intro.md), Docker CLI client, [Docker Compose](/compose/overview/), and [Docker Machine](/machine/overview.md).
|
||||
* **What the Docker for Windows install includes**: The installation provides [Docker Engine](/engine/userguide/intro.md), Docker CLI client, [Docker Compose](/compose/overview.md), and [Docker Machine](/machine/overview.md).
|
||||
|
||||
### About Windows containers and Windows Server 2016
|
||||
|
||||
|
@ -104,7 +106,7 @@ Windows containers.
|
|||
<p />
|
||||
* [Switch between Windows and Linux containers](#switch-between-windows-and-linux-containers) describes the Linux / Windows containers toggle in Docker for Windows and points you to the tutorial mentioned above.
|
||||
<p />
|
||||
* Docker Container Platform for Windows Server 2016 [articles and blog posts](https://www.docker.com/microsoft) on the Docker website
|
||||
* Docker Container Platform for Windows Server 2016 [articles and blog posts](https://www.docker.com/microsoft/) on the Docker website
|
||||
|
||||
## Step 1. Install Docker for Windows
|
||||
|
||||
|
@ -118,7 +120,7 @@ Windows containers.
|
|||
|
||||
3. Click **Finish** on the setup complete dialog to launch Docker.
|
||||
|
||||

|
||||

|
||||
|
||||
## Step 2. Start Docker for Windows
|
||||
|
||||
|
@ -128,7 +130,7 @@ The whale in the status bar indicates that Docker is running, and accessible fro
|
|||
|
||||
If you just installed the app, you also get a popup success message with suggested next steps, and a link to this documentation.
|
||||
|
||||

|
||||

|
||||
|
||||
When initialization is complete, select **About Docker** from the notification area icon to verify that you have the latest version.
|
||||
|
||||
|
@ -151,197 +153,249 @@ Start your favorite shell (`cmd.exe`, PowerShell, or other) to check your versio
|
|||
|
||||
The next few steps take you through some examples. These are just suggestions for ways to experiment with Docker on your system, check version information, and make sure `docker` commands are working properly.
|
||||
|
||||
1. Open a shell (`cmd.exe`, PowerShell, or other).
|
||||
1. Open a shell (`cmd.exe`, PowerShell, or other).
|
||||
|
||||
2. Run some Docker commands, such as `docker ps`, `docker version`, and `docker info`.
|
||||
2. Run some Docker commands, such as `docker ps`, `docker version`, and `docker info`.
|
||||
|
||||
Here is the output of `docker ps` run in a powershell. (In this example, no containers are running yet.)
|
||||
|
||||
```none
|
||||
PS C:\Users\jdoe> docker ps
|
||||
|
||||
PS C:\Users\jdoe> docker ps
|
||||
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
```
|
||||
|
||||
Here is an example of command output for `docker version`.
|
||||
|
||||
PS C:\Users\jdoe> docker version
|
||||
Client:
|
||||
Version: 1.13.0-rc3
|
||||
API version: 1.25
|
||||
Go version: go1.7.3
|
||||
Git commit: 4d92237
|
||||
Built: Tue Dec 6 01:15:44 2016
|
||||
OS/Arch: windows/amd64
|
||||
```none
|
||||
PS C:\Users\jdoe> docker version
|
||||
Client:
|
||||
Version: 1.13.0-rc3
|
||||
API version: 1.25
|
||||
Go version: go1.7.3
|
||||
Git commit: 4d92237
|
||||
Built: Tue Dec 6 01:15:44 2016
|
||||
OS/Arch: windows/amd64
|
||||
|
||||
Server:
|
||||
Version: 1.13.0-rc3
|
||||
API version: 1.25 (minimum version 1.12)
|
||||
Go version: go1.7.3
|
||||
Git commit: 4d92237
|
||||
Built: Tue Dec 6 01:15:44 2016
|
||||
OS/Arch: linux/amd64
|
||||
Experimental: true
|
||||
Server:
|
||||
Version: 1.13.0-rc3
|
||||
API version: 1.25 (minimum version 1.12)
|
||||
Go version: go1.7.3
|
||||
Git commit: 4d92237
|
||||
Built: Tue Dec 6 01:15:44 2016
|
||||
OS/Arch: linux/amd64
|
||||
Experimental: true
|
||||
```
|
||||
|
||||
Here is an example of command output for `docker info`.
|
||||
|
||||
PS C:\Users\jdoe> docker info
|
||||
Containers: 0
|
||||
Running: 0
|
||||
Paused: 0
|
||||
Stopped: 0
|
||||
Images: 0
|
||||
Server Version: 1.13.0-rc3
|
||||
Storage Driver: overlay2
|
||||
Backing Filesystem: extfs
|
||||
Supports d_type: true
|
||||
Native Overlay Diff: true
|
||||
Logging Driver: json-file
|
||||
Cgroup Driver: cgroupfs
|
||||
Plugins:
|
||||
Volume: local
|
||||
Network: bridge host macvlan null overlay
|
||||
Swarm: inactive
|
||||
Runtimes: runc
|
||||
Default Runtime: runc
|
||||
Init Binary: docker-init
|
||||
containerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e
|
||||
runc version: 51371867a01c467f08af739783b8beafc154c4d7
|
||||
init version: 949e6fa
|
||||
Security Options:
|
||||
seccomp
|
||||
Profile: default
|
||||
Kernel Version: 4.8.12-moby
|
||||
Operating System: Alpine Linux v3.4
|
||||
OSType: linux
|
||||
Architecture: x86_64
|
||||
CPUs: 2
|
||||
Total Memory: 1.934 GiB
|
||||
Name: moby
|
||||
ID: EODE:VBXI:Y4EL:JXRJ:STRS:HCAI:LDLF:P4KW:B5XU:QPNE:LKTM:RG32
|
||||
Docker Root Dir: /var/lib/docker
|
||||
Debug Mode (client): false
|
||||
Debug Mode (server): true
|
||||
File Descriptors: 13
|
||||
Goroutines: 21
|
||||
System Time: 2016-12-07T19:02:41.3287973Z
|
||||
EventsListeners: 0
|
||||
Registry: https://index.docker.io/v1/
|
||||
Experimental: true
|
||||
Insecure Registries:
|
||||
127.0.0.0/8
|
||||
Live Restore Enabled: false
|
||||
```none
|
||||
PS C:\Users\jdoe> docker info
|
||||
Containers: 0
|
||||
Running: 0
|
||||
Paused: 0
|
||||
Stopped: 0
|
||||
Images: 0
|
||||
Server Version: 1.13.0-rc3
|
||||
Storage Driver: overlay2
|
||||
Backing Filesystem: extfs
|
||||
Supports d_type: true
|
||||
Native Overlay Diff: true
|
||||
Logging Driver: json-file
|
||||
Cgroup Driver: cgroupfs
|
||||
Plugins:
|
||||
Volume: local
|
||||
Network: bridge host macvlan null overlay
|
||||
Swarm: inactive
|
||||
Runtimes: runc
|
||||
Default Runtime: runc
|
||||
Init Binary: docker-init
|
||||
containerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e
|
||||
runc version: 51371867a01c467f08af739783b8beafc154c4d7
|
||||
init version: 949e6fa
|
||||
Security Options:
|
||||
seccomp
|
||||
Profile: default
|
||||
Kernel Version: 4.8.12-moby
|
||||
Operating System: Alpine Linux v3.4
|
||||
OSType: linux
|
||||
Architecture: x86_64
|
||||
CPUs: 2
|
||||
Total Memory: 1.934 GiB
|
||||
Name: moby
|
||||
ID: EODE:VBXI:Y4EL:JXRJ:STRS:HCAI:LDLF:P4KW:B5XU:QPNE:LKTM:RG32
|
||||
Docker Root Dir: /var/lib/docker
|
||||
Debug Mode (client): false
|
||||
Debug Mode (server): true
|
||||
File Descriptors: 13
|
||||
Goroutines: 21
|
||||
System Time: 2016-12-07T19:02:41.3287973Z
|
||||
EventsListeners: 0
|
||||
Registry: https://index.docker.io/v1/
|
||||
Experimental: true
|
||||
Insecure Registries:
|
||||
127.0.0.0/8
|
||||
Live Restore Enabled: false
|
||||
```
|
||||
|
||||
>**Note:** The outputs above are examples. Your output for commands like `docker version` and `docker info` will vary depending on your product versions (e.g., as you install newer versions).
|
||||
>**Note:** The outputs above are examples. Your output for commands like
|
||||
> `docker version` and `docker info` will vary depending on your product
|
||||
> versions (e.g., as you install newer versions).
|
||||
|
||||
3. Run `docker run hello-world` to test pulling an image from Docker Hub and starting a container.
|
||||
|
||||
PS C:\Users\jdoe> docker run hello-world
|
||||
```none
|
||||
PS C:\Users\jdoe> docker run hello-world
|
||||
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
|
||||
```
|
||||
|
||||
4. Try something more ambitious, and run an Ubuntu container with this command.
|
||||
4. Try something more ambitious, and run an Ubuntu container with this command.
|
||||
|
||||
docker run -it ubuntu bash
|
||||
```none
|
||||
PS C:\Users\jdoe> docker run -it ubuntu bash
|
||||
```
|
||||
|
||||
This will download the `ubuntu` container image and start it. Here is the output of running this command in a powershell.
|
||||
This will download the `ubuntu` container image and start it. Here is the output of running this command in a powershell.
|
||||
|
||||
PS C:\Users\jdoe> docker run -it ubuntu bash
|
||||
```none
|
||||
PS C:\Users\jdoe> docker run -it ubuntu bash
|
||||
|
||||
Unable to find image 'ubuntu:latest' locally
|
||||
latest: Pulling from library/ubuntu
|
||||
5a132a7e7af1: Pull complete
|
||||
fd2731e4c50c: Pull complete
|
||||
28a2f68d1120: Pull complete
|
||||
a3ed95caeb02: Pull complete
|
||||
Digest: sha256:4e85ebe01d056b43955250bbac22bdb8734271122e3c78d21e55ee235fc6802d
|
||||
Status: Downloaded newer image for ubuntu:latest
|
||||
Unable to find image 'ubuntu:latest' locally
|
||||
latest: Pulling from library/ubuntu
|
||||
5a132a7e7af1: Pull complete
|
||||
fd2731e4c50c: Pull complete
|
||||
28a2f68d1120: Pull complete
|
||||
a3ed95caeb02: Pull complete
|
||||
Digest: sha256:4e85ebe01d056b43955250bbac22bdb8734271122e3c78d21e55ee235fc6802d
|
||||
Status: Downloaded newer image for ubuntu:latest
|
||||
```
|
||||
|
||||
Type `exit` to stop the container and close the powershell.
|
||||
Type `exit` to stop the container and close the powershell.
|
||||
|
||||
5. Start a Dockerized webserver with this command:
|
||||
5. Start a Dockerized webserver with this command:
|
||||
|
||||
docker run -d -p 80:80 --name webserver nginx
|
||||
```none
|
||||
PS C:\Users\jdoe> docker run -d -p 80:80 --name webserver nginx
|
||||
```
|
||||
|
||||
This will download the `nginx` container image and start it. Here is the output of running this command in a powershell.
|
||||
This will download the `nginx` container image and start it. Here is the
|
||||
output of running this command in a powershell.
|
||||
|
||||
PS C:\Users\jdoe> docker run -d -p 80:80 --name webserver nginx
|
||||
```none
|
||||
PS C:\Users\jdoe> docker run -d -p 80:80 --name webserver nginx
|
||||
|
||||
Unable to find image 'nginx:latest' locally
|
||||
latest: Pulling from library/nginx
|
||||
Unable to find image 'nginx:latest' locally
|
||||
latest: Pulling from library/nginx
|
||||
|
||||
fdd5d7827f33: Pull complete
|
||||
a3ed95caeb02: Pull complete
|
||||
716f7a5f3082: Pull complete
|
||||
7b10f03a0309: Pull complete
|
||||
Digest: sha256:f6a001272d5d324c4c9f3f183e1b69e9e0ff12debeb7a092730d638c33e0de3e
|
||||
Status: Downloaded newer image for nginx:latest
|
||||
dfe13c68b3b86f01951af617df02be4897184cbf7a8b4d5caf1c3c5bd3fc267f
|
||||
fdd5d7827f33: Pull complete
|
||||
a3ed95caeb02: Pull complete
|
||||
716f7a5f3082: Pull complete
|
||||
7b10f03a0309: Pull complete
|
||||
Digest: sha256:f6a001272d5d324c4c9f3f183e1b69e9e0ff12debeb7a092730d638c33e0de3e
|
||||
Status: Downloaded newer image for nginx:latest
|
||||
dfe13c68b3b86f01951af617df02be4897184cbf7a8b4d5caf1c3c5bd3fc267f
|
||||
```
|
||||
|
||||
6. Point your web browser at `http://localhost` to display the start page.
|
||||
|
||||
(Since you specified the default HTTP port, it isn't necessary to append `:80` at the end of the URL.)
|
||||
(Since you specified the default HTTP port, it isn't necessary to append
|
||||
`:80` at the end of the URL.)
|
||||
|
||||

|
||||

|
||||
|
||||
7. Run `docker ps` while your webserver is running to see details on the container.
|
||||
7. Run `docker ps` while your webserver is running to see details on the
|
||||
container.
|
||||
|
||||
PS C:\Users\jdoe> docker ps
|
||||
```none
|
||||
PS C:\Users\jdoe> docker ps
|
||||
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
|
||||
NAMES
|
||||
dfe13c68b3b8 nginx "nginx -g 'daemon off" 3 days ago Up 45 seconds 0.0.0.0:80->80/tcp, 443/tc
|
||||
p webserver
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
|
||||
NAMES
|
||||
dfe13c68b3b8 nginx "nginx -g 'daemon off" 3 days ago Up 45 seconds 0.0.0.0:80->80/tcp, 443/tc
|
||||
p webserver
|
||||
```
|
||||
|
||||
8. Stop or remove containers and images.
|
||||
8. Stop or remove containers and images.
|
||||
|
||||
The `nginx` webserver will continue to run in the container on that port until you stop and/or remove the container. If you want to stop the webserver, type: `docker stop webserver` and start it again with `docker start webserver`.
|
||||
The `nginx` webserver will continue to run in the container on that port
|
||||
until you stop and/or remove the container. If you want to stop the
|
||||
webserver, type: `docker stop webserver` and start it again with `docker
|
||||
start webserver`.
|
||||
|
||||
To stop and remove the running container with a single command, type: `docker rm -f webserver`. This will remove the container, but not the `nginx` image. You can list local images with `docker images`. You might want to keep some images around so that you don't have to pull them again from Docker Hub. To remove an image you no longer need, use `docker rmi <imageID>|<imageName>`. For example, `docker rmi nginx`.
|
||||
To stop and remove the running container with a single command, type:
|
||||
`docker rm -f webserver`. This will remove the container, but not the
|
||||
`nginx` image. You can list local images with `docker images`. You might
|
||||
want to keep some images around so that you don't have to pull them again
|
||||
from Docker Hub. To remove an image you no longer need, use `docker rmi
|
||||
<imageID>|<imageName>`. For example, `docker rmi nginx`.
|
||||
|
||||
**Want more example applications?** - For more example walkthroughs that include setting up services and databases with Docker Compose, see [Example Applications](examples.md).
|
||||
**Want more example applications?** - For more example walkthroughs that include
|
||||
setting up services and databases with Docker Compose, see
|
||||
[Example Applications](/docker-for-windows/examples.md).
|
||||
|
||||
## Set up tab completion in PowerShell
|
||||
|
||||
If you would like to have handy tab completion for Docker commands, you can install the <a href="https://github.com/samneirinck/posh-docker">posh-docker</a> PowerShell Module as follows.
|
||||
If you would like to have handy tab completion for Docker commands, you can
|
||||
install the [`posh-docker`](https://github.com/samneirinck/posh-docker)
|
||||
PowerShell Module as follows.
|
||||
|
||||
1. Start an "elevated" PowerShell (i.e., run it as administrator).
|
||||
1. Start an "elevated" PowerShell (i.e., run it as administrator).
|
||||
|
||||
To do this, search for PowerShell, right-click, and choose **Run as administrator**.<br>
|
||||
To do this, search for PowerShell, right-click, and choose
|
||||
**Run as administrator**.<br>
|
||||
|
||||

|
||||

|
||||
<br><br>
|
||||
When asked if you want to allow this app to make changes to your device, click **Yes**.
|
||||
When asked if you want to allow this app to make changes to your device,
|
||||
click **Yes**.
|
||||
|
||||
2. Set the [script execution policy](https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powershell.security/set-executionpolicy) to allow downloaded scripts signed by trusted publishers to run on your computer. To do so, type this at the PowerShell prompt.
|
||||
<br>
|
||||
`Set-ExecutionPolicy RemoteSigned`
|
||||
<br>
|
||||
To check that the policy is set properly, run `get-executionpolicy`, which should return `RemoteSigned`.
|
||||
<br>
|
||||
3. To enable auto-completion of commands for the current PowerShell only, type:
|
||||
2. Set the
|
||||
[script execution policy](https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powershell.security/set-executionpolicy)
|
||||
to allow downloaded scripts signed by trusted publishers to run on your
|
||||
computer. To do so, type this at the PowerShell prompt.
|
||||
|
||||
`Install-Module posh-docker`
|
||||
```none
|
||||
Set-ExecutionPolicy RemoteSigned
|
||||
```
|
||||
|
||||
4. To make tab completion persistent across all PowerShell sessions, add the command to a `$PROFILE` by typing these commands at the PowerShell prompt.
|
||||
To check that the policy is set properly, run `get-executionpolicy`, which
|
||||
should return `RemoteSigned`.
|
||||
|
||||
Install-Module -Scope CurrentUser posh-docker -Force
|
||||
Add-Content $PROFILE "`nInstall-Module posh-docker"
|
||||
3. To enable auto-completion of commands for the current PowerShell only, type:
|
||||
|
||||
This creates a `$PROFILE` if one does not already exist, and adds this line into the file:
|
||||
```none
|
||||
Install-Module posh-docker
|
||||
```
|
||||
|
||||
`Install-Module posh-docker`
|
||||
4. To make tab completion persistent across all PowerShell sessions, add the
|
||||
command to a `$PROFILE` by typing these commands at the PowerShell prompt.
|
||||
|
||||
<br>
|
||||
To check that the file was properly created, or simply edit it manually, type this in PowerShell:
|
||||
```none
|
||||
Install-Module -Scope CurrentUser posh-docker -Force
|
||||
Add-Content $PROFILE "`nInstall-Module posh-docker"
|
||||
```
|
||||
|
||||
`Notepad $PROFILE`
|
||||
This creates a `$PROFILE` if one does not already exist, and adds this line
|
||||
into the file:
|
||||
|
||||
```none
|
||||
Install-Module posh-docker
|
||||
```
|
||||
|
||||
To check that the file was properly created, or simply edit it manually,
|
||||
type this in PowerShell:
|
||||
|
||||
```none
|
||||
Notepad $PROFILE
|
||||
```
|
||||
|
||||
Now, when you press tab after typing the first few letters, Docker commands such
|
||||
as `start`, `stop`, `run`, and their options, along with container and image
|
||||
|
@ -358,14 +412,13 @@ always visible on the taskbar. To do this, drag-and-drop the whale icon. Or,
|
|||
right-click an empty porition of the taskbar, select Settings, and choose
|
||||
display options through taskbar settings for notifications.
|
||||
>
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
To get a popup menu with application options, right-click the whale:
|
||||
|
||||
|
||||

|
||||

|
||||
|
||||
The **Settings** dialogs provide options to allow Docker auto-start,
|
||||
automatically check for updates, share local drives with Docker containers,
|
||||
|
@ -374,25 +427,33 @@ perform a factory reset.
|
|||
|
||||
### General
|
||||
|
||||

|
||||

|
||||
|
||||
* **Start Docker when you log in** - Automatically start the Docker for Windows application upon Windows system login.
|
||||
* **Start Docker when you log in** - Automatically start the Docker for Windows
|
||||
application upon Windows system login.
|
||||
|
||||
* **Check for updates when the application starts** - Docker for Windows is set to automatically check for updates and notify you when an update is available.
|
||||
If an update is found, click **OK** to accept and install it (or cancel to keep
|
||||
the current version). Uncheck this option if you do not want notifications of
|
||||
version upgrades. You can still find out about updates manually by choosing
|
||||
**Check for Updates** from the menu.
|
||||
* **Check for updates when the application starts** - Docker for Windows is set
|
||||
to automatically check for updates and notify you when an update is available.
|
||||
If an update is found, click **OK** to accept and install it (or cancel to keep
|
||||
the current version). Uncheck this option if you do not want notifications of
|
||||
version upgrades. You can still find out about updates manually by choosing
|
||||
**Check for Updates** from the menu.
|
||||
|
||||
* **Send usage statistics** - You can set Docker for Windows to auto-send diagnostics, crash reports, and usage data. This information can help Docker improve the application and get more context for troubleshooting problems.
|
||||
* **Send usage statistics** - You can set Docker for Windows to auto-send
|
||||
diagnostics, crash reports, and usage data. This information can help Docker
|
||||
improve the application and get more context for troubleshooting problems.
|
||||
|
||||
Uncheck any of the options to opt out and prevent auto-send of data. Docker may prompt for more information in some cases, even with auto-send enabled. Also, you can enable or disable these auto-reporting settings with one click on the information popup when you first start Docker.
|
||||
Uncheck any of the options to opt out and prevent auto-send of data. Docker
|
||||
may prompt for more information in some cases, even with auto-send enabled.
|
||||
Also, you can enable or disable these auto-reporting settings with one click
|
||||
on the information popup when you first start Docker.
|
||||
|
||||

|
||||

|
||||
|
||||
### Shared Drives
|
||||
|
||||
Share your local drives (volumes) with Docker for Windows, so that they are available to your containers.
|
||||
Share your local drives (volumes) with Docker for Windows, so that they are
|
||||
available to your containers.
|
||||
|
||||

|
||||
|
||||
|
@ -405,31 +466,32 @@ 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.
|
||||
|
||||
>**Tip:** Shared drives are only required for volume mounting [Linux
|
||||
containers](#switch-between-windows-and-linux-containers), and not
|
||||
for Windows containers. For Linux containers, you need to share the drive where your project is located (i.e., where the Dockerfile and
|
||||
volume are located). Runtime errors such as file not found or cannot start
|
||||
service may indicate shared drives are needed. (See also [Volume mounting
|
||||
requires shared drives for Linux containers](troubleshoot.md#volume-mounting-requires-shared-drives-for-linux-containers).)
|
||||
> **Tip:** Shared drives are only required for volume mounting
|
||||
> [Linux containers](#switch-between-windows-and-linux-containers), and not for
|
||||
> Windows containers. For Linux containers, you need to share the drive where
|
||||
> your project is located (i.e., where the Dockerfile and volume are located).
|
||||
> Runtime errors such as file not found or cannot start service may indicate
|
||||
> shared drives are needed. (See also
|
||||
> [Volume mounting requires shared drives for Linux containers](troubleshoot.md#volume-mounting-requires-shared-drives-for-linux-containers).)
|
||||
|
||||
See also [Verify domain user has permissions for shared
|
||||
drives](troubleshoot.md#verify-domain-user-has-permissions-for-shared-drives-volumes)
|
||||
See also
|
||||
[Verify domain user has permissions for shared drives](troubleshoot.md#verify-domain-user-has-permissions-for-shared-drives-volumes)
|
||||
in Troubleshooting.
|
||||
|
||||
>**Note:** You can share local drives with your _containers_ but not with Docker
|
||||
Machine nodes. See [Can I share local drives and filesystem with my
|
||||
Docker Machine
|
||||
VMs?](faqs.md#can-i-share-local-drives-and-filesystem-with-my-docker-machine-vms) in
|
||||
the FAQs.
|
||||
> **Note:** You can share local drives with your _containers_ but not with
|
||||
> Docker Machine nodes. See
|
||||
> [Can I share local drives and filesystem with my Docker Machine VMs?](faqs.md#can-i-share-local-drives-and-filesystem-with-my-docker-machine-vms)
|
||||
> in the FAQs.
|
||||
|
||||
#### Firewall rules for shared drives
|
||||
|
||||
Shared drives require port 445 to be open between the host machine and the virtual
|
||||
machine that runs Linux containers.
|
||||
|
||||
>**Note**: In Docker for Windows Beta 29 and higher,
|
||||
Docker detects if port 445 is closed and shows the following message when you
|
||||
try to add a shared drive: 
|
||||
> **Note**: In Docker for Windows Beta 29 and higher,
|
||||
> Docker detects if port 445 is closed and shows the following message when you
|
||||
> try to add a shared drive:
|
||||
> 
|
||||
|
||||
|
||||
To share the drive, allow connections between the Windows host machine and the
|
||||
|
@ -439,7 +501,7 @@ to 10.0.75.1 port 445 (the Windows host) from 10.0.75.2 (the virtual machine).
|
|||
|
||||
### Advanced
|
||||
|
||||

|
||||

|
||||
|
||||
* **CPUs** - Change the number of processors assigned to the Linux VM.
|
||||
|
||||
|
@ -455,9 +517,15 @@ You can configure Docker for Windows networking to work on a virtual private net
|
|||
|
||||
* **DNS Server** - You can configure the DNS server to use dynamic or static IP addressing.
|
||||
|
||||

|
||||

|
||||
|
||||
>**Note:** Some users reported problems connecting to Docker Hub on Docker for Windows stable version. This would manifest as an error when trying to run `docker` commands that pull images from Docker Hub that are not already downloaded, such as a first time run of `docker run hello-world`. If you encounter this, reset the DNS server to use the Google DNS fixed address: `8.8.8.8`. For more information, see [Networking issues](troubleshoot.md#networking-issues) in Troubleshooting.
|
||||
> **Note:** Some users reported problems connecting to Docker Hub on Docker for
|
||||
> Windows stable version. This would manifest as an error when trying to run
|
||||
> `docker` commands that pull images from Docker Hub that are not already
|
||||
> downloaded, such as a first time run of `docker run hello-world`. If you
|
||||
> encounter this, reset the DNS server to use the Google DNS fixed address:
|
||||
> `8.8.8.8`. For more information, see
|
||||
> [Networking issues](troubleshoot.md#networking-issues) in Troubleshooting.
|
||||
|
||||
Note that updating these settings requires a reconfiguration and reboot of the Linux VM.
|
||||
|
||||
|
@ -466,7 +534,7 @@ Note that updating these settings requires a reconfiguration and reboot of the L
|
|||
Docker for Windows lets you configure HTTP/HTTPS Proxy Settings and automatically propagate these to Docker and to your containers.
|
||||
For example, if you set your proxy settings to `http://proxy.example.com`, Docker will use this proxy when pulling containers.
|
||||
|
||||

|
||||

|
||||
|
||||
When you start a container, you will see that your proxy settings propagate into the containers. For example:
|
||||
|
||||
|
@ -498,7 +566,7 @@ some of the commmon settings to make it easier to configure them.
|
|||
* [Custom registries](#custom-registries)
|
||||
* [Edit the daemon configuration file](#edit-the-daemon-configuration-file)
|
||||
|
||||

|
||||

|
||||
|
||||
#### Experimental mode
|
||||
|
||||
|
@ -543,7 +611,7 @@ Also starting with with Beta 34 and Stable 1.13.0, you can set up your own
|
|||
As an alternative to using [Docker Hub](https://hub.docker.com/) to store your
|
||||
public or private images or [Docker Trusted
|
||||
Registry](/datacenter/dtr/2.1/guides/index.md), you can use Docker to set up your
|
||||
own insecure [registry](/registry/introduction/). Add URLs for insecure
|
||||
own insecure [registry](/registry/introduction.md). Add URLs for insecure
|
||||
registries and registry mirrors on which to host your images. (See also, [How do
|
||||
I add custom CA certificates?](faqs.md#how-do-i-add-custom-ca-certificates) in
|
||||
the FAQs.)
|
||||
|
@ -551,20 +619,21 @@ the FAQs.)
|
|||
#### Edit the daemon configuration file
|
||||
|
||||
The **Advanced** daemon settings provide the original option to directly edit
|
||||
the JSON configuration file for the <a
|
||||
href="/engine/reference/commandline/dockerd/>daemon</a>.
|
||||
the JSON configuration file for the [daemon](/engine/reference/commandline/dockerd.md).
|
||||
|
||||

|
||||

|
||||
|
||||
For a full list of options on the Docker daemon, see [daemon](/engine/reference/commandline/dockerd/) in the Docker Engine command line reference.
|
||||
For a full list of options on the Docker daemon, see
|
||||
[daemon](/engine/reference/commandline/dockerd.md) in the Docker Engine command
|
||||
line reference.
|
||||
|
||||
In that topic, see also:
|
||||
|
||||
* [Daemon configuration file](/engine/reference/commandline/dockerd/#/daemon-configuration-file)
|
||||
* [Daemon configuration file](/engine/reference/commandline/dockerd.md#daemon-configuration-file)
|
||||
|
||||
* [Linux configuration file](/engine/reference/commandline/dockerd/#/linux-configuration-file)
|
||||
* [Linux configuration file](/engine/reference/commandline/dockerd.md#linux-configuration-file)
|
||||
|
||||
* [Windows configuration file](/engine/reference/commandline/dockerd/#/windows-configuration-file)
|
||||
* [Windows configuration file](/engine/reference/commandline/dockerd.md#windows-configuration-file)
|
||||
|
||||
Note that updating these settings requires a reconfiguration and reboot of the
|
||||
Linux VM.
|
||||
|
@ -579,31 +648,35 @@ Microsoft Developer Network has preliminary/draft information on Windows
|
|||
containers
|
||||
[here](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/about/about_overview).
|
||||
|
||||
For a full list of options on the Docker daemon, see [daemon](/engine/reference/commandline/dockerd/) in the Docker Engine command line reference.
|
||||
For a full list of options on the Docker daemon, see [daemon](/engine/reference/commandline/dockerd.md) in the Docker Engine command line reference.
|
||||
|
||||
In that topic, see also:
|
||||
|
||||
* [Daemon configuration file](/engine/reference/commandline/dockerd/#/daemon-configuration-file)
|
||||
* [Daemon configuration file](/engine/reference/commandline/dockerd.md#daemon-configuration-file)
|
||||
|
||||
* [Linux configuration file](/engine/reference/commandline/dockerd/#/linux-configuration-file)
|
||||
* [Linux configuration file](/engine/reference/commandline/dockerd.md#linux-configuration-file)
|
||||
|
||||
* [Windows configuration file](/engine/reference/commandline/dockerd/#/windows-configuration-file)
|
||||
* [Windows configuration file](/engine/reference/commandline/dockerd.md#windows-configuration-file)
|
||||
|
||||
#### Getting started with Windows containers
|
||||
|
||||
If you are interested in working with Windows containers, here are some guides to help you get started.
|
||||
|
||||
* [Build and Run Your First Windows Server Container (Blog Post)](https://blog.docker.com/2016/09/build-your-first-docker-windows-server-container/) gives a quick tour of how to build and run native Docker Windows containers on Windows 10 and Windows Server 2016 evaluation releases.
|
||||
* [Build and Run Your First Windows Server Container (Blog Post)](https://blog.docker.com/2016/09/build-your-first-docker-windows-server-container/)
|
||||
gives a quick tour of how to build and run native Docker Windows containers on
|
||||
Windows 10 and Windows Server 2016 evaluation releases.
|
||||
|
||||
* [Getting Started with Windows Containers (Lab)](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md)
|
||||
shows you how to use the
|
||||
[MusicStore](https://github.com/aspnet/MusicStore/blob/dev/README.md)
|
||||
application with Windows containers. The MusicStore is a standard .NET
|
||||
application and, [forked here to use
|
||||
containers](https://github.com/friism/MusicStore), is a good example of a
|
||||
multi-container application.
|
||||
shows you how to use the
|
||||
[MusicStore](https://github.com/aspnet/MusicStore/blob/dev/README.md)
|
||||
application with Windows containers. The MusicStore is a standard .NET
|
||||
application and,
|
||||
[forked here to use containers](https://github.com/friism/MusicStore), is a
|
||||
good example of a multi-container application.
|
||||
|
||||
>**Disclaimer:** This lab is still in work, and is based off of the blog, but you can test and leverage the example walkthroughs now, if you want to start experimenting. Please checking back as the lab evolves.
|
||||
> **Disclaimer:** This lab is still in work, and is based off of the blog, but
|
||||
> you can test and leverage the example walkthroughs now, if you want to start
|
||||
> experimenting. Please checking back as the lab evolves.
|
||||
|
||||
#### About the Docker Windows containers specific dialogs
|
||||
|
||||
|
@ -653,21 +726,31 @@ Select **Upload a diagnostic**.
|
|||
|
||||
This uploads (sends) the logs to Docker.
|
||||
|
||||

|
||||

|
||||
|
||||
To create a new issue directly on GitHub, open [Docker for Windows issues on GitHub](https://github.com/docker/for-win/issues) in your web browser and follow the instructions in the README. Click [New Issue](https://github.com/docker/for-win/issues/new) on that page to get a "create new issue" template prepopulated with sections for the ID and summary of your diagnostics, system and version details, description of expected and actual behavior, and steps to reproduce the issue.
|
||||
To create a new issue directly on GitHub, open
|
||||
[Docker for Windows issues on GitHub](https://github.com/docker/for-win/issues)
|
||||
in your web browser and follow the instructions in the README. Click
|
||||
[New Issue](https://github.com/docker/for-win/issues/new) on that page to get a
|
||||
"create new issue" template prepopulated with sections for the ID and summary of
|
||||
your diagnostics, system and version details, description of expected and actual
|
||||
behavior, and steps to reproduce the issue.
|
||||
|
||||

|
||||

|
||||
|
||||
### Reset
|
||||
|
||||

|
||||

|
||||
|
||||
* **Restart Docker** - Shuts down and restarts the Docker application.
|
||||
|
||||
* **Reset to Toolbox default machine content** - Imports containers and images from the existing Docker Toolbox machine named `default`. (This option is enabled only if you have Toolbox installed.) The VirtualBox VM will not be removed.
|
||||
* **Reset to Toolbox default machine content** - Imports containers and images
|
||||
from the existing Docker Toolbox machine named `default`. (This option is
|
||||
enabled only if you have Toolbox installed.) The VirtualBox VM will not be
|
||||
removed.
|
||||
|
||||
* **Reset to factory defaults** - Resets Docker to factory defaults. This is useful in cases where Docker stops working or becomes unresponsive.
|
||||
* **Reset to factory defaults** - Resets Docker to factory defaults. This is
|
||||
useful in cases where Docker stops working or becomes unresponsive.
|
||||
|
||||
<!-- ### Going back to Toolbox
|
||||
|
||||
|
@ -679,13 +762,17 @@ If you want to go back to using Docker Toolbox, you have to disable the Hyper-V
|
|||
|
||||
* Try out the [Getting Started with Docker](/engine/getstarted/index.md) tutorial.
|
||||
|
||||
* Follow up by working through the voting app example to learn how to [define and deploy a Docker stack](/engine/getstarted-voting-app/index.md) to a
|
||||
[swarm](/engine/swarm/index.md). This example shows how to deploy multiple
|
||||
containers as services and use new [Compose Version
|
||||
3](/compose/compose-file.md#version-3) features.
|
||||
* Follow up by working through the voting app example to learn how to
|
||||
[define and deploy a Docker stack](/engine/getstarted-voting-app/index.md) to a
|
||||
[swarm](/engine/swarm/index.md). This example shows how to deploy multiple
|
||||
containers as services and use new
|
||||
[Compose Version 3](/compose/compose-file.md#version-3) features.
|
||||
|
||||
* Dig in deeper with [Docker Labs](https://github.com/docker/labs/) example walkthroughs and source code.
|
||||
* Dig in deeper with [Docker Labs](https://github.com/docker/labs/) example
|
||||
walkthroughs and source code.
|
||||
|
||||
* For a summary of Docker command line interface (CLI) commands, see [Docker CLI Reference Guide](/engine/reference/index.md).
|
||||
* For a summary of Docker command line interface (CLI) commands, see the
|
||||
[Docker CLI Reference Guide](/engine/reference/docker.md).
|
||||
|
||||
* Check out the blog post [Introducing Docker 1.13.0](https://blog.docker.com/2017/01/whats-new-in-docker-1-13/).
|
||||
* Check out the blog post
|
||||
[Introducing Docker 1.13.0](https://blog.docker.com/2017/01/whats-new-in-docker-1-13/).
|
||||
|
|
|
@ -8,30 +8,39 @@ title: Overview of Docker Hub
|
|||
|
||||
[Docker Hub](https://hub.docker.com) is a cloud-based registry service which
|
||||
allows you to link to code repositories, build your images and test them, stores
|
||||
manually pushed images, and links to [Docker Cloud](/docker-cloud/) so you can deploy images to your
|
||||
hosts. It provides a centralized resource for container image discovery,
|
||||
distribution and change management, [user and team collaboration](orgs.md), and
|
||||
workflow automation throughout the development pipeline.
|
||||
manually pushed images, and links to [Docker Cloud](/docker-cloud/) so you can
|
||||
deploy images to your hosts. It provides a centralized resource for container
|
||||
image discovery, distribution and change management,
|
||||
[user and team collaboration](/docker-hub/orgs.md), and workflow automation
|
||||
throughout the development pipeline.
|
||||
|
||||
Log in to Docker Hub and Docker Cloud using [your free Docker ID](accounts.md).
|
||||
Log in to Docker Hub and Docker Cloud using
|
||||
[your free Docker ID](/docker-hub/accounts.md).
|
||||
|
||||

|
||||

|
||||
|
||||
Docker Hub provides the following major features:
|
||||
|
||||
* [Image Repositories](repos.md): Find and pull images from community and official libraries, and manage, push to, and pull from private image libraries to which you have access.
|
||||
* [Automated Builds](builds.md): Automatically create new images when you make changes to a source code repository.
|
||||
* [Webhooks](webhooks.md): A feature of Automated Builds, Webhooks let you trigger actions after a successful push to a repository.
|
||||
* [Organizations](orgs.md): Create work groups to manage access to image repositories.
|
||||
* GitHub and Bitbucket Integration: Add the Hub and your Docker Images to your current workflows.
|
||||
* [Image Repositories](/docker-hub/repos.md): Find and pull images from
|
||||
community and official libraries, and manage, push to, and pull from private
|
||||
image libraries to which you have access.
|
||||
* [Automated Builds](/docker-hub/builds.md): Automatically create new images
|
||||
when you make changes to a source code repository.
|
||||
* [Webhooks](/docker-hub/webhooks.md): A feature of Automated Builds, Webhooks
|
||||
let you trigger actions after a successful push to a repository.
|
||||
* [Organizations](/docker-hub/orgs.md): Create work groups to manage access to
|
||||
image repositories.
|
||||
* GitHub and Bitbucket Integration: Add the Hub and your Docker Images to your
|
||||
current workflows.
|
||||
|
||||
|
||||
## Create a Docker ID
|
||||
|
||||
To explore Docker Hub, you'll need to create an account by following the
|
||||
directions in [Your Docker ID](accounts.md).
|
||||
directions in [Your Docker ID](/docker-hub/accounts.md).
|
||||
|
||||
> **Note**: You can search for and pull Docker images from Hub without logging in, however to push images you must log in.
|
||||
> **Note**: You can search for and pull Docker images from Hub without logging
|
||||
> in, however to push images you must log in.
|
||||
|
||||
Your Docker ID gives you one private Docker Hub repository for free. If you need
|
||||
more private repositories, you can upgrade from your free account to a paid
|
||||
|
@ -57,7 +66,7 @@ the repositories you can access and their status, view your "Dashboard" page on
|
|||
[Docker Hub](https://hub.docker.com).
|
||||
|
||||
You can find more information on working with Docker images in the
|
||||
[Docker userguide](/engine/tutorials/dockerimages/).
|
||||
[Docker userguide](/engine/getstarted/step_four.md).
|
||||
|
||||
### Use Official Repositories
|
||||
|
||||
|
@ -70,7 +79,10 @@ to building your applications and services.
|
|||
With Official Repositories you know you're using an optimized and
|
||||
up-to-date image that was built by experts to power your applications.
|
||||
|
||||
> **Note:** If you would like to contribute an Official Repository for your organization or product, see the documentation on [Official Repositories on Docker Hub](official_repos.md) for more information.
|
||||
> **Note:** If you would like to contribute an Official Repository for your
|
||||
> organization or product, see the documentation on
|
||||
> [Official Repositories on Docker Hub](/docker-hub/official_repos.md) for more
|
||||
> information.
|
||||
|
||||
|
||||
## Work with Docker Hub image repositories
|
||||
|
@ -80,13 +92,19 @@ images.
|
|||
|
||||
You can configure Docker Hub repositories in two ways:
|
||||
|
||||
* [Repositories](repos.md), which allow you to push images from a local Docker daemon to Docker Hub, and
|
||||
* [Automated Builds](builds.md), which link to a source code repository and trigger an image rebuild process on Docker Hub when changes are detected in the source code.
|
||||
* [Repositories](/docker-hub/repos.md), which allow you to push images from a
|
||||
local Docker daemon to Docker Hub, and
|
||||
* [Automated Builds](/docker-hub/builds.md), which link to a source code
|
||||
repository and trigger an image rebuild process on Docker Hub when changes are
|
||||
detected in the source code.
|
||||
|
||||
You can create public repositories which can be accessed by any other Hub user,
|
||||
or you can create private repositories with limited access you control.
|
||||
|
||||
### Docker commands and Docker Hub
|
||||
|
||||
Docker itself provides access to Docker Hub services via the [`docker search`](/engine/reference/commandline/search),
|
||||
[`pull`](/engine/reference/commandline/pull), [`login`](/engine/reference/commandline/login), and [`push`](/engine/reference/commandline/push) commands.
|
||||
Docker itself provides access to Docker Hub services via the
|
||||
[`docker search`](/engine/reference/commandline/search.md),
|
||||
[`pull`](/engine/reference/commandline/pull.md),
|
||||
[`login`](/engine/reference/commandline/login.md), and
|
||||
[`push`](/engine/reference/commandline/push.md) commands.
|
||||
|
|
|
@ -12,10 +12,10 @@ organization account.
|
|||
|
||||
Alternatively, if the source code for your Docker image is on GitHub or
|
||||
Bitbucket, you can use an "Automated build" repository, which is built by the
|
||||
Docker Hub services. See the [automated builds documentation](builds.md) to read
|
||||
Docker Hub services. See the [automated builds documentation](/docker-hub/builds.md) to read
|
||||
about the extra functionality provided by those services.
|
||||
|
||||

|
||||

|
||||
|
||||
## Searching for images
|
||||
|
||||
|
@ -59,7 +59,7 @@ Image sizes are the cumulative space taken up by the image and all its parent
|
|||
images. This is also the disk space used by the contents of the Tar file created
|
||||
when you `docker save` an image.
|
||||
|
||||

|
||||

|
||||
|
||||
## Creating a new repository on Docker Hub
|
||||
|
||||
|
@ -68,7 +68,7 @@ Docker Hub." screen, from which you can click directly into "Create Repository".
|
|||
You can also use the "Create ▼" menu to "Create Repository".
|
||||
|
||||
When creating a new repository, you can choose to put it in your Docker ID
|
||||
namespace, or that of any [organization](orgs.md) that you are in the "Owners"
|
||||
namespace, or that of any [organization](/docker-hub/orgs.md) that you are in the "Owners"
|
||||
team. The Repository Name will need to be unique in that namespace, can be two
|
||||
to 255 characters, and can only contain lowercase letters, numbers or `-` and
|
||||
`_`.
|
||||
|
@ -95,7 +95,7 @@ You can name your local images either when you build it, using
|
|||
by re-tagging an existing local image `docker tag <existing-image> <hub-user>/<repo-name>[:<tag>]`,
|
||||
or by using `docker commit <exiting-container> <hub-user>/<repo-name>[:<tag>]` to commit
|
||||
changes.
|
||||
See [Working with Docker images](/engine/tutorials/dockerimages/) for a detailed description.
|
||||
See [Working with Docker images](/engine/getstarted/step_four.md) for a detailed description.
|
||||
|
||||
Now you can push this repository to the registry designated by its name or tag.
|
||||
|
||||
|
@ -130,7 +130,7 @@ changing its status from private to public.
|
|||
|
||||
You can also assign more granular collaborator rights ("Read", "Write", or
|
||||
"Admin") on Docker Hub by using organizations and teams. For more information
|
||||
see the [organizations documentation](orgs.md).
|
||||
see the [organizations documentation](/docker-hub/orgs.md).
|
||||
|
||||
## Private repositories
|
||||
|
||||
|
@ -158,8 +158,8 @@ It is possible to give access to a private repository to those whom you
|
|||
designate (i.e., collaborators) from its "Settings" page. From there, you can
|
||||
also switch repository status (*public* to *private*, or vice-versa). You will
|
||||
need to have an available private repository slot open before you can do such a
|
||||
switch. If you don't have any available, you can always upgrade your [Docker
|
||||
Hub](https://hub.docker.com/account/billing-plans/) plan.
|
||||
switch. If you don't have any available, you can always upgrade your
|
||||
[Docker Hub](https://hub.docker.com/account/billing-plans/) plan.
|
||||
|
||||
## Webhooks
|
||||
|
||||
|
|
|
@ -43,9 +43,9 @@ to Docker services.
|
|||
|
||||
For Docker Cloud, Hub, and Store, log in using the web interface.
|
||||
|
||||

|
||||

|
||||
|
||||
You can also log in using the `docker login` command. (You can read more about `docker login` [here](../engine/reference/commandline/login/).)
|
||||
You can also log in using the `docker login` command. (You can read more about `docker login` [here](/engine/reference/commandline/login.md).)
|
||||
|
||||
> **Warning:** When you use the `docker login` command, your credentials are
|
||||
stored in your home directory in `.docker/config.json`. The password is base64
|
||||
|
@ -54,4 +54,4 @@ encoded in this file. If you require secure storage for this password, use the
|
|||
|
||||
## The Accounts API
|
||||
|
||||
Once you create and verify your Docker ID, you can also update it using the [Docker Accounts API](../engine/reference/api/docker_io_accounts_api/).
|
||||
Once you create and verify your Docker ID, you can also update it using the [Docker Accounts API](/docker-id/api-reference.md).
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
title: Getting started with the Engine API
|
||||
---
|
||||
|
||||
To try out the Docker Engine API in development, [you first need to install Docker](https://docs.docker.com/engine/installation/).
|
||||
To try out the Docker Engine API in development, [you first need to install Docker](/engine/installation.md).
|
||||
|
||||
Next, you need to install an SDK for the language you are using. There are official ones available for Python and Go, and a number of community maintained libraries for other languages. [Head to the SDKs page to find and install them.](sdks.md)
|
||||
|
||||
|
|
|
@ -13,4 +13,4 @@ This section contains the following:
|
|||
* [Dockerizing a CouchDB service](couchdb_data_volumes.md)
|
||||
* [Dockerizing a Redis service](running_redis_service.md)
|
||||
* [Dockerizing an apt-cacher-ng service](apt-cacher-ng.md)
|
||||
* [Dockerizing applications: A 'Hello world'](../tutorials/dockerizing.md)
|
||||
* [Dockerizing applications: A 'Hello world'](/engine/getstarted/step_one.md)
|
||||
|
|
|
@ -66,7 +66,7 @@ worker - virtualbox Running tcp://192.168.99.101:2376 v1
|
|||
|
||||
You now have two "Dockerized" machines, each running
|
||||
Docker Engine, accessible through the
|
||||
[Docker CLI](/engine/reference/commandline.md), and available
|
||||
[Docker CLI](/engine/reference/commandline/docker.md), and available
|
||||
to become swarm nodes.
|
||||
|
||||
You can also get the IP address of a particular machine:
|
||||
|
|
|
@ -32,7 +32,7 @@ deployed.
|
|||

|
||||
|
||||
This surfaces some configuration and characteristics from
|
||||
[docker-stack.yml](index#docker-stackyml), and you can see those strategies in
|
||||
[docker-stack.yml](index.md#docker-stackyml), and you can see those strategies in
|
||||
action here. For example:
|
||||
|
||||
* We have two nodes running: a `manager` and a `worker`.
|
||||
|
|
|
@ -46,7 +46,7 @@ Depending on your interest, the Docker documentation contains a wealth of inform
|
|||
|
||||
<tr>
|
||||
<td class="tg-031e">How to set up an automated build on Docker Hub</td>
|
||||
<td class="tg-031e"><a href="https://docs.docker.com/docker-hub/">Docker Hub documentation</a></td>
|
||||
<td class="tg-031e"><a href="/docker-hub/">Docker Hub documentation</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tg-031e">How to run a multi-container application with Compose</td>
|
||||
|
|
|
@ -99,9 +99,9 @@ instructions for enabling and configuring AppArmor or SELinux.
|
|||
|
||||
### Next steps
|
||||
|
||||
- Continue to [Post-installation steps for Linux](linux-postinstall.md)
|
||||
- Continue to [Post-installation steps for Linux](/engine/installation/linux/linux-postinstall.md)
|
||||
|
||||
- Continue with the [User Guide](../../userguide/index.md).
|
||||
- Continue with the [User Guide](/engine/userguide/index.md).
|
||||
|
||||
## Install client binaries on macOS
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ instructions are available for the following:
|
|||
* [Fedora](linux/fedora.md)
|
||||
* [Oracle Linux](linux/oracle.md)
|
||||
* [Red Hat Enterprise Linux](linux/rhel.md)
|
||||
* [openSUSE and SUSE Linux Enterprise](linux/SUSE.md)
|
||||
* [openSUSE and SUSE Linux Enterprise](linux/suse.md)
|
||||
* [Ubuntu](linux/ubuntulinux.md)
|
||||
* [Other Linux distributions](linux/other.md)
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
|
|||
|
||||
> **Warning**: The `docker` group grants privileges equivalent to the `root`
|
||||
> user. For details on how this impacts security in your system, see
|
||||
> [*Docker Daemon Attack Surface*](../../security/security.md#docker-daemon-attack-surface).
|
||||
> [*Docker Daemon Attack Surface*](/engine/security/security.md#docker-daemon-attack-surface).
|
||||
|
||||
To create the `docker` group and add your user:
|
||||
|
||||
|
@ -73,7 +73,7 @@ $ sudo systemctl disable docker
|
|||
|
||||
If you need to add an HTTP Proxy, set a different directory or partition for the
|
||||
Docker runtime files, or make other customizations, see
|
||||
[customize your systemd Docker daemon options](../../admin/systemd.md).
|
||||
[customize your systemd Docker daemon options](/engine/admin/systemd.md).
|
||||
|
||||
### `upstart`
|
||||
|
||||
|
@ -93,9 +93,9 @@ $ sudo chkconfig docker on
|
|||
## Use a different storage engine
|
||||
|
||||
For information about the different storage engines, see
|
||||
[Storage drivers](../userguide/storagedriver/index.md). The default storage
|
||||
engine and the list of supported storage engines depend on your host's
|
||||
Linux distribution and available kernel drivers.
|
||||
[Storage drivers](/engine/userguide/storagedriver/imagesandcontainers.md).
|
||||
The default storage engine and the list of supported storage engines depend on
|
||||
your host's Linux distribution and available kernel drivers.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
|
@ -403,4 +403,4 @@ use the `btrfs` storage engine on Oracle Linux 7.
|
|||
|
||||
## Next steps
|
||||
|
||||
- Continue with the [User Guide](../../userguide/index.md).
|
||||
- Continue with the [User Guide](/engine/userguide/index.md).
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
datafolder: engine-cli
|
||||
datafile: docker_checkpoint
|
||||
title: docker checkpoint
|
||||
---
|
||||
<!--
|
||||
Sorry, but the contents of this page are automatically generated from
|
||||
Docker's source code. If you want to suggest a change to the text that appears
|
||||
here, you'll need to find the string by searching this repo:
|
||||
|
||||
https://www.github.com/docker/docker
|
||||
-->
|
||||
{% include cli.md %}
|
|
@ -142,7 +142,7 @@ Registry credentials are managed by **docker-login(1)**.
|
|||
|
||||
Docker uses the `https://` protocol to communicate with a registry, unless the
|
||||
registry is allowed to be accessed over an insecure connection. Refer to the
|
||||
[insecure registries](https://docs.docker.com/engine/reference/commandline/daemon/#insecure-registries)
|
||||
[insecure registries](/engine/reference/commandline/dockerd.md#insecure-registries)
|
||||
section in the online documentation for more information.
|
||||
|
||||
|
||||
|
|
|
@ -24,13 +24,13 @@ This article covers the following swarm administration tasks:
|
|||
* [Recovering from disaster](#recover-from-disaster)
|
||||
* [Forcing the swarm to rebalance](#forcing-the-swarm-to-rebalance)
|
||||
|
||||
Refer to [How nodes work](how-swarm-mode-works/nodes.md)
|
||||
Refer to [How nodes work](/engine/swarm/how-swarm-mode-works/nodes.md)
|
||||
for a brief overview of Docker Swarm mode and the difference between manager and
|
||||
worker nodes.
|
||||
|
||||
## Operating manager nodes in a swarm
|
||||
|
||||
Swarm manager nodes use the [Raft Consensus Algorithm](raft.md) to manage the
|
||||
Swarm manager nodes use the [Raft Consensus Algorithm](/engine/swarm/raft.md) to manage the
|
||||
swarm state. You only need to understand some general concepts of Raft in
|
||||
order to manage a swarm.
|
||||
|
||||
|
@ -67,7 +67,7 @@ troubleshooting steps if you do lose the quorum of managers.
|
|||
|
||||
When initiating a swarm, you have to specify the `--advertise-addr` flag to
|
||||
advertise your address to other manager nodes in the swarm. For more
|
||||
information, see [Run Docker Engine in swarm mode](swarm-mode.md#configure-the-advertise-address). Because manager nodes are
|
||||
information, see [Run Docker Engine in swarm mode](/engine/swarm/swarm-mode.md#configure-the-advertise-address). Because manager nodes are
|
||||
meant to be a stable component of the infrastructure, you should use a *fixed
|
||||
IP address* for the advertise address to prevent the swarm from becoming
|
||||
unstable on machine reboot.
|
||||
|
@ -112,7 +112,7 @@ swarm will become unavailable until you reboot the node or restart with
|
|||
`--force-new-cluster`.
|
||||
|
||||
You manage swarm membership with the `docker swarm` and `docker node`
|
||||
subsystems. Refer to [Add nodes to a swarm](join-nodes.md) for more information
|
||||
subsystems. Refer to [Add nodes to a swarm](/engine/swarm/join-nodes.md) for more information
|
||||
on how to add worker nodes and promote a worker node to be a manager.
|
||||
|
||||
## Distribute manager nodes
|
||||
|
@ -170,7 +170,8 @@ directory of one of the manager nodes to restore to a new swarm.
|
|||
## Monitor swarm health
|
||||
|
||||
You can monitor the health of manager nodes by querying the docker `nodes` API
|
||||
in JSON format through the `/nodes` HTTP endpoint. Refer to the [nodes API documentation](../reference/api/docker_remote_api_v1.24.md#36-nodes)
|
||||
in JSON format through the `/nodes` HTTP endpoint. Refer to the
|
||||
[nodes API documentation](/engine/reference/api/docker_remote_api_v1.24.md#36-nodes)
|
||||
for more information.
|
||||
|
||||
From the command line, run `docker node inspect <id-node>` to query the nodes.
|
||||
|
@ -229,7 +230,7 @@ To cleanly re-join a manager node to a cluster:
|
|||
3. Re-join the node to the swarm with a fresh state using `docker swarm join`.
|
||||
|
||||
For more information on joining a manager node to a swarm, refer to
|
||||
[Join nodes to a swarm](join-nodes.md).
|
||||
[Join nodes to a swarm](/engine/swarm/join-nodes.md).
|
||||
|
||||
## Force remove a node
|
||||
|
||||
|
@ -315,7 +316,7 @@ In Docker 1.13 and higher, you can use the `--force` or `-f` flag with the
|
|||
`docker service update` command to force the service to redistribute its tasks
|
||||
across the available worker nodes. This will cause the service tasks to restart.
|
||||
Client applications may be disrupted. If you have configured it, your service
|
||||
will use a [rolling update](swarm-tutorial.md#rolling-update).
|
||||
will use a [rolling update](/engine/swarm/swarm-tutorial.md#rolling-update).
|
||||
|
||||
If you use an earlier version and you want to achieve an even balance of load
|
||||
across workers and don't mind disrupting running tasks, you can force your swarm
|
||||
|
@ -331,5 +332,5 @@ down to the original scale. You can use `docker service ps` to assess the curren
|
|||
balance of your service across nodes.
|
||||
|
||||
See also
|
||||
[`docker service scale`](../reference/commandline/service_scale.md) and
|
||||
[`docker service ps`](../reference/commandline/service_ps.md).
|
||||
[`docker service scale`](/engine/reference/commandline/service_scale.md) and
|
||||
[`docker service ps`](/engine/reference/commandline/service_ps.md).
|
||||
|
|
|
@ -14,9 +14,11 @@ Engine 1.12 or later in swarm mode.
|
|||
There are two types of nodes: [**managers**](#manager-nodes) and
|
||||
[**workers**](#worker-nodes).
|
||||
|
||||

|
||||

|
||||
|
||||
If you haven't already, read through the [swarm mode overview](../index.md) and [key concepts](../key-concepts.md).
|
||||
If you haven't already, read through the
|
||||
[swarm mode overview](/engine/swarm/index.md) and
|
||||
[key concepts](/engine/swarm/key-concepts.md).
|
||||
|
||||
## Manager nodes
|
||||
|
||||
|
@ -24,7 +26,7 @@ Manager nodes handle cluster management tasks:
|
|||
|
||||
* maintaining cluster state
|
||||
* scheduling services
|
||||
* serving swarm mode [HTTP API endpoints](../../reference/api/index.md)
|
||||
* serving swarm mode [HTTP API endpoints](/engine/api/index.md)
|
||||
|
||||
Using a [Raft](https://raft.github.io/raft.pdf) implementation, the managers
|
||||
maintain a consistent internal state of the entire swarm and all the services
|
||||
|
@ -64,17 +66,17 @@ gracefully stops tasks on nodes in `Drain` mode and schedules the tasks on an
|
|||
`Active` node. The scheduler does not assign new tasks to nodes with `Drain`
|
||||
availability.
|
||||
|
||||
Refer to the [`docker node update`](../../reference/commandline/node_update.md)
|
||||
Refer to the [`docker node update`](/engine/reference/commandline/node_update.md)
|
||||
command line reference to see how to change node availability.
|
||||
|
||||
## Changing roles
|
||||
|
||||
You can promote a worker node to be a manager by running `docker node promote`.
|
||||
For example, you may want to promote a worker node when you
|
||||
take a manager node offline for maintenance. See [node promote](../../reference/commandline/node_promote.md).
|
||||
take a manager node offline for maintenance. See [node promote](/engine/reference/commandline/node_promote.md).
|
||||
|
||||
You can also demote a manager node to a worker node. See
|
||||
[node demote](../../reference/commandline/node_demote.md).
|
||||
[node demote](/engine/reference/commandline/node_demote.md).
|
||||
|
||||
|
||||
## Learn More
|
||||
|
|
|
@ -222,5 +222,5 @@ node-2
|
|||
## Learn More
|
||||
|
||||
* [Swarm administration guide](admin_guide.md)
|
||||
* [Docker Engine command line reference](../reference/commandline/index.md)
|
||||
* [Docker Engine command line reference](/engine/reference/commandline/docker.md)
|
||||
* [Swarm mode tutorial](swarm-tutorial/index.md)
|
||||
|
|
|
@ -40,7 +40,8 @@ $ docker network create \
|
|||
By default nodes in the swarm encrypt traffic between themselves and other
|
||||
nodes. The optional `--opt encrypted` flag enables an additional layer of
|
||||
encryption in the overlay driver for vxlan traffic between containers on
|
||||
different nodes. For more information, refer to [Docker swarm mode overlay network security model](../userguide/networking/overlay-security-model.md).
|
||||
different nodes. For more information, refer to
|
||||
[Docker swarm mode overlay network security model](/engine/userguide/networking/overlay-security-model.md).
|
||||
|
||||
The `--subnet` flag specifies the subnet for use with the overlay network. When
|
||||
you don't specify a subnet, the swarm manager automatically chooses a subnet and
|
||||
|
@ -296,5 +297,5 @@ is not the right tool to confirm VIP connectivity.
|
|||
|
||||
* [Deploy services to a swarm](services.md)
|
||||
* [Swarm administration guide](admin_guide.md)
|
||||
* [Docker Engine command line reference](../reference/commandline/index.md)
|
||||
* [Docker Engine command line reference](/engine/reference/commandline/docker.md)
|
||||
* [Swarm mode tutorial](swarm-tutorial/index.md)
|
||||
|
|
|
@ -159,11 +159,12 @@ updated. This feature is particularly important if you do use often-changing tag
|
|||
such as `latest`, because it ensures that all service tasks use the same version
|
||||
of the image.
|
||||
|
||||
> **Note**: If [content trust](security/trust/content_trust.md) is enabled, the
|
||||
> client actually resolves the image's tag to a digest before contacting the
|
||||
> swarm manager, in order to verify that the image is signed. Thus, if you use
|
||||
> content trust, the swarm manager receives the request pre-resolved. In this
|
||||
> case, if the client cannot resolve the image to a digest, the request fails.
|
||||
> **Note**: If [content trust](/engine/security/trust/content_trust.md) is
|
||||
> enabled, the client actually resolves the image's tag to a digest before
|
||||
> contacting the swarm manager, in order to verify that the image is signed.
|
||||
> Thus, if you use content trust, the swarm manager receives the request
|
||||
> pre-resolved. In this case, if the client cannot resolve the image to a
|
||||
> digest, the request fails.
|
||||
{: id="image_resolution_with_trust" }
|
||||
|
||||
If the manager is not able to resolve the tag to a digest, each worker
|
||||
|
@ -288,7 +289,7 @@ $ docker service create \
|
|||
Service constraints let you set criteria for a node to meet before the scheduler
|
||||
deploys a service to the node. You can apply constraints to the
|
||||
service based upon node attributes and metadata or engine metadata. For more
|
||||
information on constraints, refer to the `docker service create` [CLI reference](../reference/commandline/service_create.md).
|
||||
information on constraints, refer to the `docker service create` [CLI reference](/engine/reference/commandline/service_create.md).
|
||||
|
||||
### Reserving memory or number of CPUs for a service
|
||||
|
||||
|
@ -594,5 +595,5 @@ paths from the host is unnecessary. The main risks include the following:<br />
|
|||
## Learn More
|
||||
|
||||
* [Swarm administration guide](admin_guide.md)
|
||||
* [Docker Engine command line reference](../reference/commandline/index.md)
|
||||
* [Docker Engine command line reference](/engine/reference/commandline/docker.md)
|
||||
* [Swarm mode tutorial](swarm-tutorial/index.md)
|
||||
|
|
|
@ -16,8 +16,9 @@ To run through this tutorial, you will need:
|
|||
|
||||
1. A Docker Engine of version 1.13.0 or later, running in [swarm
|
||||
mode](/engine/swarm/swarm-mode.md). If you're not familiar with swarm mode,
|
||||
you might want to read [Swarm mode key concepts ](key-concepts.md) and
|
||||
[How services work](how-swarm-mode- works/services.md).
|
||||
you might want to read
|
||||
[Swarm mode key concepts ](/engine/swarm/how-swarm-mode-works/key-concepts.md)
|
||||
and [How services work](/engine/swarm/how-swarm-mode-works/services.md).
|
||||
|
||||
> **Note:** If you're trying things out on a local development environment,
|
||||
> you can put your engine into swarm mode with `docker swarm init`.
|
||||
|
@ -64,10 +65,10 @@ a throwaway registry, which you can discard afterward.
|
|||
|
||||
## Create the example application
|
||||
|
||||
The app used in this guide is based on the hit counter app in the [Get started
|
||||
with Docker Compose](/compose/gettingstarted.md) guide. It consists of a Python
|
||||
app which maintains a counter in a Redis instance and increments the counter
|
||||
whenever you visit it.
|
||||
The app used in this guide is based on the hit counter app in the
|
||||
[Get started with Docker Compose](/compose/gettingstarted.md) guide. It consists
|
||||
of a Python app which maintains a counter in a Redis instance and increments the
|
||||
counter whenever you visit it.
|
||||
|
||||
1. Create a directory for the project:
|
||||
|
||||
|
@ -113,7 +114,7 @@ whenever you visit it.
|
|||
|
||||
5. Create a file called `docker-compose.yml` and paste this in:
|
||||
|
||||
```yaml
|
||||
```none
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
@ -142,7 +143,7 @@ whenever you visit it.
|
|||
Compose doesn't take advantage of swarm mode, and deploys everything to a
|
||||
single node. You can safely ignore this.
|
||||
|
||||
```bash
|
||||
```none
|
||||
$ docker-compose up -d
|
||||
|
||||
WARNING: The Docker Engine you're using is running in swarm mode.
|
||||
|
|
|
@ -8,11 +8,12 @@ redirect_from:
|
|||
title: Manage data in containers
|
||||
---
|
||||
|
||||
So far you've been introduced to some [basic Docker
|
||||
concepts](usingdocker.md), seen how to work with [Docker
|
||||
images](dockerimages.md) as well as learned about [how to network your containers](networkingcontainers.md). In this
|
||||
section you're going to learn how you can manage data inside and between your
|
||||
Docker containers.
|
||||
So far you've been introduced to some
|
||||
[basic Docker concepts](/engine/getstarted/step_three.md), seen how to work with
|
||||
[Docker images](/engine/getstarted/step_four.md), and learned about
|
||||
[how to network your containers](/engine/tutorials/networkingcontainers.md).
|
||||
In this section you're going to learn how you can manage data inside and between
|
||||
your Docker containers.
|
||||
|
||||
You're going to look at the two primary ways you can manage data with
|
||||
Docker Engine.
|
||||
|
@ -23,7 +24,8 @@ Docker Engine.
|
|||
## Data volumes
|
||||
|
||||
A *data volume* is a specially-designated directory within one or more
|
||||
containers that bypasses the [*Union File System*](../reference/glossary.md#union-file-system). Data volumes provide several useful features for persistent or shared data:
|
||||
containers that bypasses the [*Union File System*](/engine/reference/glossary.md#union-file-system).
|
||||
Data volumes provide several useful features for persistent or shared data:
|
||||
|
||||
- Volumes are initialized when a container is created. If the container's
|
||||
base image contains data at the specified mount point, that existing data is
|
||||
|
@ -162,7 +164,7 @@ instruction does not support passing a `host-dir`, because built images
|
|||
### Mount a shared-storage volume as a data volume
|
||||
|
||||
In addition to mounting a host directory in your container, some Docker
|
||||
[volume plugins](../extend/plugins_volume.md) allow you to
|
||||
[volume plugins](/engine/extend/plugins_volume.md) allow you to
|
||||
provision and mount shared storage, such as iSCSI, NFS, or FC.
|
||||
|
||||
A benefit of using shared volumes is that they are host-independent. This
|
||||
|
@ -204,7 +206,7 @@ $ docker run -d -P \
|
|||
```
|
||||
|
||||
A list of available plugins, including volume plugins, is available
|
||||
[here](../extend/legacy_plugins.md).
|
||||
[here](/engine/extend/legacy_plugins.md).
|
||||
|
||||
### Volume labels
|
||||
|
||||
|
@ -275,7 +277,7 @@ from the `dbstore` container are visible.
|
|||
|
||||
You can use multiple `--volumes-from` parameters to combine data volumes from
|
||||
several containers. To find detailed information about `--volumes-from` see the
|
||||
[Mount volumes from container](../reference/commandline/run.md#mount-volumes-from-container-volumes-from)
|
||||
[Mount volumes from container](/engine/reference/commandline/run.md#mount-volumes-from-container-volumes-from)
|
||||
in the `run` command reference.
|
||||
|
||||
You can also extend the chain by mounting the volume that came from the
|
||||
|
@ -366,4 +368,4 @@ combine Docker with the services available on
|
|||
[Docker Hub](https://hub.docker.com) including Automated Builds and private
|
||||
repositories.
|
||||
|
||||
Go to [Store images in Docker Hub](dockerrepos.md).
|
||||
Go to [Store images in Docker Hub](/engine/getstarted/step_six.md).
|
||||
|
|
|
@ -8,9 +8,9 @@ title: Engine tutorials
|
|||
|
||||
# Learn by example
|
||||
|
||||
* [Hello world in a container](dockerizing.md)
|
||||
* [Run a simple application](usingdocker.md)
|
||||
* [Build your own images](dockerimages.md)
|
||||
* [Network containers](networkingcontainers.md)
|
||||
* [Manage data in containers](dockervolumes.md)
|
||||
* [Store images on Docker Hub](dockerrepos.md)
|
||||
* [Hello world in a container](/engine/getstarted/step_one.md)
|
||||
* [Run a simple application](/engine/getstarted/step_three.md)
|
||||
* [Build your own images](/engine/getstarted/step_four.md)
|
||||
* [Network containers](/engine/tutorials/networkingcontainers.md)
|
||||
* [Manage data in containers](/engine/tutorials/dockervolumes.md)
|
||||
* [Store images on Docker Hub](/engine/getstarted/step_six.md)
|
||||
|
|
|
@ -10,12 +10,12 @@ This guide helps users learn how to use Docker Engine.
|
|||
|
||||
## Learn by example
|
||||
|
||||
- [Hello world in a container](../tutorials/dockerizing.md)
|
||||
- [Build your own images](../tutorials/dockerimages.md)
|
||||
- [Network containers](../tutorials/networkingcontainers.md)
|
||||
- [Run a simple application](../tutorials/usingdocker.md)
|
||||
- [Manage data in containers](../tutorials/dockervolumes.md)
|
||||
- [Store images on Docker Hub](../tutorials/dockerrepos.md)
|
||||
- [Hello world in a container](/engine/getstarted/step_one.md)
|
||||
- [Build your own images](/engine/getstarted/step_four.md)
|
||||
- [Network containers](/engine/tutorials/networkingcontainers.md)
|
||||
- [Run a simple application](/engine/userguide/step_three.md)
|
||||
- [Manage data in containers](/engine/tutorials/dockervolumes.md)
|
||||
- [Store images on Docker Hub](/engine/getstarted/step_six.md)
|
||||
|
||||
## Work with images
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ This guide is broken into major sections that take you through learning the basi
|
|||
Docker Engine offers a containerization platform to power your applications. To
|
||||
learn how to Dockerize applications and run them:
|
||||
|
||||
Go to [Dockerizing Applications](../tutorials/dockerizing.md).
|
||||
Go to [Dockerizing Applications](/engine/getstarted/step_one.md).
|
||||
|
||||
|
||||
## Working with containers
|
||||
|
@ -35,7 +35,7 @@ Go to [Dockerizing Applications](../tutorials/dockerizing.md).
|
|||
Once you get a grip on running your applications in Docker containers, you'll learn how to manage those containers. To find out
|
||||
about how to inspect, monitor and manage containers:
|
||||
|
||||
Go to [Working with Containers](../tutorials/usingdocker.md).
|
||||
Go to [Working with Containers](/engine/getstarted/step_three.md).
|
||||
|
||||
## Working with Docker images
|
||||
|
||||
|
@ -44,7 +44,7 @@ Go to [Working with Containers](../tutorials/usingdocker.md).
|
|||
Once you've learnt how to use Docker it's time to take the next step and
|
||||
learn how to build your own application images with Docker.
|
||||
|
||||
Go to [Working with Docker Images](../tutorials/dockerimages.md).
|
||||
Go to [Working with Docker Images](/engine/getstarted/step_four.md).
|
||||
|
||||
## Networking containers
|
||||
|
||||
|
@ -52,14 +52,14 @@ Until now we've seen how to build individual applications inside Docker
|
|||
containers. Now learn how to build whole application stacks with Docker
|
||||
networking.
|
||||
|
||||
Go to [Networking Containers](../tutorials/networkingcontainers.md).
|
||||
Go to [Networking Containers](/engine/tutorials/networkingcontainers.md).
|
||||
|
||||
## Managing data in containers
|
||||
|
||||
Now we know how to link Docker containers together the next step is
|
||||
learning how to manage data, volumes and mounts inside our containers.
|
||||
|
||||
Go to [Managing Data in Containers](../tutorials/dockervolumes.md).
|
||||
Go to [Managing Data in Containers](/engine/tutorials/dockervolumes.md).
|
||||
|
||||
## Managing metadata (labels) for Docker objects
|
||||
|
||||
|
@ -124,7 +124,7 @@ Go to [Docker Swarm user guide](/swarm/).
|
|||
* [Docker Hub](https://hub.docker.com)
|
||||
* [Docker blog](https://blog.docker.com/)
|
||||
* [Docker documentation](/)
|
||||
* [Docker Getting Started Guide](../getstarted/index.md)
|
||||
* [Docker Getting Started Guide](/engine/getstarted/index.md)
|
||||
* [Docker code on GitHub](https://github.com/docker/docker)
|
||||
* [Docker mailing
|
||||
list](https://groups.google.com/forum/#!forum/docker-user)
|
||||
|
|
|
@ -8,12 +8,12 @@ title: Legacy container links
|
|||
|
||||
The information in this section explains legacy container links within the Docker default `bridge` network which is created automatically when you install Docker.
|
||||
|
||||
Before the [Docker networks feature](../index.md), you could use the
|
||||
Before the [Docker networks feature](/engine/userguide/networking/index.md), you could use the
|
||||
Docker link feature to allow containers to discover each other and securely
|
||||
transfer information about one container to another container. With the
|
||||
introduction of the Docker networks feature, you can still create links but they
|
||||
behave differently between default `bridge` network and
|
||||
[user defined networks](../work-with-networks.md#linking-containers-in-user-defined-networks)
|
||||
[user defined networks](/engine/userguide/networking/work-with-networks.md#linking-containers-in-user-defined-networks)
|
||||
|
||||
This section briefly discusses connecting via a network port and then goes into
|
||||
detail on container linking in default `bridge` network.
|
||||
|
@ -28,7 +28,7 @@ between containers in a more controlled way.
|
|||
|
||||
## Connect using network port mapping
|
||||
|
||||
In [Run a simple application](../../../tutorials/usingdocker.md), you created a
|
||||
In [Run a simple application](/engine/getstarted/step_three.md), you created a
|
||||
container that ran a Python Flask application:
|
||||
|
||||
$ docker run -d -P training/webapp python app.py
|
||||
|
@ -36,9 +36,9 @@ container that ran a Python Flask application:
|
|||
> **Note:**
|
||||
> Containers have an internal network and an IP address
|
||||
> (as we saw when we used the `docker inspect` command to show the container's
|
||||
> IP address in [Run a simple application](../../../tutorials/usingdocker.md) section).
|
||||
> IP address in [Run a simple application](/engine/getstarted/step_three.md) section).
|
||||
> Docker can have a variety of network configurations. You can see more
|
||||
> information on Docker networking [here](../index.md).
|
||||
> information on Docker networking [here](/engine/userguide/networking/index.md).
|
||||
|
||||
When that container was created, the `-P` flag was used to automatically map
|
||||
any network port inside it to a random high port within an *ephemeral port
|
||||
|
@ -102,7 +102,7 @@ configurations. For example, if you've bound the container port to the
|
|||
|
||||
> **Note**:
|
||||
> This section covers the legacy link feature in the default `bridge` network.
|
||||
> Please refer to [linking containers in user-defined networks](../work-with-networks.md#linking-containers-in-user-defined-networks)
|
||||
> Please refer to [linking containers in user-defined networks](/engine/userguide/networking/work-with-networks.md#linking-containers-in-user-defined-networks)
|
||||
> for more information on links in user-defined networks.
|
||||
|
||||
Network port mappings are not the only way Docker containers can connect to one
|
||||
|
|
|
@ -14,8 +14,11 @@ To create a virtual machine, you supply Docker Machine with the name of the driv
|
|||
|
||||
Since Docker runs on Linux, each VM that Docker Machine provisions relies on a
|
||||
base operating system. For convenience, there are default base operating
|
||||
systems. For the Oracle Virtual Box driver, this base operating system is <a href="https://github.com/boot2docker/boot2docker" target="_blank">boot2docker</a>. For drivers used to connect to cloud providers, the base operating system is Ubuntu 12.04+. You can change this default when you create a machine. The Docker Machine reference includes a complete [list of
|
||||
supported operating systems](drivers/os-base.md).
|
||||
systems. For the Oracle Virtual Box driver, this base operating system
|
||||
is [boot2docker](https://github.com/boot2docker/boot2docker). For drivers used
|
||||
to connect to cloud providers, the base operating system is Ubuntu 12.04+. You
|
||||
can change this default when you create a machine. The Docker Machine reference
|
||||
includes a complete [list of supported operating systems](drivers/os-base.md).
|
||||
|
||||
## IP addresses for Docker hosts
|
||||
|
||||
|
@ -31,14 +34,16 @@ Before you can run a `docker` command on a machine, you need to configure your
|
|||
command-line to point to that machine. The `docker-machine env <machine-name>`
|
||||
subcommand outputs the configuration command you should use.
|
||||
|
||||
For a complete list of `docker-machine` subcommands, see the [Docker Machine subcommand reference](reference/index.md).
|
||||
For a complete list of `docker-machine` subcommands, see the
|
||||
[Docker Machine subcommand reference](/machine/reference/help.md).
|
||||
|
||||
## Custom root Certificate Authority for Registry
|
||||
|
||||
Users using their own Docker Registry will experience `x509: certificate signed by unknown authority`
|
||||
error messages if their registry is signed by custom root Certificate Authority and it is
|
||||
not registered with Docker Engine. As discussed in the [Docker Engine documentation](/engine/security/certificates/#/understanding-the-configuration)
|
||||
certificates should be placed at `/etc/docker/certs.d/hostname/ca.crt`
|
||||
Users using their own Docker Registry will experience `x509: certificate signed by unknown authority`
|
||||
error messages if their registry is signed by custom root Certificate Authority and it is
|
||||
not registered with Docker Engine. As discussed in the
|
||||
[Docker Engine documentation](/engine/security/certificates.md#understanding-the-configuration)
|
||||
certificates should be placed at `/etc/docker/certs.d/hostname/ca.crt`
|
||||
where `hostname` is your Registry server's hostname.
|
||||
|
||||
```console
|
||||
|
@ -78,19 +83,19 @@ Docker Machine is still in its infancy and under active development. If you need
|
|||
help, would like to contribute, or simply want to talk about the project with
|
||||
like-minded individuals, we have a number of open channels for communication.
|
||||
|
||||
- To report bugs or file feature requests: please use the [issue tracker on
|
||||
Github](https://github.com/docker/machine/issues).
|
||||
- To talk about the project with people in real time: please join the
|
||||
`#docker-machine` channel on IRC.
|
||||
- To contribute code or documentation changes: please [submit a pull request on
|
||||
Github](https://github.com/docker/machine/pulls).
|
||||
- To report bugs or file feature requests: please use the
|
||||
[issue tracker on Github](https://github.com/docker/machine/issues).
|
||||
- To talk about the project with people in real time: please join the
|
||||
`#docker-machine` channel on IRC.
|
||||
- To contribute code or documentation changes: please
|
||||
[submit a pull request on Github](https://github.com/docker/machine/pulls).
|
||||
|
||||
For more information and resources, please visit
|
||||
[our help page](/opensource/get-help.md).
|
||||
|
||||
## Where to go next
|
||||
|
||||
- Create and run a Docker host on your [local system using VirtualBox](get-started.md)
|
||||
- Provision multiple Docker hosts [on your cloud provider](get-started-cloud.md)
|
||||
- <a href="../drivers/" target="_blank">Docker Machine driver reference</a>
|
||||
- <a href="../reference/" target="_blank">Docker Machine subcommand reference</a>
|
||||
- Create and run a Docker host on your [local system using VirtualBox](get-started.md)
|
||||
- Provision multiple Docker hosts [on your cloud provider](get-started-cloud.md)
|
||||
- [Docker Machine driver reference](/machine/drivers.md){: target="_blank" class="_"}
|
||||
- [Docker Machine subcommand reference](/machine/reference/help.md){: target="_blank" class="_"}
|
||||
|
|
|
@ -51,8 +51,9 @@ driver for Oracle VirtualBox](drivers/virtualbox.md).) Note that you can run
|
|||
both HyperKit and Oracle VirtualBox on the same system. To learn more, see
|
||||
[Docker for Mac vs. Docker Toolbox](/docker-for-mac/docker-toolbox/).
|
||||
|
||||
* Make sure you have <a href="https://www.virtualbox.org/wiki/Downloads" target="_blank">the latest VirtualBox</a> correctly installed on your system
|
||||
(either as part of an earlier Toolbox install, or manual install).
|
||||
* Make sure you have [the latest VirtualBox](https://www.virtualbox.org/wiki/Downloads){: target="_blank" class="_"}
|
||||
correctly installed on your system (either as part of an earlier Toolbox install,
|
||||
or manual install).
|
||||
|
||||
#### If you are using Docker Toolbox
|
||||
|
||||
|
@ -60,23 +61,23 @@ Docker for Mac and Docker for Windows both require newer versions of their
|
|||
respective operating systems, so users with older OS versions must use Docker
|
||||
Toolbox.
|
||||
|
||||
* If you are using Docker Toolbox on either Mac or an older version Windows system (without Hyper-V), you will use the `virtualbox` driver to create
|
||||
a local machine based on Oracle <a href= "https://www.virtualbox.org/"
|
||||
target="_blank">VirtualBox</a>. (See the [Docker Machine driver for Oracle
|
||||
VirtualBox](drivers/virtualbox.md) )
|
||||
<br />
|
||||
* If you are using Docker Toolbox on a Windows system that has Hyper-V but cannot run Docker for Windows (for example Windows 8 Pro), you must use the
|
||||
`hyperv` driver to create local machines. (See the [Docker Machine driver for
|
||||
Microsoft Hyper-V](drivers/hyper-v.md).)
|
||||
<br />
|
||||
* Make sure you have <a href="https://www.virtualbox.org/wiki/Downloads" target="_blank">the latest VirtualBox</a> correctly installed on your system. If
|
||||
you used <a href="https://www.docker.com/products/docker-toolbox"
|
||||
target="_blank">Toolbox</a> for <a
|
||||
href="/engine/installation/mac/" target="_blank">Mac</a>
|
||||
or <a href="/engine/installation/windows/"
|
||||
target="_blank">Windows</a> to install Docker Machine, VirtualBox is
|
||||
automatically installed.
|
||||
<br />
|
||||
* If you are using Docker Toolbox on either Mac or an older version Windows system
|
||||
(without Hyper-V), you will use the `virtualbox` driver to create a local
|
||||
machine based on Oracle [VirtualBox(https://www.virtualbox.org/){: target="_blank" class="_"}.
|
||||
(See the [Docker Machine driver for Oracle VirtualBox](drivers/virtualbox.md).)
|
||||
|
||||
* If you are using Docker Toolbox on a Windows system that has Hyper-V but cannot
|
||||
run Docker for Windows (for example Windows 8 Pro), you must use the
|
||||
`hyperv` driver to create local machines. (See the
|
||||
[Docker Machine driver for Microsoft Hyper-V](drivers/hyper-v.md).)
|
||||
|
||||
* Make sure you have [the latest VirtualBox](https://www.virtualbox.org/wiki/Downloads){: target="_blank" class="_"}
|
||||
correctly installed on your system. If you used
|
||||
[Toolbox]("https://www.docker.com/products/docker-toolbox"){: target="_blank" class="_"}
|
||||
or [Docker for Windows](/docker-for-windows/index.md){: target="_blank" class="_"}
|
||||
to install Docker Machine, VirtualBox is
|
||||
automatically installed.
|
||||
|
||||
* If you used the Quickstart Terminal to launch your first machine and set your terminal environment to point to it, a default machine was automatically
|
||||
created. If this is the case, you can still follow along with these steps, but
|
||||
create another machine and name it something other than "default" (e.g., staging
|
||||
|
@ -138,7 +139,7 @@ choose another name for this new machine.
|
|||
Docker is up and running!
|
||||
To see how to connect Docker to this machine, run: docker-machine env default
|
||||
|
||||
This command downloads a lightweight Linux distribution (<a href="https://github.com/boot2docker/boot2docker" target="_blank">boot2docker</a>) with the Docker daemon installed, and creates and starts a VirtualBox VM with Docker running.
|
||||
This command downloads a lightweight Linux distribution ([boot2docker](https://github.com/boot2docker/boot2docker){: target="_blank" class="_"}) with the Docker daemon installed, and creates and starts a VirtualBox VM with Docker running.
|
||||
|
||||
4. List available machines again to see your newly minted machine.
|
||||
|
||||
|
@ -164,7 +165,7 @@ choose another name for this new machine.
|
|||
|
||||
**Note**: If you are using `fish`, or a Windows shell such as
|
||||
Powershell/`cmd.exe` the above method will not work as described.
|
||||
Instead, see <a href="/machine/reference/env/" target="_blank">the `env` command's documentation</a>
|
||||
Instead, see [the `env` command's documentation](/machine/reference/env.md){: target="_blank" class="_"}
|
||||
to learn how to set the environment variables for your shell.
|
||||
|
||||
This sets environment variables for the current shell that the Docker client will read which specify the TLS settings. You need to do this each time you open a new shell or restart your machine.
|
||||
|
@ -193,7 +194,7 @@ Run a container with `docker run` to verify your set up.
|
|||
$ docker-machine ip default
|
||||
192.168.99.100
|
||||
|
||||
3. Run a webserver (<a href="https://www.nginx.com/" target="_blank">nginx</a>) in a container with the following command:
|
||||
3. Run a [Nginx](https://www.nginx.com/){: target="_blank" class="_"} webserver in a container with the following command:
|
||||
|
||||
$ docker run -d -p 8000:80 nginx
|
||||
|
||||
|
|
|
@ -301,7 +301,7 @@ They will display corresponding entries for the change in leadership.
|
|||
|
||||
## Additional Resources
|
||||
|
||||
- [Installing Docker Engine on a cloud provider](/engine/installation/cloud/cloud-ex-aws/)
|
||||
- [Installing Docker Engine on a cloud provider](/docker-for-aws/)
|
||||
- [High availability in Docker Swarm](multi-manager-setup.md)
|
||||
- [Discovery](discovery.md)
|
||||
- [High-availability cluster using a trio of consul nodes](https://hub.docker.com/r/progrium/consul/)
|
||||
|
|
|
@ -58,10 +58,9 @@ documents.
|
|||
|
||||
## Swarm API
|
||||
|
||||
The [Docker Swarm API](swarm-api.md) is compatible with
|
||||
the [Docker remote
|
||||
API](/engine/reference/api/docker_remote_api/), and extends it
|
||||
with some new endpoints.
|
||||
The [Docker Swarm API](swarm-api.md) is compatible with the
|
||||
[Docker remote API](/engine/api/index.md), and extends it with some new
|
||||
endpoints.
|
||||
|
||||
## Getting help
|
||||
|
||||
|
|
|
@ -18,19 +18,19 @@ you can use it to setup a Swarm cluster on a cloud provider, or inside your
|
|||
company's data center.
|
||||
|
||||
If this is the first time you are creating a Swarm cluster, you should first
|
||||
learn about Swarm and its requirements by [installing a Swarm for
|
||||
evaluation](install-w-machine.md) or [installing a Swarm for
|
||||
production](install-manual.md). If this is the first time you have used Machine,
|
||||
you should take some time to [understand Machine before
|
||||
continuing](/machine).
|
||||
learn about Swarm and its requirements by
|
||||
[installing a Swarm for evaluation](install-w-machine.md) or
|
||||
[installing a Swarm for production](install-manual.md). If this is the first
|
||||
time you have used Machine, you should take some time to
|
||||
[understand Machine before continuing](/machine).
|
||||
|
||||
|
||||
## What you need
|
||||
|
||||
If you are using macOS or Windows and have installed with Docker Toolbox, you
|
||||
should already have Machine installed. If you need to install, see the
|
||||
instructions for [macOS](/engine/installation/mac/) or
|
||||
[Windows](/engine/installation/mac/).
|
||||
instructions for [macOS](/docker-for-mac/) or
|
||||
[Windows](/docker-for-windows/).
|
||||
|
||||
Machine supports installing on AWS, Digital Ocean, Google Cloud Platform, IBM
|
||||
Softlayer, Microsoft Azure and Hyper-V, OpenStack, Rackspace, VirtualBox, VMware
|
||||
|
@ -42,8 +42,8 @@ The Toolbox installation gives you VirtualBox and the `boot2docker.iso` image
|
|||
you need. It also gives you the ability provision on all the systems Machine
|
||||
supports.
|
||||
|
||||
**Note**:These examples assume you are using macOS or Windows, if you like you can also [install Docker Machine directly on a Linux
|
||||
system](/machine/install-machine).
|
||||
**Note**:These examples assume you are using macOS or Windows, if you like you can also
|
||||
[install Docker Machine directly on a Linux system](/machine/install-machine).
|
||||
|
||||
## Provision a host to generate a Swarm token
|
||||
|
||||
|
@ -138,7 +138,7 @@ eval "$(docker-machine env local)"
|
|||
Docker Machine provides a special `--swarm` flag with its `env` command to
|
||||
connect to Swarm nodes.
|
||||
|
||||
```
|
||||
```bash
|
||||
docker-machine env --swarm HOST_NODE_NAME
|
||||
export DOCKER_TLS_VERIFY="1"
|
||||
export DOCKER_HOST="tcp://192.168.99.101:3376"
|
||||
|
@ -157,7 +157,7 @@ eval "$(docker-machine env --swarm swarm-manager)"
|
|||
|
||||
Now, you can use the Docker CLI to query and interact with your cluster.
|
||||
|
||||
```
|
||||
```bash
|
||||
docker info
|
||||
Containers: 2
|
||||
Images: 1
|
||||
|
@ -181,4 +181,4 @@ Name: swarm-manager
|
|||
* [Evaluate Swarm in a sandbox](install-w-machine.md)
|
||||
* [Build a Swarm cluster for production](install-manual.md)
|
||||
* [Swarm Discovery](discovery.md)
|
||||
* [Docker Machine](/machine) documentation
|
||||
* [Docker Machine](/machine/index.md) documentation
|
||||
|
|
|
@ -9,8 +9,8 @@ redirect_from:
|
|||
title: Docker Swarm API
|
||||
---
|
||||
|
||||
The Docker Swarm API is mostly compatible with the [Docker Remote
|
||||
API](/engine/reference/api/docker_remote_api/). This
|
||||
The Docker Swarm API is mostly compatible with the
|
||||
[Docker Remote API](/engine/api/index.md). This
|
||||
document is an overview of the differences between the Swarm API and the Docker
|
||||
Engine API.
|
||||
|
||||
|
|
|
@ -8,15 +8,15 @@ redirect_from:
|
|||
title: Deploy the application
|
||||
---
|
||||
|
||||
You've [deployed the load balancer, the discovery backend, and a Swarm
|
||||
cluster](deploy-infra.md) so now you can build and deploy the voting application
|
||||
itself. You do this by starting a number of "Dockerized applications" running in
|
||||
containers.
|
||||
You've
|
||||
[deployed the load balancer, the discovery backend, and a Swarm cluster](deploy-infra.md)
|
||||
so now you can build and deploy the voting application itself. You do this by
|
||||
starting a number of "Dockerized applications" running in containers.
|
||||
|
||||
The diagram below shows the final application configuration including the overlay
|
||||
container network, `voteapp`.
|
||||
|
||||

|
||||

|
||||
|
||||
In this procedure you will connect containers to this network. The `voteapp`
|
||||
network is available to all Docker hosts using the Consul discovery backend.
|
||||
|
@ -239,7 +239,7 @@ Now, you can test your application.
|
|||
|
||||
You should see something similar to the following:
|
||||
|
||||

|
||||

|
||||
|
||||
2. Click on one of the two voting options.
|
||||
3. Navigate to the `http://results.myenterprise.example.com` site to see the results.
|
||||
|
@ -247,7 +247,7 @@ Now, you can test your application.
|
|||
|
||||
You'll see both sides change as you switch your vote.
|
||||
|
||||

|
||||

|
||||
|
||||
## Extra Credit: Deployment with Docker Compose
|
||||
|
||||
|
@ -301,8 +301,8 @@ the containers at once. This extra credit
|
|||
service in the file. This application relies on a volume and a network,
|
||||
declare those at the bottom of the file.
|
||||
|
||||
3. Check your work against <a href="../docker-compose.yml" target="_blank">this
|
||||
result file</a>
|
||||
3. Check your work against
|
||||
[this file](/swarm/swarm_at_scale/docker-compose.yml){: target="_blank" class="_"}.
|
||||
|
||||
4. When you are satisfied, save the `docker-compose.yml` file to your system.
|
||||
|
||||
|
|
Loading…
Reference in New Issue