Fix various links that were generating URLs with `.md` (#10548)

* Fix incorrect links in compose section

there's a bug causing wrapped links to not work, and replacing
some links to point to the .md file, so that IDE's can check
if the anchors are valid. Also replaced some links to point
to their new location.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

* engine/swarm: update links

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

* Fix various broken links

There's a bug in the "jekyll-relative-links" plugin that causes wrapped links to not work.
Also replacing some links to point to the .md file, so that IDE's can check if the anchors
are valid. Finally, replaced some links to point to their new locations, so that users don't
get redirected..

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Sebastiaan van Stijn 2020-04-01 13:05:50 +02:00 committed by GitHub
parent cdee2dd67c
commit 331554f4b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
161 changed files with 718 additions and 781 deletions

View File

@ -369,8 +369,7 @@ in Docker Hub. For example, run the following to access `v1.9`:
All the images described below are automatically built using Docker Hub. To
build the site manually, from scratch, including all utility and archive images,
see the [README in the publish-tools
branch](https://github.com/docker/docker.github.io/blob/publish-tools/README.md).
see the [README in the publish-tools branch](https://github.com/docker/docker.github.io/blob/publish-tools/README.md).
- Some utility images are built from Dockerfiles in the `publish-tools` branch.
See its [README](https://github.com/docker/docker.github.io/blob/publish-tools/README.md)

View File

@ -11,6 +11,5 @@ relationship of Docker to Moby at [mobyproject.org](https://mobyproject.org/).
The Moby project lives [here](https://github.com/moby/moby).
See [Contribute to the Moby
project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md) to learn how
to help work on the codebase.
See [Contribute to the Moby project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md)
to learn how to help work on the codebase.

View File

@ -10,7 +10,7 @@ Compose to set up and run the sample ASP.NET Core application using the
with the
[SQL Server on Linux image](https://hub.docker.com/_/microsoft-mssql-server).
You just need to have [Docker Engine](/install/index.md)
and [Docker Compose](/compose/install/) installed on your
and [Docker Compose](/compose/install.md) installed on your
platform of choice: Linux, Mac or Windows.
For this sample, we create a sample .NET Core Web Application using the
@ -25,8 +25,8 @@ configure this app to use our SQL Server database, and then create a
1. Create a new directory for your application.
This directory is the context of your docker-compose project. For
[Docker Desktop for Windows](/docker-for-windows/#/shared-drives) and
[Docker Desktop for Mac](/docker-for-mac/#/file-sharing), you
[Docker Desktop for Windows](/docker-for-windows/index.md#file-sharing) and
[Docker Desktop for Mac](/docker-for-mac/index.md#file-sharing), you
need to set up file sharing for the volume that you need to map.
1. Within your directory, use the `dotnet:2.1-sdk` Docker image to generate a
@ -173,8 +173,8 @@ configure this app to use our SQL Server database, and then create a
1. Make sure you allocate at least 2GB of memory to Docker Engine. Here is how
to do it on
[Docker Desktop for Mac](/docker-for-mac/#/advanced) and
[Docker Desktop for Windows](/docker-for-windows/#/advanced).
[Docker Desktop for Mac](/docker-for-mac/index.md#advanced) and
[Docker Desktop for Windows](/docker-for-windows/index.md#advanced).
This is necessary to run the SQL Server on Linux container.
1. Run the `docker-compose up` command. After a few seconds, you should be able

View File

@ -121,5 +121,5 @@ Enjoy working with Compose faster and with fewer typos!
- [Get started with Django](django.md)
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -396,7 +396,7 @@ options and tags it with the specified tag.
### labels
Add metadata to containers using [Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either an array or a dictionary.
Add metadata to containers using [Docker labels](/config/labels-custom-metadata.md). You can use either an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from conflicting with those used by other software.
@ -420,7 +420,7 @@ Link to containers in another service. Either specify both the service name and
a link alias (`"SERVICE:ALIAS"`), or just the service name.
> Links are a legacy option. We recommend using
> [networks](#networks) instead.
> [networks](/compose/networking.md) instead.
```yaml
web:
@ -434,18 +434,18 @@ Containers for the linked service are reachable at a hostname identical to
the alias, or the service name if no alias was specified.
Links also express dependency between services in the same way as
[depends_on](#depends_on), so they determine the order of service startup.
[depends_on](compose-file-v2.md#depends_on), so they determine the order of service startup.
> **Note**
>
> If you define both links and [networks](#networks), services with
> If you define both links and [networks](index.md#networks), services with
> links between them must share at least one network in common in order to
> communicate.
### log_driver
> [Version 1 file format](compose-versioning#version-1) only. In version 2 and up, use
> [logging](/compose/compose-file/index.md#logging).
> [Version 1 file format](compose-versioning.md#version-1) only. In version 2 and up, use
> [logging](index.md#logging).
Specify a log driver. The default is `json-file`.
@ -455,8 +455,8 @@ log_driver: syslog
### log_opt
> [Version 1 file format](compose-versioning#version-1) only. In version 2 and up, use
> [logging](/compose/compose-file/index.md#logging).
> [Version 1 file format](compose-versioning.md#version-1) only. In version 2 and up, use
> [logging](index.md#logging).
Specify logging options as key-value pairs. An example of `syslog` options:
@ -468,7 +468,7 @@ log_opt:
### net
> [Version 1 file format](compose-versioning.md#version-1) only. In version 2 and up, use
> [network_mode](/compose/compose-file/index.md#networkmode) and [networks](/compose/compose-file/index.md#networks).
> [network_mode](index.md#network_mode) and [networks](index.md#networks).
Network mode. Use the same values as the docker client `--net` parameter.
The `container:...` form can take a service name instead of a container name or
@ -561,9 +561,9 @@ ulimits:
Mount paths or named volumes, optionally specifying a path on the host machine
(`HOST:CONTAINER`), or an access mode (`HOST:CONTAINER:ro`).
For [version 2 files](compose-versioning#version-2), named volumes need to be specified with the
For [version 2 files](compose-versioning.md#version-2), named volumes need to be specified with the
[top-level `volumes` key](compose-file-v2.md#volume-configuration-reference).
When using [version 1](compose-versioning#version-1), the Docker Engine creates the named
When using [version 1](compose-versioning.md#version-1), the Docker Engine creates the named
volume automatically if it doesn't exist.
You can mount a relative path on the host, which expands relative to
@ -595,16 +595,16 @@ volume_driver: mydriver
```
There are several things to note, depending on which
[Compose file version](compose-versioning#versioning) you're using:
[Compose file version](compose-versioning.md#versioning) you're using:
- For [version 1 files](compose-versioning#version-1), both named volumes and
- For [version 1 files](compose-versioning.md#version-1), both named volumes and
container volumes use the specified driver.
- No path expansion is done if you have also specified a `volume_driver`.
For example, if you specify a mapping of `./foo:/data`, the `./foo` part
is passed straight to the volume driver without being expanded.
See [Docker Volumes](/engine/userguide/dockervolumes.md) and
[Volume Plugins](/engine/extend/plugins_volume.md) for more information.
See [Docker Volumes](/storage/volumes.md) and
[Volume Plugins](/engine/extend/plugins_volume/) for more information.
### volumes_from
@ -653,5 +653,5 @@ tty: true
- [User guide](/compose/index.md)
- [Installing Compose](/compose/install.md)
- [Compose file versions and upgrading](compose-versioning.md)
- [Samples](/samples/)
- [Command line reference](/compose/reference/)
- [Samples](/samples/index.md)
- [Command line reference](/compose/reference/index.md)

View File

@ -215,7 +215,7 @@ build:
> In your Dockerfile, if you specify `ARG` before the `FROM` instruction,
> `ARG` is not available in the build instructions under `FROM`.
> If you need an argument to be available in both places, also specify it under
> the `FROM` instruction. Refer to the [understand how ARGS and FROM interact](/engine/reference/builder/#understand-how-arg-and-from-interact)
> the `FROM` instruction. Refer to the [understand how ARGS and FROM interact](/engine/reference/builder.md#understand-how-arg-and-from-interact)
> section in the documentation for usage details.
You can omit the value when specifying a build argument, in which case its value
@ -281,7 +281,7 @@ to determine the value to use for builds.
> Added in [version 2.1](compose-versioning.md#version-21) file format
Add metadata to the resulting image using [Docker labels](/engine/userguide/labels-custom-metadata.md).
Add metadata to the resulting image using [Docker labels](/config/labels-custom-metadata.md).
You can use either an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -349,7 +349,7 @@ build:
> Added in [version 2.3](compose-versioning.md#version-23) file format
Build the specified stage as defined inside the `Dockerfile`. See the
[multi-stage build docs](/engine/userguide/eng-image/multistage-build.md) for
[multi-stage build docs](/develop/develop-images/multistage-build.md) for
details.
```yaml
@ -740,7 +740,7 @@ external_links:
>
> If you're using the [version 2 or above file format](compose-versioning.md#version-2),
> the externally-created containers must be connected to at least one of the same
> networks as the service that is linking to them. [Links](compose-file-v2#links)
> networks as the service that is linking to them. [Links](compose-file-v2.md#links)
> are a legacy option. We recommend using [networks](#networks) instead.
### extra_hosts
@ -881,7 +881,7 @@ services:
> The default init binary that is used is [Tini](https://github.com/krallin/tini),
> and is installed in `/usr/libexec/docker-init` on the daemon host. You can
> configure the daemon to use a custom init binary through the
> [`init-path` configuration option](/engine/reference/commandline/dockerd/#daemon-configuration-file).
> [`init-path` configuration option](/engine/reference/commandline/dockerd.md#daemon-configuration-file).
### isolation
@ -895,7 +895,7 @@ for details.
### labels
Add metadata to containers using [Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either an array or a dictionary.
Add metadata to containers using [Docker labels](/config/labels-custom-metadata.md). You can use either an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from conflicting with those used by other software.
@ -958,7 +958,7 @@ logging:
The `driver` name specifies a logging driver for the service's
containers, as with the ``--log-driver`` option for docker run
([documented here](/engine/admin/logging/overview.md)).
([documented here](/config/containers/logging/configure.md)).
The default value is json-file.
@ -1311,7 +1311,7 @@ security_opt:
Specify how long to wait when attempting to stop a container if it doesn't
handle SIGTERM (or whatever stop signal has been specified with
[`stop_signal`](#stopsignal)), before sending SIGKILL. Specified
[`stop_signal`](#stop_signal)), before sending SIGKILL. Specified
as a [duration](#specifying-durations).
```yaml
@ -1401,7 +1401,7 @@ userns_mode: "host"
```
Disables the user namespace for this service, if Docker daemon is configured with user namespaces.
See [dockerd](/engine/reference/commandline/dockerd.md#disable-user-namespace-for-a-container) for
See [dockerd](/engine/reference/commandline/dockerd/#disable-user-namespace-for-a-container) for
more information.
### volumes
@ -1489,7 +1489,7 @@ volumes:
> When creating bind mounts, using the long syntax requires the
> referenced folder to be created beforehand. Using the short syntax
> creates the folder on the fly if it doesn't exist.
> See the [bind mounts documentation](/engine/admin/volumes/bind-mounts.md/#differences-between--v-and---mount-behavior)
> See the [bind mounts documentation](/storage/bind-mounts.md#differences-between--v-and---mount-behavior)
> for more information.
### volume\_driver
@ -1510,8 +1510,8 @@ volume_driver: mydriver
> entry in the [top-level `volumes` option](#volume-configuration-reference).
See [Docker Volumes](/engine/userguide/dockervolumes.md) and
[Volume Plugins](/engine/extend/plugins_volume.md) for more information.
See [Docker Volumes](/storage/volumes.md) and
[Volume Plugins](/engine/extend/plugins_volume/) for more information.
### volumes_from
@ -1641,8 +1641,8 @@ easily retrieved and inspected using the docker command line or API.
See the [docker volume](/engine/reference/commandline/volume_create.md)
subcommand documentation for more information.
See [use volumes](/engine/admin/volumes/volumes.md) and [volume
plugins](/engine/extend/plugins_volume.md) for general information on volumes.
See [use volumes](/storage/volumes.md) and [volume plugins](/engine/extend/plugins_volume/)
for general information on volumes.
Here's an example of a two-service setup where a database's data directory is
shared with another service as a volume so that it can be periodically backed
@ -1744,7 +1744,7 @@ volumes:
> Added in [version 2.1](compose-versioning.md#version-21) file format.
Add metadata to containers using
[Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either
[Docker labels](/config/labels-custom-metadata.md). You can use either
an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -1877,7 +1877,7 @@ you can set this option to `true`.
> Added in [version 2.1](compose-versioning.md#version-21) file format.
Add metadata to containers using
[Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either
[Docker labels](/config/labels-custom-metadata.md). You can use either
an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -1986,5 +1986,5 @@ networks:
- [User guide](/compose/index.md)
- [Installing Compose](/compose/install.md)
- [Compose file versions and upgrading](compose-versioning.md)
- [Samples](/samples/)
- [Command line reference](/compose/reference/)
- [Samples](/samples/index.md)
- [Command line reference](/compose/reference/index.md)

View File

@ -81,15 +81,15 @@ These differences are explained below.
### Version 1
Compose files that do not declare a version are considered "version 1". In those
files, all the [services](/compose/compose-file/index.md#service-configuration-reference) are
files, all the [services](index.md#service-configuration-reference) are
declared at the root of the document.
Version 1 is supported by **Compose up to 1.6.x**. It will be deprecated in a
future Compose release.
Version 1 files cannot declare named
[volumes](/compose/compose-file/index.md#volume-configuration-reference), [networks](/compose/compose-file/index.md#network-configuration-reference) or
[build arguments](/compose/compose-file/index.md#args).
[volumes](index.md#volume-configuration-reference), [networks](index.md#network-configuration-reference) or
[build arguments](index.md#args).
Compose does not take advantage of [networking](/compose/networking.md) when you
use version 1: every container is placed on the default `bridge` network and is
@ -125,7 +125,7 @@ under the `networks` key.
By default, every container joins an application-wide default network, and is
discoverable at a hostname that's the same as the service name. This means
[links](compose-file-v2.md#links) are largely unnecessary. For more details, see
[Networking in Compose](compose-file-v2.md#networking.md).
[Networking in Compose](/compose/networking.md).
> **Note**: When specifying the Compose file version to use, make sure to
> specify both the _major_ and _minor_ numbers. If no minor version is given,
@ -214,7 +214,7 @@ supported by **Compose 1.9.0+**.
Introduces the following additional parameters:
- [`link_local_ips`](compose-file-v2.md#linklocalips)
- [`link_local_ips`](compose-file-v2.md#link_local_ips)
- [`isolation`](compose-file-v2.md#isolation) in build configurations and
service definitions
- `labels` for [volumes](compose-file-v2.md#volume-configuration-reference) and
@ -223,8 +223,8 @@ Introduces the following additional parameters:
- [`userns_mode`](compose-file-v2.md#userns_mode)
- [`healthcheck`](compose-file-v2.md#healthcheck)
- [`sysctls`](compose-file-v2.md#sysctls)
- [`pids_limit`](compose-file-v2.md#pidslimit)
- [`oom_kill_disable`](compose-file-v2.md#oomkilldisable)
- [`pids_limit`](compose-file-v2.md#pids_limit)
- [`oom_kill_disable`](compose-file-v2.md#cpu-and-other-resources)
- [`cpu_period`](compose-file-v2.md)
### Version 2.2
@ -248,7 +248,7 @@ supported by **Compose 1.16.0+**.
Introduces the following additional parameters:
- [`target`](compose-file-v2.md#target), [`extra_hosts`](compose-file-v2.md#extrahosts) and
- [`target`](compose-file-v2.md#target), [`extra_hosts`](compose-file-v2.md#extra_hosts-1) and
[`shm_size`](compose-file-v2.md#shmsize) for [build configurations](compose-file-v2.md#build)
- `start_period` for [`healthchecks`](compose-file-v2.md#healthcheck)
- ["Long syntax" for volumes](compose-file-v2.md#long-syntax)
@ -270,7 +270,7 @@ Introduces the following additional parameters:
### Version 3
Designed to be cross-compatible between Compose and the Docker Engine's
[swarm mode](/engine/swarm/index.md), version 3 removes several options and adds
[swarm mode](/engine/swarm/), version 3 removes several options and adds
several more.
- Removed: `volume_driver`, `volumes_from`, `cpu_shares`, `cpu_quota`,
@ -278,7 +278,7 @@ several more.
the [upgrading](#upgrading) guide for how to migrate away from these.
(For more information on `extends`, see [Extending services](/compose/extends.md#extending-services).)
- Added: [deploy](/compose/compose-file/index.md#deploy)
- Added: [deploy](index.md#deploy)
> **Note**: When specifying the Compose file version to use, make sure to
> specify both the _major_ and _minor_ numbers. If no minor version is given,
@ -302,10 +302,10 @@ available with Docker Engine version **17.06.0+**, and higher.
Introduces the following additional parameters:
- [build `labels`](/compose/compose-file/index.md#build)
- [`credential_spec`](/compose/compose-file/index.md#credentialspec)
- [`configs`](/compose/compose-file/index.md#configs)
- [deploy `endpoint_mode`](/compose/compose-file/index.md#endpointmode)
- [build `labels`](index.md#build)
- [`credential_spec`](index.md#credential_spec)
- [`configs`](index.md#configs)
- [deploy `endpoint_mode`](index.md#endpoint_mode)
### Version 3.4
@ -314,10 +314,10 @@ only available with Docker Engine version **17.09.0** and higher.
Introduces the following additional parameters:
- `target` and `network` in [build configurations](/compose/compose-file/index.md#build)
- `start_period` for [`healthchecks`](/compose/compose-file/index.md#healthcheck)
- `order` for [update configurations](/compose/compose-file/index.md#update_config)
- `name` for [volumes](/compose/compose-file/index.md#volume-configuration-reference)
- `target` and `network` in [build configurations](index.md#build)
- `start_period` for [`healthchecks`](index.md#healthcheck)
- `order` for [update configurations](index.md#update_config)
- `name` for [volumes](index.md#volume-configuration-reference)
### Version 3.5
@ -360,7 +360,7 @@ several options have been removed:
- `volume_driver`: Instead of setting the volume driver on the service, define
a volume using the
[top-level `volumes` option](/compose/compose-file/index.md#volume-configuration-reference)
[top-level `volumes` option](index.md#volume-configuration-reference)
and specify the driver there.
version: "{{ site.compose_file_v3 }}"
@ -374,12 +374,12 @@ several options have been removed:
driver: mydriver
- `volumes_from`: To share a volume between services, define it using the
[top-level `volumes` option](/compose/compose-file/index.md#volume-configuration-reference)
[top-level `volumes` option](index.md#volume-configuration-reference)
and reference it from each service that shares it using the
[service-level `volumes` option](/compose/compose-file/index.md#volumes-volumedriver).
[service-level `volumes` option](index.md#driver).
- `cpu_shares`, `cpu_quota`, `cpuset`, `mem_limit`, `memswap_limit`: These
have been replaced by the [resources](/compose/compose-file/index.md#resources) key under
have been replaced by the [resources](index.md#resources) key under
`deploy`. `deploy` configuration only takes effect when using
`docker stack deploy`, and is ignored by `docker-compose`.
@ -413,7 +413,7 @@ It's more complicated if you're using particular configuration features:
syslog-address: "tcp://192.168.0.42:123"
- `links` with environment variables: As documented in the
[environment variables reference](link-env-deprecated.md), environment variables
[environment variables reference](/compose/link-env-deprecated.md), environment variables
created by
links have been deprecated for some time. In the new Docker network system,
they have been removed. You should either connect directly to the
@ -432,11 +432,11 @@ It's more complicated if you're using particular configuration features:
communicate, even if explicitly linked together.
Either connect the external container to your app's
[default network](networking.md), or connect both the external container and
[default network](/compose/networking.md), or connect both the external container and
your service's containers to an
[external network](networking.md#using-a-pre-existing-network).
[external network](/compose/networking.md#use-a-pre-existing-network).
- `net`: This is now replaced by [network_mode](compose-file-v1.md#network_mode):
- `net`: This is now replaced by [network_mode](index.md#network_mode):
net: host -> network_mode: host
net: bridge -> network_mode: bridge
@ -485,7 +485,7 @@ the following deploy keys are translated:
- [resources](index.md#resources) limits and memory reservations
- [replicas](index.md#replicas)
- [restart_policy](index.md#restartpolicy) `condition` and `max_attempts`
- [restart_policy](index.md#restart_policy) `condition` and `max_attempts`
All other keys are ignored and produce a warning if present. You can review
the configuration that will be used to deploy by using the `--compatibility`

View File

@ -26,8 +26,7 @@ how to upgrade, see **[About versions and upgrading](compose-versioning.md)**.
Here is a sample Compose file from the voting app sample used in the
[Docker for Beginners lab](https://github.com/docker/labs/tree/master/beginner/)
topic on [Deploying an app to a
Swarm](https://github.com/docker/labs/blob/master/beginner/chapters/votingapp.md):
topic on [Deploying an app to a Swarm](https://github.com/docker/labs/blob/master/beginner/chapters/votingapp.md):
<div class="panel panel-default">
<div class="panel-heading collapsed" data-toggle="collapse" data-target="#collapseSample1" style="cursor: pointer">
@ -281,7 +280,7 @@ build:
> In your Dockerfile, if you specify `ARG` before the `FROM` instruction,
> `ARG` is not available in the build instructions under `FROM`.
> If you need an argument to be available in both places, also specify it under
> the `FROM` instruction. Refer to the [understand how ARGS and FROM interact](/engine/reference/builder/#understand-how-arg-and-from-interact)
> the `FROM` instruction. Refer to the [understand how ARGS and FROM interact](/engine/reference/builder.md#understand-how-arg-and-from-interact)
> section in the documentation for usage details.
You can omit the value when specifying a build argument, in which case its value
@ -317,7 +316,7 @@ build:
> Added in [version 3.3](compose-versioning.md#version-33) file format
Add metadata to the resulting image using [Docker labels](/engine/userguide/labels-custom-metadata.md).
Add metadata to the resulting image using [Docker labels](/config/labels-custom-metadata.md).
You can use either an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -366,7 +365,7 @@ build:
> Added in [version 3.4](compose-versioning.md#version-34) file format
Build the specified stage as defined inside the `Dockerfile`. See the
[multi-stage build docs](/engine/userguide/eng-image/multistage-build.md) for
[multi-stage build docs](/develop/develop-images/multistage-build.md) for
details.
```yaml
@ -710,13 +709,12 @@ networks:
The options for `endpoint_mode` also work as flags on the swarm mode CLI command
[docker service create](/engine/reference/commandline/service_create.md). For a
quick list of all swarm related `docker` commands, see [Swarm mode CLI
commands](/engine/swarm.md#swarm-mode-key-concepts-and-tutorial).
quick list of all swarm related `docker` commands, see
[Swarm mode CLI commands](/engine/swarm/index.md#swarm-mode-key-concepts-and-tutorial).
To learn more about service discovery and networking in swarm mode, see
[Configure service
discovery](/engine/swarm/networking.md#configure-service-discovery) in the swarm
mode topics.
[Configure service discovery](/engine/swarm/networking.md#configure-service-discovery)
in the swarm mode topics.
#### labels
@ -749,9 +747,8 @@ services:
Either `global` (exactly one container per swarm node) or `replicated` (a
specified number of containers). The default is `replicated`. (To learn more,
see [Replicated and global
services](/engine/swarm/how-swarm-mode-works/services/#replicated-and-global-services)
in the [swarm](/engine/swarm/) topics.)
see [Replicated and global services](/engine/swarm/how-swarm-mode-works/services.md#replicated-and-global-services)
in the [swarm](/engine/swarm/index.md) topics.)
```yaml
@ -808,11 +805,11 @@ Configures resource constraints.
> The `resources` section replaces the [older resource constraint options](compose-file-v2.md#cpu-and-other-resources)
> in Compose files prior to version 3 (`cpu_shares`, `cpu_quota`, `cpuset`,
> `mem_limit`, `memswap_limit`, `mem_swappiness`).
> Refer to [Upgrading version 2.x to 3.x](/compose/compose-file/compose-versioning.md#upgrading)
> Refer to [Upgrading version 2.x to 3.x](compose-versioning.md#upgrading)
> to learn about differences between version 2 and 3 of the compose-file format.
Each of these is a single value, analogous to its [docker service
create](/engine/reference/commandline/service_create.md) counterpart.
Each of these is a single value, analogous to its
[docker service create](/engine/reference/commandline/service_create.md) counterpart.
In this general example, the `redis` service is constrained to use no more than
50M of memory and `0.50` (50% of a single core) of available processing time (CPU),
@ -841,8 +838,7 @@ services or containers in a swarm.
> The options described here are specific to the
`deploy` key and swarm mode. If you want to set resource constraints
on non swarm deployments, use
[Compose file format version 2 CPU, memory, and other resource
options](compose-file-v2.md#cpu-and-other-resources).
[Compose file format version 2 CPU, memory, and other resource options](compose-file-v2.md#cpu-and-other-resources).
If you have further questions, refer to the discussion on the GitHub
issue [docker/compose/4513](https://github.com/docker/compose/issues/4513){: target="_blank" class="_"}.
{: .important}
@ -853,8 +849,7 @@ If your services or containers attempt to use more memory than the system has
available, you may experience an Out Of Memory Exception (OOME) and a container,
or the Docker daemon, might be killed by the kernel OOM killer. To prevent this
from happening, ensure that your application runs on hosts with adequate memory
and see [Understand the risks of running out of
memory](/engine/admin/resource_constraints.md#understand-the-risks-of-running-out-of-memory).
and see [Understand the risks of running out of memory](/config/containers/resource_constraints.md#understand-the-risks-of-running-out-of-memory).
#### restart_policy
@ -1286,7 +1281,7 @@ for details.
### labels
Add metadata to containers using [Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either an array or a dictionary.
Add metadata to containers using [Docker labels](/config/labels-custom-metadata.md). You can use either an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from conflicting with those used by other software.
@ -1310,7 +1305,7 @@ labels:
>
> The `--link` flag is a legacy feature of Docker. It may eventually be removed.
> Unless you absolutely need to continue using it, we recommend that you use
> [user-defined networks](/engine/userguide/networking/#user-defined-networks)
> [user-defined networks](/compose/networking.md)
> to facilitate communication between two containers instead of using `--link`.
>
> One feature that user-defined networks do not support that you can do with
@ -1365,7 +1360,7 @@ logging:
The `driver` name specifies a logging driver for the service's
containers, as with the ``--log-driver`` option for docker run
([documented here](/engine/admin/logging/overview.md)).
([documented here](/config/containers/logging/configure.md)).
The default value is json-file.
@ -1395,7 +1390,7 @@ options:
syslog-address: "tcp://192.168.0.42:123"
```
The default driver [json-file](/engine/admin/logging/overview.md#json-file), has options to limit the amount of logs stored. To do this, use a key-value pair for maximum storage size and maximum number of files:
The default driver [json-file](/config/containers/logging/json-file.md), has options to limit the amount of logs stored. To do this, use a key-value pair for maximum storage size and maximum number of files:
```yaml
options:
@ -1425,10 +1420,10 @@ services:
> Logging options available depend on which logging driver you use
>
> The above example for controlling log files and sizes uses options
> specific to the [json-file driver](/engine/admin/logging/overview.md#json-file).
> specific to the [json-file driver](/config/containers/logging/json-file.md).
> These particular options are not available on other logging drivers.
> For a full list of supported logging drivers and their options, refer to the
> [logging drivers](/engine/admin/logging/overview.md) documentation.
> [logging drivers](/config/containers/logging/configure.md) documentation.
### network_mode
@ -1540,7 +1535,7 @@ The corresponding network configuration in the
[top-level networks section](#network-configuration-reference) must have an
`ipam` block with subnet configurations covering each static address.
> If IPv6 addressing is desired, the [`enable_ipv6`](compose-file-v2.md##enable_ipv6)
> If IPv6 addressing is desired, the [`enable_ipv6`](compose-file-v2.md#enable_ipv6)
> option must be set, and you must use a [version 2.x Compose file](compose-file-v2.md#ipv4_address-ipv6_address).
> _IPv6 options do not currently work in swarm mode_.
@ -1766,7 +1761,7 @@ security_opt:
Specify how long to wait when attempting to stop a container if it doesn't
handle SIGTERM (or whatever stop signal has been specified with
[`stop_signal`](#stopsignal)), before sending SIGKILL. Specified
[`stop_signal`](#stop_signal)), before sending SIGKILL. Specified
as a [duration](#specifying-durations).
```yaml
@ -1809,8 +1804,8 @@ sysctls:
You can only use sysctls that are namespaced in the kernel. Docker does not
support changing sysctls inside a container that also modify the host system.
For an overview of supported sysctls, refer to [configure namespaced kernel
parameters (sysctls) at runtime](/engine/reference/commandline/run/#configure-namespaced-kernel-parameters-sysctls-at-runtime).
For an overview of supported sysctls, refer to
[configure namespaced kernel parameters (sysctls) at runtime](/engine/reference/commandline/run.md#configure-namespaced-kernel-parameters-sysctls-at-runtime).
> Note when using docker stack deploy
>
@ -1869,7 +1864,7 @@ userns_mode: "host"
```
Disables the user namespace for this service, if Docker daemon is configured with user namespaces.
See [dockerd](/engine/reference/commandline/dockerd.md#disable-user-namespace-for-a-container) for
See [dockerd](/engine/reference/commandline/dockerd/#disable-user-namespace-for-a-container) for
more information.
> Note when using docker stack deploy
@ -1931,8 +1926,8 @@ volumes:
> **Note**
>
> For general information on volumes, refer to the [use volumes](/engine/admin/volumes/volumes.md)
> and [volume plugins](/engine/extend/plugins_volume.md) sections in the documentation.
> For general information on volumes, refer to the [use volumes](/storage/volumes.md)
> and [volume plugins](/engine/extend/plugins_volume/) sections in the documentation.
#### Short syntax
@ -2017,7 +2012,7 @@ volumes:
> When creating bind mounts, using the long syntax requires the
> referenced folder to be created beforehand. Using the short syntax
> creates the folder on the fly if it doesn't exist.
> See the [bind mounts documentation](/engine/admin/volumes/bind-mounts.md/#differences-between--v-and---mount-behavior)
> See the [bind mounts documentation](/storage/bind-mounts.md#differences-between--v-and---mount-behavior)
> for more information.
#### Volumes for services, swarms, and stack files
@ -2038,10 +2033,10 @@ constraints on the service so that its tasks are deployed on a node that has the
volume present.
As an example, the `docker-stack.yml` file for the
[votingapp sample in Docker
Labs](https://github.com/docker/labs/blob/master/beginner/chapters/votingapp.md) defines a service called `db` that runs a `postgres` database. It is
configured as a named volume to persist the data on the swarm,
_and_ is constrained to run only on `manager` nodes. Here is the relevant snip-it from that file:
[votingapp sample in Docker Labs](https://github.com/docker/labs/blob/master/beginner/chapters/votingapp.md)
defines a service called `db` that runs a `postgres` database. It is configured
as a named volume to persist the data on the swarm, _and_ is constrained to run
only on `manager` nodes. Here is the relevant snip-it from that file:
```yaml
version: "{{ site.compose_file_v3 }}"
@ -2087,8 +2082,8 @@ services:
```
Full detail on these flags, the problems they solve, and their
`docker run` counterparts is in the Docker Desktop for Mac topic [Performance tuning for
volume mounts (shared filesystems)](/docker-for-mac/osxfs-caching.md).
`docker run` counterparts is in the Docker Desktop for Mac topic
[Performance tuning for volume mounts (shared filesystems)](/docker-for-mac/osxfs-caching.md).
### domainname, hostname, ipc, mac\_address, privileged, read\_only, shm\_size, stdin\_open, tty, user, working\_dir
@ -2151,8 +2146,8 @@ easily retrieved and inspected using the docker command line or API.
See the [docker volume](/engine/reference/commandline/volume_create.md)
subcommand documentation for more information.
See [use volumes](/engine/admin/volumes/volumes.md) and [volume
plugins](/engine/extend/plugins_volume.md) for general information on volumes.
See [use volumes](/storage/volumes.md) and [volume
plugins](/engine/extend/plugins_volume/) for general information on volumes.
Here's an example of a two-service setup where a database's data directory is
shared with another service as a volume so that it can be periodically backed
@ -2251,18 +2246,18 @@ volumes:
> Note when using docker stack deploy
>
> External volumes that do not exist _are created_ if you use [docker stack
> deploy](#deploy) to launch the app in [swarm mode](/engine/swarm/index.md)
> (instead of [docker compose up](/compose/reference/up.md)). In swarm mode, a
> volume is automatically created when it is defined by a service. As service
> tasks are scheduled on new nodes, [swarmkit](https://github.com/docker/swarmkit/blob/master/README.md)
> External volumes that do not exist _are created_ if you use [docker stack deploy](#deploy)
> to launch the app in [swarm mode](/engine/swarm/index.md) (instead of
> [docker compose up](/compose/reference/up.md)). In swarm mode, a volume is
> automatically created when it is defined by a service. As service tasks are
> scheduled on new nodes, [swarmkit](https://github.com/docker/swarmkit/blob/master/README.md)
> creates the volume on the local node. To learn more, see [moby/moby#29976](https://github.com/moby/moby/issues/29976).
{: .important }
### labels
Add metadata to containers using
[Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either
[Docker labels](/config/labels-custom-metadata.md). You can use either
an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -2314,8 +2309,7 @@ The top-level `networks` key lets you specify networks to be created.
* For a full explanation of Compose's use of Docker networking features and all
network driver options, see the [Networking guide](/compose/networking.md).
* For [Docker Labs](https://github.com/docker/labs/blob/master/README.md)
tutorials on networking, start with [Designing Scalable, Portable Docker
Container Networks](https://github.com/docker/labs/blob/master/networking/README.md)
tutorials on networking, start with [Designing Scalable, Portable Docker Container Networks](https://github.com/docker/labs/blob/master/networking/README.md)
### driver
@ -2334,22 +2328,21 @@ driver: overlay
#### bridge
Docker defaults to using a `bridge` network on a single host. For examples of
how to work with bridge networks, see the Docker Labs tutorial on [Bridge
networking](https://github.com/docker/labs/blob/master/networking/A2-bridge-networking.md).
how to work with bridge networks, see the Docker Labs tutorial on
[Bridge networking](https://github.com/docker/labs/blob/master/networking/A2-bridge-networking.md).
#### overlay
The `overlay` driver creates a named network across multiple nodes in a
[swarm](/engine/swarm/).
[swarm](/engine/swarm/index.md).
* For a working example of how to build and use an
`overlay` network with a service in swarm mode, see the Docker Labs tutorial on
[Overlay networking and service
discovery](https://github.com/docker/labs/blob/master/networking/A3-overlay-networking.md).
[Overlay networking and service discovery](https://github.com/docker/labs/blob/master/networking/A3-overlay-networking.md).
* For an in-depth look at how it works under the hood, see the
networking concepts lab on the [Overlay Driver Network
Architecture](https://github.com/docker/labs/blob/master/networking/concepts/06-overlay-networks.md).
networking concepts lab on the
[Overlay Driver Network Architecture](https://github.com/docker/labs/blob/master/networking/concepts/06-overlay-networks.md).
#### host or none
@ -2475,7 +2468,7 @@ you can set this option to `true`.
### labels
Add metadata to containers using
[Docker labels](/engine/userguide/labels-custom-metadata.md). You can use either
[Docker labels](/config/labels-custom-metadata.md). You can use either
an array or a dictionary.
It's recommended that you use reverse-DNS notation to prevent your labels from
@ -2688,5 +2681,5 @@ stack.
- [User guide](/compose/index.md)
- [Installing Compose](/compose/install.md)
- [Compose file versions and upgrading](compose-versioning.md)
- [Samples](/samples/)
- [Command line reference](/compose/reference/)
- [Samples](/samples/index.md)
- [Command line reference](/compose/reference/index.md)

View File

@ -20,9 +20,8 @@ and a `docker-compose.yml` file. (You can use either a `.yml` or `.yaml` extensi
The Dockerfile defines an application's image content via one or more build
commands that configure that image. Once built, you can run the image in a
container. For more information on `Dockerfile`, see the [Docker user
guide](/engine/tutorials/dockerimages.md#building-an-image-from-a-dockerfile)
and the [Dockerfile reference](/engine/reference/builder.md).
container. For more information on `Dockerfile`, see the [Docker user guide](/get-started/index.md)
and the [Dockerfile reference](/engine/reference/builder/).
3. Add the following content to the `Dockerfile`.
@ -58,7 +57,7 @@ and a `docker-compose.yml` file. (You can use either a `.yml` or `.yaml` extensi
also describes which Docker images these services use, how they link
together, any volumes they might need mounted inside the containers.
Finally, the `docker-compose.yml` file describes which ports these services
expose. See the [`docker-compose.yml` reference](compose-file.md) for more
expose. See the [`docker-compose.yml` reference](/compose/compose-file/index.md) for more
information on how this file works.
9. Add the following configuration to the file.
@ -91,7 +90,7 @@ In this step, you create a Django starter project by building the image from the
1. Change to the root of your project directory.
2. Create the Django project by running
the [docker-compose run](/compose/reference/run/) command as follows.
the [docker-compose run](/compose/reference/run.md) command as follows.
sudo docker-compose run web django-admin startproject composeexample .
@ -152,12 +151,12 @@ In this section, you set up the database connection for Django.
}
These settings are determined by the
[postgres](https://hub.docker.com/images/postgres) Docker image
[postgres](https://hub.docker.com/_/postgres) Docker image
specified in `docker-compose.yml`.
3. Save and close the file.
4. Run the [docker-compose up](/compose/reference/up/) command from the top level directory for your project.
4. Run the [docker-compose up](/compose/reference/up.md) command from the top level directory for your project.
```none
$ docker-compose up
@ -223,7 +222,7 @@ def85eff5f51 django_web "python3 manage.py..." 10 minutes ago
Killing test_db_1 ... done
```
* Or, for a more elegant shutdown, switch to a different shell, and run [docker-compose down](/compose/reference/down/) from the top level of your Django sample project directory.
* Or, for a more elegant shutdown, switch to a different shell, and run [docker-compose down](/compose/reference/down.md) from the top level of your Django sample project directory.
```none
vmb at mymachine in ~/sandbox/django
@ -245,5 +244,5 @@ def85eff5f51 django_web "python3 manage.py..." 10 minutes ago
- [Getting Started](gettingstarted.md)
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -20,10 +20,10 @@ These syntax rules apply to the `.env` file:
## Compose file and CLI variables
The environment variables you define here are used for [variable
substitution](compose-file/index.md#variable-substitution) in your Compose file,
and can also be used to define the following [CLI
variables](reference/envvars.md):
The environment variables you define here are used for
[variable substitution](/compose/compose-file/index.md#variable-substitution)
in your Compose file, and can also be used to define the following
[CLI variables](/compose/reference/envvars.md):
- `COMPOSE_API_VERSION`
- `COMPOSE_CONVERT_WINDOWS_PATHS`
@ -37,19 +37,18 @@ variables](reference/envvars.md):
> **Notes**
>
> * Values present in the environment at runtime always override
those defined inside the `.env` file. Similarly, values passed via command-line
arguments take precedence as well.
>
> * Environment variables defined in the `.env` file are not
automatically visible inside containers. To set container-applicable
environment variables, follow the guidelines in the topic [Environment variables
in Compose](/compose/environment-variables.md), which describes how to pass
shell environment variables through to containers, define environment variables
in Compose files, and more.
> * Values present in the environment at runtime always override those defined
> inside the `.env` file. Similarly, values passed via command-line arguments
> take precedence as well.
> * Environment variables defined in the `.env` file are not automatically
> visible inside containers. To set container-applicable environment variables,
> follow the guidelines in the topic
> [Environment variables in Compose](/compose/environment-variables.md), which
> describes how to pass shell environment variables through to containers,
> define environment variables in Compose files, and more.
## More Compose documentation
- [User guide](index.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -19,14 +19,14 @@ web:
```
For more information, see the
[Variable substitution](compose-file.md#variable-substitution) section in the
[Variable substitution](/compose/compose-file/index.md#variable-substitution) section in the
Compose file reference.
## Set environment variables in containers
You can set environment variables in a service's containers with the
['environment' key](compose-file.md#environment), just like with
['environment' key](/compose/compose-file/index.md#environment), just like with
`docker run -e VARIABLE=VALUE ...`:
```yaml
@ -38,7 +38,7 @@ web:
## Pass environment variables to containers
You can pass environment variables from your shell straight through to a
service's containers with the ['environment' key](compose-file.md#environment)
service's containers with the ['environment' key](/compose/compose-file/index.md#environment)
by not giving them a value, just like with `docker run -e VARIABLE ...`:
```yaml
@ -53,7 +53,7 @@ the same variable in the shell in which Compose is run.
## The “env_file” configuration option
You can pass multiple environment variables from an external file through to
a service's containers with the ['env_file' option](compose-file.md#env_file),
a service's containers with the ['env_file' option](/compose/compose-file/index.md#env_file),
just like with `docker run --env-file=FILE ...`:
```yaml
@ -180,8 +180,8 @@ documented in [CLI Environment Variables](reference/envvars.md).
## Environment variables created by links
When using the ['links' option](compose-file.md#links) in a
[v1 Compose file](compose-file.md#version-1), environment variables are created
When using the ['links' option](/compose/compose-file/index.md#links) in a
[v1 Compose file](/compose/compose-file/index.md#version-1), environment variables are created
for each link. They are documented in
the [Link environment variables reference](link-env-deprecated.md).

View File

@ -25,14 +25,14 @@ contain configuration overrides for existing services or entirely new
services.
If a service is defined in both files, Compose merges the configurations using
the rules described in [Adding and overriding
configuration](extends.md#adding-and-overriding-configuration).
the rules described in
[Adding and overriding configuration](extends.md#adding-and-overriding-configuration).
To use multiple override files, or an override file with a different name, you
can use the `-f` option to specify the list of files. Compose merges files in
the order they're specified on the command line. See the [`docker-compose`
command reference](/compose/reference/overview.md) for more information about
using `-f`.
the order they're specified on the command line. See the
[`docker-compose` command reference](/compose/reference/overview.md) for more information
about using `-f`.
When you use multiple configuration files, you must make sure all paths in the
files are relative to the base Compose file (the first Compose file specified
@ -159,17 +159,16 @@ backup, include the `docker-compose.admin.yml` as well.
## Extending services
> **Note**: The `extends` keyword is supported in earlier Compose file formats
up to Compose file version 2.1 (see [extends in
v1](/compose/compose-file/compose-file-v1.md#extends) and [extends in
v2](/compose/compose-file/compose-file-v2.md#extends)), but is not supported in
Compose version 3.x. See the [Version 3
summary](/compose/compose-file/compose-versioning.md#version-3) of keys added
and removed, along with information on [how to
upgrade](/compose/compose-file/compose-versioning.md#upgrading). See
[moby/moby#31101](https://github.com/moby/moby/issues/31101) to follow the
discussion thread on possibility of adding support for `extends` in some form in
future versions.
> **Note**
>
> The `extends` keyword is supported in earlier Compose file formats up to Compose
> file version 2.1 (see [extends in v1](/compose/compose-file/compose-file-v1.md#extends)
> and [extends in v2](/compose/compose-file/compose-file-v2.md#extends)), but is
> not supported in Compose version 3.x. See the [Version 3 summary](/compose/compose-file/compose-versioning.md#version-3)
> of keys added and removed, along with information on [how to upgrade](/compose/compose-file/compose-versioning.md#upgrading).
> See [moby/moby#31101](https://github.com/moby/moby/issues/31101) to follow the
> discussion thread on possibility of adding support for `extends` in some form in
> future versions.
Docker Compose's `extends` keyword enables sharing of common configurations
among different files, or even different projects entirely. Extending services
@ -376,5 +375,5 @@ container:
- [Get started with Django](django.md)
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -16,7 +16,7 @@ Yes - see [Controlling startup order](startup-order.md).
## Why do my services take 10 seconds to recreate or stop?
Compose stop attempts to stop a container by sending a `SIGTERM`. It then waits
for a [default timeout of 10 seconds](./reference/stop.md). After the timeout,
for a [default timeout of 10 seconds](/compose/reference/stop.md). After the timeout,
a `SIGKILL` is sent to the container to forcefully kill it. If you
are waiting for this timeout, it means that your containers aren't shutting down
when they receive the `SIGTERM` signal.
@ -54,9 +54,8 @@ handling `SIGTERM` properly.
Compose uses the project name to create unique identifiers for all of a
project's containers and other resources. To run multiple copies of a project,
set a custom project name using the [`-p` command line
option](./reference/overview.md) or the [`COMPOSE_PROJECT_NAME`
environment variable](./reference/envvars.md#compose-project-name).
set a custom project name using the [`-p` command line option](/compose/reference/overview.md)
or the [`COMPOSE_PROJECT_NAME` environment variable](/compose/reference/envvars.md#compose_project_name).
## What's the difference between `up`, `run`, and `start`?
@ -116,5 +115,5 @@ github](https://github.com/search?q=in%3Apath+docker-compose.yml+extension%3Ayml
- [Get started with Django](django.md)
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -11,9 +11,9 @@ understandable even if you're not familiar with it.
## Prerequisites
Make sure you have already installed both [Docker Engine](/install/index.md) and [Docker
Compose](install.md). You don't need to install Python or Redis, as both are
provided by Docker images.
Make sure you have already installed both [Docker Engine](/install/index.md)
and [Docker Compose](install.md). You don't need to install Python or Redis, as
both are provided by Docker images.
## Step 1: Setup
@ -102,9 +102,9 @@ This tells Docker to:
* Copy the current directory `.` in the project to the workdir `.` in the image.
* Set the default command for the container to `flask run`.
For more information on how to write Dockerfiles, see the [Docker user
guide](/engine/tutorials/dockerimages.md#building-an-image-from-a-dockerfile)
and the [Dockerfile reference](/engine/reference/builder.md).
For more information on how to write Dockerfiles, see the
[Docker user guide](/develop/index.md)
and the [Dockerfile reference](/engine/reference/builder/).
## Step 3: Define services in a Compose file
@ -214,7 +214,8 @@ hitting CTRL+C in the original terminal where you started the app.
## Step 5: Edit the Compose file to add a bind mount
Edit `docker-compose.yml` in your project directory to add a [bind mount](/engine/admin/volumes/bind-mounts.md) for the `web` service:
Edit `docker-compose.yml` in your project directory to add a
[bind mount](/storage/bind-mounts.md) for the `web` service:
version: '3'
services:
@ -262,11 +263,10 @@ If you get runtime errors indicating an application file is not found, a volume
mount is denied, or a service cannot start, try enabling file or drive sharing.
Volume mounting requires shared drives for projects that live outside of
`C:\Users` (Windows) or `/Users` (Mac), and is required for _any_ project on
Docker Desktop for Windows that uses [Linux
containers](/docker-for-windows/#switch-between-windows-and-linux-containers-beta-feature). For more information, see [Shared Drives](../docker-for-windows/#shared-drives)
on Docker Desktop for Windows, [File sharing](../docker-for-mac/#file-sharing) on Docker
for Mac, and the general examples on how to [Manage data in
containers](../engine/tutorials/dockervolumes.md).
Docker Desktop for Windows that uses [Linux containers](/docker-for-windows/index.md#switch-between-windows-and-linux-containers).
For more information, see [File sharing](/docker-for-mac/index.md#file-sharing) on Docker
for Mac, and the general examples on how to
> [Manage data in containers](/storage/volumes.md).
>
> * If you are using Oracle VirtualBox on an older Windows OS, you might encounter an issue with shared folders as described in this [VB trouble
ticket](https://www.virtualbox.org/ticket/14920). Newer Windows systems meet the
@ -332,7 +332,7 @@ At this point, you have seen the basics of how Compose works.
## Where to go next
- Next, try the quick start guide for [Django](django.md),
[Rails](rails.md), or [WordPress](/samples/library/wordpress/)
- [Explore the full list of Compose commands](./reference/)
- [Compose configuration file reference](compose-file/)
- To learn more about volumes and bind mounts, see [Manage data in Docker](/engine/admin/volumes/index.md)
[Rails](rails.md), or [WordPress](wordpress.md)
- [Explore the full list of Compose commands](/compose/reference/index.md)
- [Compose configuration file reference](/compose/compose-file/index.md)
- To learn more about volumes and bind mounts, see [Manage data in Docker](/storage/index.md)

View File

@ -47,7 +47,7 @@ A `docker-compose.yml` looks like this:
logvolume01: {}
For more information about the Compose file, see the
[Compose file reference](compose-file/index.md).
[Compose file reference](/compose/compose-file/index.md).
Compose has commands for managing the whole lifecycle of your application:
@ -64,8 +64,8 @@ Compose has commands for managing the whole lifecycle of your application:
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Frequently asked questions](faq.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file/index.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)
## Features
@ -88,8 +88,8 @@ Compose uses a project name to isolate environments from each other. You can mak
The default project name is the basename of the project directory. You can set
a custom project name by using the
[`-p` command line option](./reference/overview.md) or the
[`COMPOSE_PROJECT_NAME` environment variable](./reference/envvars.md#compose-project-name).
[`-p` command line option](/compose/reference/overview.md) or the
[`COMPOSE_PROJECT_NAME` environment variable](/compose/reference/envvars.md#compose_project_name).
### Preserve volume data when containers are created
@ -99,7 +99,7 @@ the old container to the new container. This process ensures that any data
you've created in volumes isn't lost.
If you use `docker-compose` on a Windows machine, see
[Environment variables](reference/envvars.md) and adjust the necessary environment
[Environment variables](/compose/reference/envvars.md) and adjust the necessary environment
variables for your specific needs.
@ -115,7 +115,7 @@ environment very quickly.
Compose supports variables in the Compose file. You can use these variables
to customize your composition for different environments, or different users.
See [Variable substitution](compose-file.md#variable-substitution) for more
See [Variable substitution](/compose/compose-file/index.md#variable-substitution) for more
details.
You can extend a Compose file using the `extends` field or by creating multiple
@ -133,7 +133,7 @@ When you're developing software, the ability to run an application in an
isolated environment and interact with it is crucial. The Compose command
line tool can be used to create the environment and interact with it.
The [Compose file](compose-file.md) provides a way to document and configure
The [Compose file](/compose/compose-file/index.md) provides a way to document and configure
all of the application's service dependencies (databases, queues, caches,
web service APIs, etc). Using the Compose command line tool you can create
and start one or more containers for each dependency with a single command
@ -148,7 +148,7 @@ started guide" to a single machine readable Compose file and a few commands.
An important part of any Continuous Deployment or Continuous Integration process
is the automated test suite. Automated end-to-end testing requires an
environment in which to run tests. Compose provides a convenient way to create
and destroy isolated testing environments for your test suite. By defining the full environment in a [Compose file](compose-file.md), you can create and destroy these environments in just a few commands:
and destroy isolated testing environments for your test suite. By defining the full environment in a [Compose file](/compose/compose-file/index.md), you can create and destroy these environments in just a few commands:
$ docker-compose up -d
$ ./run_tests
@ -180,8 +180,6 @@ individuals, we have a number of open channels for communication.
* To report bugs or file feature requests: use the [issue tracker on Github](https://github.com/docker/compose/issues).
* To talk about the project with people in real time: join the
`#docker-compose` channel on freenode IRC.
`#docker-compose` channel on the Docker Community Slack.
* To contribute code or documentation changes: submit a [pull request on Github](https://github.com/docker/compose/pulls).
For more information and resources, visit the [Getting Help project page](/opensource/get-help/).

View File

@ -79,7 +79,7 @@ Windows Server, follow the instructions in the Windows Server tab.
### Install Compose on Windows Server
Follow these instructions if you are running the Docker daemon and client directly
on Microsoft Windows Server with [Docker Engine - Enterprise](/install/windows/docker-ee.md),
on Microsoft Windows Server with [Docker Engine - Enterprise](/ee/docker-ee/windows/docker-ee.md),
and want to install Docker Compose.
@ -119,10 +119,11 @@ and want to install Docker Compose.
### Install Compose on Linux systems
On Linux, you can download the Docker Compose binary from the [Compose
repository release page on GitHub](https://github.com/docker/compose/releases){:
target="_blank" class="_"}. Follow the instructions from the link, which involve
running the `curl` command in your terminal to download the binaries. These step-by-step instructions are also included below.
On Linux, you can download the Docker Compose binary from the
[Compose repository release page on GitHub](https://github.com/docker/compose/releases){:target="_blank" class="_"}.
Follow the instructions from the link, which involve running the `curl` command
in your terminal to download the binaries. These step-by-step instructions are
also included below.
> For `alpine`, the following dependency packages are needed:
> `py-pip`, `python-dev`, `libffi-dev`, `openssl-dev`, `gcc`, `libc-dev`, and `make`.
@ -282,4 +283,4 @@ pip uninstall docker-compose
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](compose-file.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -7,11 +7,11 @@ title: Link environment variables (superseded)
notoc: true
---
> **Note**: Environment variables are no longer the recommended method for connecting to linked services. Instead, you should use the link name (by default, the name of the linked service) as the hostname to connect to. See the [docker-compose.yml documentation](compose-file.md#links) for details.
> **Note**: Environment variables are no longer the recommended method for connecting to linked services. Instead, you should use the link name (by default, the name of the linked service) as the hostname to connect to. See the [docker-compose.yml documentation](/compose/compose-file/#links) for details.
>
> Environment variables are only populated if you're using the [legacy version 1 Compose file format](compose-file.md#versioning).
> Environment variables are only populated if you're using the [legacy version 1 Compose file format](/compose/compose-file/compose-versioning.md#versioning).
Compose uses [Docker links](/engine/userguide/networking/default_network/dockerlinks.md)
Compose uses [Docker links](/network/links.md)
to expose services' containers to one another. Each linked container injects a set of
environment variables, each of which begins with the uppercase name of the container.
@ -39,5 +39,5 @@ Fully qualified container name, such as `DB_1_NAME=/myapp_web_1/myapp_db_1`
- [User guide](index.md)
- [Installing Compose](install.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -4,19 +4,18 @@ keywords: documentation, docs, docker, compose, orchestration, containers, netwo
title: Networking in Compose
---
> This page applies to Compose file formats [version 2](compose-file/compose-file-v2.md) and [higher](compose-file/). Networking features are not supported for Compose file [version 1 (legacy)](compose-file/compose-file-v1.md).
> This page applies to Compose file formats [version 2](/compose/compose-file/compose-file-v2.md) and [higher](/compose/compose-file/index.md). Networking features are not supported for Compose file [version 1 (legacy)](/compose/compose-file/compose-file-v1.md).
By default Compose sets up a single
[network](/engine/reference/commandline/network_create/) for your app. Each
[network](/engine/reference/commandline/network_create.md) for your app. Each
container for a service joins the default network and is both *reachable* by
other containers on that network, and *discoverable* by them at a hostname
identical to the container name.
> **Note**: Your app's network is given a name based on the "project name",
> which is based on the name of the directory it lives in. You can override the
> project name with either the [`--project-name`
> flag](reference/overview.md) or the [`COMPOSE_PROJECT_NAME` environment
> variable](reference/envvars.md#compose-project-name).
> project name with either the [`--project-name` flag](/compose/reference/overview.md)
> or the [`COMPOSE_PROJECT_NAME` environment variable](/compose/reference/envvars.md#compose_project_name).
For example, suppose your app is in a directory called `myapp`, and your `docker-compose.yml` looks like this:
@ -83,15 +82,15 @@ Links allow you to define extra aliases by which a service is reachable from ano
db:
image: postgres
See the [links reference](compose-file/compose-file-v2.md#links) for more information.
See the [links reference](/compose/compose-file/compose-file-v2.md#links) for more information.
## Multi-host networking
> **Note**: The instructions in this section refer to [legacy Docker Swarm](/compose/swarm.md) operations, and only work when targeting a legacy Swarm cluster. For instructions on deploying a compose project to the newer integrated swarm mode, consult the [Docker Stacks](/compose/bundles.md) documentation.
> **Note**: The instructions in this section refer to [legacy Docker Swarm](swarm.md) operations, and only work when targeting a legacy Swarm cluster. For instructions on deploying a compose project to the newer integrated swarm mode, consult the [Docker Stacks](/engine/reference/commandline/stack_deploy.md) documentation.
When [deploying a Compose application to a Swarm cluster](swarm.md), you can make use of the built-in `overlay` driver to enable multi-host communication between containers with no changes to your Compose file or application code.
Consult the [Getting started with multi-host networking](/engine/userguide/networking/get-started-overlay/) to see how to set up a Swarm cluster. The cluster uses the `overlay` driver by default, but you can specify it explicitly if you prefer - see below for how to do this.
Consult the [Getting started with multi-host networking](/network/network-tutorial-overlay.md) to see how to set up a Swarm cluster. The cluster uses the `overlay` driver by default, but you can specify it explicitly if you prefer - see below for how to do this.
## Specify custom networks
@ -129,9 +128,9 @@ Here's an example Compose file defining two custom networks. The `proxy` service
foo: "1"
bar: "2"
Networks can be configured with static IP addresses by setting the [ipv4_address and/or ipv6_address](compose-file/compose-file-v2.md#ipv4-address-ipv6-address) for each attached network.
Networks can be configured with static IP addresses by setting the [ipv4_address and/or ipv6_address](/compose/compose-file/compose-file-v2.md#ipv4_address-ipv6_address) for each attached network.
Networks can also be given a [custom name](compose-file/index.md#name-1) (since version 3.5):
Networks can also be given a [custom name](/compose/compose-file/index.md#network-configuration-reference) (since version 3.5):
version: "3.5"
networks:
@ -141,8 +140,8 @@ Networks can also be given a [custom name](compose-file/index.md#name-1) (since
For full details of the network configuration options available, see the following references:
- [Top-level `networks` key](compose-file/compose-file-v2.md#network-configuration-reference)
- [Service-level `networks` key](compose-file/compose-file-v2.md#networks)
- [Top-level `networks` key](/compose/compose-file/compose-file-v2.md#network-configuration-reference)
- [Service-level `networks` key](/compose/compose-file/compose-file-v2.md#networks)
## Configure the default network
@ -165,7 +164,7 @@ Instead of (or as well as) specifying your own networks, you can also change the
## Use a pre-existing network
If you want your containers to join a pre-existing network, use the [`external` option](compose-file/compose-file-v2.md#network-configuration-reference):
If you want your containers to join a pre-existing network, use the [`external` option](/compose/compose-file/compose-file-v2.md#network-configuration-reference):
networks:
default:

View File

@ -76,5 +76,5 @@ Read more about the Compose/Swarm integration in the
## Compose documentation
- [Installing Compose](install.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -33,9 +33,8 @@ Dockerfile consists of:
That'll put your application code inside an image that builds a container
with Ruby, Bundler and all your dependencies inside it. For more information on
how to write Dockerfiles, see the [Docker user
guide](/engine/tutorials/dockerimages.md#building-an-image-from-a-dockerfile)
and the [Dockerfile reference](/engine/reference/builder.md).
how to write Dockerfiles, see the [Docker user guide](/get-started/index.md)
and the [Dockerfile reference](/engine/reference/builder/).
Next, create a bootstrap `Gemfile` which just loads Rails. It'll be overwritten
in a moment by `rails new`.
@ -90,7 +89,7 @@ to link them together and expose the web app's port.
### Build the project
With those files in place, you can now generate the Rails skeleton app
using [docker-compose run](/compose/reference/run/):
using [docker-compose run](/compose/reference/run.md):
docker-compose run web rails new . --force --no-deps --database=postgresql
@ -170,7 +169,7 @@ test:
database: myapp_test
```
You can now boot the app with [docker-compose up](/compose/reference/up/):
You can now boot the app with [docker-compose up](/compose/reference/up.md):
docker-compose up
@ -218,7 +217,7 @@ MACHINE_VM` returns the Docker host IP address, to which you can append the port
### Stop the application
To stop the application, run [docker-compose down](/compose/reference/down/) in
To stop the application, run [docker-compose down](/compose/reference/down.md) in
your project directory. You can use the same terminal window in which you
started the database, or another one where you have access to a command prompt.
This is a clean way to stop the application.
@ -270,5 +269,5 @@ host.
- [Getting Started](gettingstarted.md)
- [Get started with Django](django.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -22,8 +22,8 @@ Options:
Services are built once and then tagged, by default as `project_service`. For
example, `composetest_db`. If the Compose file specifies an
[image](/compose/compose-file/index.md#image) name, the image is
tagged with that name, substituting any variables beforehand. See [variable
substitution](/compose/compose-file/#variable-substitution).
tagged with that name, substituting any variables beforehand. See
[variable substitution](/compose/compose-file/index.md#variable-substitution).
If you change a service's Dockerfile or the contents of its
build directory, run `docker-compose build` to rebuild it.

View File

@ -93,7 +93,7 @@ using this character as path separator.
## COMPOSE\_FORCE\_WINDOWS\_HOST
If set, volume declarations using the [short syntax](../compose-file/index.md#short-syntax-3)
If set, volume declarations using the [short syntax](/compose/compose-file/#short-syntax-3)
are parsed assuming the host path is a Windows path, even if Compose is
running on a UNIX-based system.
Supported values: `true` or `1` to enable, `false` or `0` to disable.
@ -119,5 +119,5 @@ Supported: `true` or `1` to enable, `false` or `0` to disable.
- [User guide](/compose/index.md)
- [Installing Compose](/compose/install.md)
- [Compose file reference](/compose/compose-file.md)
- [Compose file reference](/compose/compose-file/index.md)
- [Environment file](/compose/env-file.md)

View File

@ -31,4 +31,4 @@ format:
}
```
The events that can be received using this can be seen [here](/engine/reference/commandline/events/#object-types).
The events that can be received using this can be seen [here](/engine/reference/commandline/events.md#object-types).

View File

@ -135,9 +135,9 @@ a [COMPOSE_FILE environment variable](envvars.md#compose_file) in your shell or
in an environment file.
For an example of using the `-f` option at the command line, suppose you are
running the [Compose Rails sample](/compose/rails/), and
running the [Compose Rails sample](/compose/rails.md), and
have a `docker-compose.yml` file in a directory called `sandbox/rails`. You can
use a command like [docker-compose pull](/compose/reference/pull.md) to get the
use a command like [docker-compose pull](pull.md) to get the
postgres image for the `db` service from anywhere by using the `-f` flag as
follows: `docker-compose -f ~/sandbox/rails/docker-compose.yml pull db`
@ -168,8 +168,7 @@ Status: Downloaded newer image for postgres:latest
Each configuration has a project name. If you supply a `-p` flag, you can
specify a project name. If you don't specify the flag, Compose uses the current
directory name. See also the [COMPOSE_PROJECT_NAME environment variable](
envvars.md#compose_project_name).
directory name. See also the [COMPOSE_PROJECT_NAME environment variable](envvars.md#compose_project_name).
## Set up environment variables
@ -177,11 +176,10 @@ You can set [environment variables](envvars.md) for various
`docker-compose` options, including the `-f` and `-p` flags.
For example, the [COMPOSE_FILE environment variable](envvars.md#compose_file)
relates to the `-f` flag, and [COMPOSE_PROJECT_NAME environment
variable](envvars.md#compose_project_name) relates to the `-p` flag.
relates to the `-f` flag, and `COMPOSE_PROJECT_NAME`
[environment variable](envvars.md#compose_project_name) relates to the `-p` flag.
Also, you can set some of these variables in an [environment
file](/compose/env-file.md).
Also, you can set some of these variables in an [environment file](/compose/env-file.md).
## Where to go next

View File

@ -657,8 +657,8 @@ naming scheme accordingly before upgrading.
- Added support for `extra_hosts` in build configuration
- Added support for the [long syntax](/compose/compose-file.md#long-syntax-3) for volume entries, as previously introduced in the 3.2 format.
Using this syntax will create [mounts](/engine/admin/volumes/bind-mounts.md) instead of volumes.
- Added support for the [long syntax](/compose/compose-file/index.md#long-syntax-3) for volume entries, as previously introduced in the 3.2 format.
Using this syntax will create [mounts](/storage/bind-mounts.md) instead of volumes.
#### Compose file version 2.1 and up
@ -1986,8 +1986,8 @@ Several new configuration keys have been added to `docker-compose.yml`:
- `pid: host`, like `docker run --pid=host`, lets you reuse the same PID namespace as the host machine.
- `cpuset`, like `docker run --cpuset-cpus`, lets you specify which CPUs to allow execution in.
- `read_only`, like `docker run --read-only`, lets you mount a container's filesystem as read-only.
- `security_opt`, like `docker run --security-opt`, lets you specify [security options](https://docs.docker.com/engine/reference/run/#security-configuration).
- `log_driver`, like `docker run --log-driver`, lets you specify a [log driver](https://docs.docker.com/engine/reference/run/#logging-drivers-log-driver).
- `security_opt`, like `docker run --security-opt`, lets you specify [security options](/engine/reference/run/#security-configuration).
- `log_driver`, like `docker run --log-driver`, lets you specify a [log driver](/engine/reference/run/#logging-drivers-log-driver).
### Bug Fixes
@ -2072,7 +2072,7 @@ The highlights:
This means the GitHub repository has moved to [https://github.com/docker/fig](https://github.com/docker/fig) and our IRC channel is now #docker-fig on Freenode.
- Fig can be used with the [official Docker OS X installer](https://docs.docker.com/installation/mac/). Boot2Docker will mount the home directory from your host machine so volumes work as expected.
- Fig can be used with the [official Docker OS X installer](/docker-for-mac/install.md). Boot2Docker will mount the home directory from your host machine so volumes work as expected.
- Fig supports Docker 1.3.

View File

@ -5,20 +5,20 @@ title: Sample apps with Compose
---
The following samples show the various aspects of how to work with Docker
Compose. As a prerequisite, be sure to [install Docker
Compose](/compose/install/) if you have not already done so.
Compose. As a prerequisite, be sure to [install Docker Compose](/compose/install.md)
if you have not already done so.
## Key concepts these samples cover
The samples should help you to:
- define services based on Docker images using
[Compose files](/compose/compose-file.md) `docker-compose.yml` and
[Compose files](/compose/compose-file/index.md) `docker-compose.yml` and
`docker-stack.yml` files
- understand the relationship between `docker-compose.yml` and
[Dockerfiles](/engine/reference/builder.md)
[Dockerfiles](/engine/reference/builder/)
- learn how to make calls to your application services from Compose files
- learn how to deploy applications and services to a [swarm](/engine/swarm.md)
- learn how to deploy applications and services to a [swarm](/engine/swarm/index.md)
## Samples tailored to demo Compose
@ -31,4 +31,4 @@ Docker Compose to set up and run a Rails/PostgreSQL app.
- [Quickstart: Compose and WordPress](/compose/wordpress.md) - Shows how to
use Docker Compose to set up and run WordPress in an isolated environment
with Docker containers.
with Docker containers.

View File

@ -6,7 +6,7 @@ notoc: true
---
You can control the order of service startup and shutdown with the
[depends_on](compose-file.md#depends-on) option. Compose always starts and stops
[depends_on](/compose/compose-file/index.md#depends_on) option. Compose always starts and stops
containers in dependency order, where dependencies are determined by
`depends_on`, `links`, `volumes_from`, and `network_mode: "service:..."`.
@ -84,5 +84,5 @@ script:
- [Get started with Django](django.md)
- [Get started with Rails](rails.md)
- [Get started with WordPress](wordpress.md)
- [Command line reference](./reference/index.md)
- [Compose file reference](compose-file.md)
- [Command line reference](/compose/reference/index.md)
- [Compose file reference](/compose/compose-file/index.md)

View File

@ -10,8 +10,8 @@ Docker Compose and [Docker Swarm](/swarm/overview.md) aim to have full integrati
you can point a Compose app at a Swarm cluster and have it all just work as if
you were using a single Docker host.
The actual extent of integration depends on which version of the [Compose file
format](compose-file.md#versioning) you are using:
The actual extent of integration depends on which version of the
[Compose file format](/compose/compose-file/compose-versioning.md) you are using:
1. If you're using version 1 along with `links`, your app works, but Swarm
schedules all containers on one host, because links between containers
@ -21,10 +21,10 @@ format](compose-file.md#versioning) you are using:
- subject to the [limitations](swarm.md#limitations) described below,
- as long as the Swarm cluster is configured to use the [overlay driver](/engine/userguide/networking/#an-overlay-network-with-docker-engine-swarm-mode),
- as long as the Swarm cluster is configured to use the [overlay driver](/network/overlay.md),
or a custom driver which supports multi-host networking.
Read [Get started with multi-host networking](/engine/userguide/networking/get-started-overlay/) to see how to
Read [Get started with multi-host networking](/network/network-tutorial-overlay.md) to see how to
set up a Swarm cluster with [Docker Machine](/machine/overview.md) and the overlay driver. Once you've got it running, deploying your app to it should be as simple as:
$ eval "$(docker-machine env --swarm <name of swarm master machine>)"
@ -55,7 +55,7 @@ from `docker-compose.yml`:
### Multiple dependencies
If a service has multiple dependencies of the type which force co-scheduling
(see [Automatic scheduling](swarm.md#automatic-scheduling) below), it's possible that
(see [Automatic scheduling](#automatic-scheduling) below), it's possible that
Swarm schedules the dependencies on different nodes, making the dependent
service impossible to schedule. For example, here `foo` needs to be co-scheduled
with `bar` and `baz`:
@ -75,7 +75,7 @@ The problem is that Swarm might first schedule `bar` and `baz` on different
nodes (since they're not dependent on one another), making it impossible to
pick an appropriate node for `foo`.
To work around this, use [manual scheduling](swarm.md#manual-scheduling) to ensure that
To work around this, use [manual scheduling](#manual-scheduling) to ensure that
all three services end up on the same node:
version: "2"
@ -170,5 +170,5 @@ them.
environment:
- "affinity:image==redis"
For the full set of available filters and expressions, see the [Swarm
documentation](/swarm/scheduler/filter.md).
For the full set of available filters and expressions, see the
[Swarm documentation](/swarm/scheduler/filter.md).

View File

@ -7,7 +7,7 @@ title: "Quickstart: Compose and WordPress"
You can use Docker Compose to easily run WordPress in an isolated environment
built with Docker containers. This quick-start guide demonstrates how to use
Compose to set up and run WordPress. Before starting, make sure you have
[Compose installed](/compose/install.md).
[Compose installed](install.md).
### Define the project
@ -67,7 +67,7 @@ Compose to set up and run WordPress. Before starting, make sure you have
> **Notes**:
>
* The docker volume `db_data` persists any updates made by WordPress
to the database. [Learn more about docker volumes](/engine/admin/volumes/volumes/)
to the database. [Learn more about docker volumes](/storage/volumes.md)
>
* WordPress Multisite works only on ports `80` and `443`.
{: .note-vanilla}
@ -76,7 +76,7 @@ Compose to set up and run WordPress. Before starting, make sure you have
Now, run `docker-compose up -d` from your project directory.
This runs [`docker-compose up`](/compose/reference/up/) in detached mode, pulls
This runs [`docker-compose up`](/compose/reference/up.md) in detached mode, pulls
the needed Docker images, and starts the wordpress and database containers, as shown in
the example below.

View File

@ -34,14 +34,14 @@ do not have `systemctl`, use the `service` command.
### Start automatically at system boot
If you want Docker to start at boot, see
[Configure Docker to start on boot](/install/linux/linux-postinstall.md/#configure-docker-to-start-on-boot).
[Configure Docker to start on boot](/install/linux/linux-postinstall.md#configure-docker-to-start-on-boot).
## Custom Docker daemon options
There are a number of ways to configure the daemon flags and environment variables
for your Docker daemon. The recommended way is to use the platform-independent
`daemon.json` file, which is located in `/etc/docker/` on Linux by default. See
[Daemon configuration file](/engine/reference/commandline/dockerd.md/#daemon-configuration-file).
[Daemon configuration file](/engine/reference/commandline/dockerd.md#daemon-configuration-file).
You can configure nearly all daemon configuration options using `daemon.json`. The following
example configures two options. One thing you cannot configure using `daemon.json` mechanism is
@ -161,6 +161,5 @@ See
When installing the binary without a package, you may want
to integrate Docker with systemd. For this, install the two unit files
(`service` and `socket`) from [the github
repository](https://github.com/moby/moby/tree/master/contrib/init/systemd)
(`service` and `socket`) from [the github repository](https://github.com/moby/moby/tree/master/contrib/init/systemd)
to `/etc/systemd/system`.

View File

@ -37,9 +37,9 @@ which image tags were signed by viewing the appropriate repositories through
Trusted Registry's web interface.
To configure your Docker client to push signed images to Docker
Trusted Registry refer to the CLI Reference's [Environment Variables
Section](/engine/reference/commandline/cli.md#environment-variables) and
[Notary Section](/engine/reference/commandline/cli.md#notary).
Trusted Registry refer to the CLI Reference's
[Environment Variables Section](/engine/reference/commandline/cli.md#environment-variables)
and [Notary Section](/engine/reference/commandline/cli.md#notary).
This requires you to set the `DOCKER_CONTENT_TRUST` variable and configure
your system to trust Docker Trusted Registry's TLS certificate if it doesn't

View File

@ -22,8 +22,7 @@ options for setting this up:
2. You can generate your own certificates using a public service or your enterprise's infrastructure. See the [Generating SSL certificates](config-security.md#generating-ssl-certificates) section for the options available.
If you are generating your own certificates, you can install them by following
the instructions for [Adding your own registry certificates to Docker Trusted
Registry](config-security.md#adding-your-own-registry-certificates-to-dtr).
the instructions for [Adding your own registry certificates to Docker Trusted Registry](config-security.md#adding-your-own-registry-certificates-to-dtr).
However, if you choose to use the Trusted Registry-generated certificates, or
the certificates you generate yourself are not trusted by your client Docker

View File

@ -178,8 +178,8 @@ YAML file (which is discussed further in this document.)
See the [Docker Registry storage driver](/registry/storage-drivers/)
documentation for the full options specific to each driver. Storage drivers can
be customized through the [Docker Registry storage driver
API](/registry/storage-drivers/index.md#storage-driver-api).
be customized through the
[Docker Registry storage driver API](/registry/storage-drivers/index.md#storage-driver-api).
### Filesystem settings

View File

@ -17,8 +17,8 @@ business peak hours to ensure the impact on your business is close to none.
## Step 1. Upgrade DTR to 2.0
Make sure you're running DTR 2.0. If that's not the case, [upgrade your
installation to the 2.0 version](upgrade-major.md).
Make sure you're running DTR 2.0. If that's not the case,
[upgrade your installation to the 2.0 version](upgrade-major.md).
## Step 2. Upgrade DTR

View File

@ -157,8 +157,8 @@ YAML file (which is discussed further in this document.)
See the [Docker Registry storage driver](/registry/storage-drivers/)
documentation for the full options specific to each driver. Storage drivers can
be customized through the [Docker Registry storage driver
API](/registry/storage-drivers/index.md#storage-driver-api).
be customized through the
[Docker Registry storage driver API](/registry/storage-drivers/index.md#storage-driver-api).
### Filesystem settings

View File

@ -37,8 +37,8 @@ Finally, click **Save** for the changes to take effect.
If you're using certificates issued by a globally trusted certificate authority,
any web browser or client tool should now trust DTR. If you're using an internal
certificate authority, you need to [configure your system to trust that
certificate authority](../repos-and-images/index.md).
certificate authority, you need to
[configure your system to trust that certificate authority](../repos-and-images/index.md).
## Where to go next

View File

@ -21,8 +21,8 @@ business peak hours to ensure the impact on your business is close to none.
## Step 1. Upgrade DTR to 2.0
Make sure you're running DTR 2.0. If that's not the case, [upgrade your
installation to the 2.0 version](/datacenter/dtr/2.0/install/upgrade/upgrade-major.md).
Make sure you're running DTR 2.0. If that's not the case,
[upgrade your installation to the 2.0 version](/datacenter/dtr/2.0/install/upgrade/upgrade-major.md).
## Step 2. Upgrade DTR

View File

@ -48,10 +48,10 @@ DTR has a built in security scanner that can be used to discover what versions
of software are used in your images. It scans each layer and aggregates the
results to give you a complete picture of what you are shipping as a part of
your stack. Most importantly, it co-relates this information with a
vulnerability database that is kept up to date through [periodic
updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security
threats](user/manage-images/scan-images-for-vulnerabilities.md).
vulnerability database that is kept up to date through
[periodic updates](admin/configure/set-up-vulnerability-scans.md). This
gives you
[unprecedented insight into your exposure to known security threats](user/manage-images/scan-images-for-vulnerabilities.md).
## Image signing

View File

@ -13,8 +13,9 @@ Scanning. The results of these scans are reported for each image tag.
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start

View File

@ -63,8 +63,8 @@ notary delegation add --publish \
--all-paths <user-1-cert.pem> <user-2-cert.pem>
```
Now members from the QA team just need to [configure their Notary CLI client
with UCP private keys](../../access-dtr/configure-your-notary-client.md)
Now members from the QA team just need to
[configure their Notary CLI client with UCP private keys](../../access-dtr/configure-your-notary-client.md)
before [pushing and signing images](index.md) into the `dev/nginx` repository.
## Where to go next

View File

@ -48,10 +48,10 @@ DTR has a built in security scanner that can be used to discover what versions
of software are used in your images. It scans each layer and aggregates the
results to give you a complete picture of what you are shipping as a part of
your stack. Most importantly, it co-relates this information with a
vulnerability database that is kept up to date through [periodic
updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security
threats](user/manage-images/scan-images-for-vulnerabilities.md).
vulnerability database that is kept up to date through
[periodic updates](admin/configure/set-up-vulnerability-scans.md). This
gives you
[unprecedented insight into your exposure to known security threats](user/manage-images/scan-images-for-vulnerabilities.md).
## Image signing

View File

@ -45,4 +45,4 @@ the event is triggered.
## Where to go next
* [Create deployment policies](create-deployment-policies.md)
* [Create deployment policies](create-promotion-policies.md)

View File

@ -13,8 +13,9 @@ Scanning. The results of these scans are reported for each image tag.
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start
@ -39,8 +40,9 @@ discovered vulnerabilities.
DTR scans both Linux and Windows images, but by default Docker doesn't push
foreign image layers for Windows images so DTR can't scan them. If
you want DTR to scan your Windows images, [configure Docker to always push image
layers](pull-and-push-images.md), and it will scan the non-foreign layers.
you want DTR to scan your Windows images,
[configure Docker to always push image layers](pull-and-push-images.md), and it
will scan the non-foreign layers.
## Security scan on push

View File

@ -63,8 +63,8 @@ notary delegation add --publish \
--all-paths <user-1-cert.pem> <user-2-cert.pem>
```
Now members from the QA team just need to [configure their Notary CLI client
with UCP private keys](../../access-dtr/configure-your-notary-client.md)
Now members from the QA team just need to
[configure their Notary CLI client with UCP private keys](../../access-dtr/configure-your-notary-client.md)
before [pushing and signing images](index.md) into the `dev/nginx` repository.
## Where to go next

View File

@ -13,8 +13,9 @@ Scanning. The results of these scans are reported for each image tag.
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start
@ -39,8 +40,9 @@ discovered vulnerabilities.
DTR scans both Linux and Windows images, but but by default Docker doesn't push
foreign image layers for Windows images so DTR can't scan them. If
you want DTR to scan your Windows images, [configure Docker to always push image
layers](pull-and-push-images.md), and it will scan the non-foreign layers.
you want DTR to scan your Windows images,
[configure Docker to always push image layers](pull-and-push-images.md), and it
will scan the non-foreign layers.
## Security scan on push

View File

@ -63,8 +63,8 @@ notary delegation add --publish \
--all-paths <user-1-cert.pem> <user-2-cert.pem>
```
Now members from the QA team just need to [configure their Notary CLI client
with UCP private keys](../../access-dtr/configure-your-notary-client.md)
Now members from the QA team just need to
[configure their Notary CLI client with UCP private keys](../../access-dtr/configure-your-notary-client.md)
to [push and sign images](index.md) into the `dev/nginx` repository.
## Where to go next

View File

@ -52,10 +52,9 @@ DTR has a built-in security scanner that can be used to discover what versions
of software are used in your images. It scans each layer and aggregates the
results to give you a complete picture of what you are shipping as a part of
your stack. Most importantly, it correlates this information with a
vulnerability database that is kept up to date through [periodic
updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security
threats](user/manage-images/scan-images-for-vulnerabilities.md).
vulnerability database that is kept up to date through
[periodic updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security threats](user/manage-images/scan-images-for-vulnerabilities.md).
## Image signing

View File

@ -13,8 +13,9 @@ Scanning. The results of these scans are reported for each image tag.
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start
@ -39,8 +40,9 @@ discovered vulnerabilities.
DTR scans both Linux and Windows images, but but by default Docker doesn't push
foreign image layers for Windows images so DTR can't scan them. If
you want DTR to scan your Windows images, [configure Docker to always push image
layers](pull-and-push-images.md), and it will scan the non-foreign layers.
you want DTR to scan your Windows images,
[configure Docker to always push image layers](pull-and-push-images.md), and it
will scan the non-foreign layers.
## Security scan on push

View File

@ -63,8 +63,8 @@ notary delegation add --publish \
--all-paths <user-1-cert.pem> <user-2-cert.pem>
```
Now members from the QA team just need to [configure their Notary CLI client
with UCP private keys](../../access-dtr/configure-your-notary-client.md)
Now members from the QA team just need to
[configure their Notary CLI client with UCP private keys](../../access-dtr/configure-your-notary-client.md)
to [push and sign images](index.md) into the `dev/nginx` repository.
## Where to go next

View File

@ -6,7 +6,7 @@ keywords: dtr, webhooks, api, registry
## Prerequisite
See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md/#webhook-types) for a list of events you can trigger notifications for via the API.
See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md#webhook-types) for a list of events you can trigger notifications for via the API.
## API Base URL

View File

@ -7,7 +7,7 @@ keywords: dtr, webhooks, ui, web interface, registry
## Prerequisites
- You must have admin privileges to the repository in order to create a webhook.
- See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md/#webhook-types) for a list of events you can trigger notifications for using the web interface.
- See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md#webhook-types) for a list of events you can trigger notifications for using the web interface.
## Create a webhook for your repository

View File

@ -47,10 +47,10 @@ DTR has a built-in security scanner that can be used to discover what versions
of software are used in your images. It scans each layer and aggregates the
results to give you a complete picture of what you are shipping as a part of
your stack. Most importantly, it correlates this information with a
vulnerability database that is kept up to date through [periodic
updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security
threats](user/manage-images/scan-images-for-vulnerabilities.md).
vulnerability database that is kept up to date through
[periodic updates](admin/configure/set-up-vulnerability-scans.md). This
gives you
[unprecedented insight into your exposure to known security threats](user/manage-images/scan-images-for-vulnerabilities.md).
## Image signing

View File

@ -13,8 +13,9 @@ Scanning. The results of these scans are reported for each image tag in a reposi
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start
@ -39,8 +40,9 @@ discovered vulnerabilities.
DTR scans both Linux and Windows images, but by default Docker doesn't push
foreign image layers for Windows images so DTR won't be able to scan them. If
you want DTR to scan your Windows images, [configure Docker to always push image
layers](pull-and-push-images.md), and it will scan the non-foreign layers.
you want DTR to scan your Windows images,
[configure Docker to always push image layers](pull-and-push-images.md), and it
will scan the non-foreign layers.
## Security scan on push

View File

@ -8,8 +8,9 @@ redirect_from:
For more advanced deployments, you may want to share one Docker Trusted Registry
across multiple Universal Control Planes. However, customers wanting to adopt
this model alongside the [Only Run Signed
Images](/ee/ucp/admin/configure/run-only-the-images-you-trust.md) UCP feature, run into problems as each UCP operates an independent set of users.
this model alongside the
[Only Run Signed Images](/ee/ucp/admin/configure/run-only-the-images-you-trust.md)
UCP feature, run into problems as each UCP operates an independent set of users.
Docker Content Trust (DCT) gets around this problem, since users from
a remote UCP are able to sign images in the central DTR and still apply runtime
@ -26,9 +27,8 @@ cluster separately.
> Before attempting this guide, familiarize yourself with [Docker Content
> Trust](engine/security/trust/content_trust/#signing-images-with-docker-content-trust)
> and [Only Run Signed
> Images](/ee/ucp/admin/configure/run-only-the-images-you-trust.md) on a
> single UCP. Many of the concepts within this guide may be new without that
> and [Only Run Signed Images](/ee/ucp/admin/configure/run-only-the-images-you-trust.md)
> on a single UCP. Many of the concepts within this guide may be new without that
> background.
## Prerequisites

View File

@ -150,8 +150,8 @@ manager failures, the system should be configured for [high availability](config
4. Perform a restore operation on the recovered swarm manager node.
5. Log in to UCP and browse to the nodes page, or use the CLI `docker node ls`
command.
6. If any nodes are listed as `down`, you need to manually [remove these
nodes](configure/scale-your-cluster.md) from the cluster and then re-join
6. If any nodes are listed as `down`, you need to manually
[remove these nodes](configure/scale-your-cluster.md) from the cluster and then re-join
them using a `docker swarm join` operation with the cluster's new join-token.
## Where to go next

View File

@ -31,9 +31,9 @@ $ docker run --rm -it \
This runs the uninstall command in interactive mode, so that you are prompted
for any necessary configuration values. Running this command on a single manager
node will uninstall UCP from the entire cluster. [Check the reference
documentation](../../../reference/cli/index.md) to learn the options available
in the `uninstall-ucp` command.
node will uninstall UCP from the entire cluster.
[Check the reference documentation](../../../reference/cli/index.md) to learn the
options available in the `uninstall-ucp` command.
## Swarm mode CA

View File

@ -8,8 +8,8 @@ There are several cases in the lifecycle of UCP when a node is actively
transitioning from one state to another, such as when a new node is joining the
cluster or during node promotion and demotion. In these cases, the current step
of the transition will be reported by UCP as a node message. You can view the
state of each individual node by following the same steps required to [monitor
cluster status](index.md).
state of each individual node by following the same steps required to
[monitor cluster status](index.md).
## UCP node states

View File

@ -189,8 +189,8 @@ manager failures, the system should be configured for
4. Perform a restore operation on the recovered swarm manager node.
5. Log in to UCP and browse to the nodes page, or use the CLI `docker node ls`
command.
6. If any nodes are listed as `down`, you need to manually [remove these
nodes](../configure/scale-your-cluster.md) from the swarm and then re-join
6. If any nodes are listed as `down`, you need to manually
[remove these nodes](configure/scale-your-cluster.md) from the swarm and then re-join
them using a `docker swarm join` operation with the swarm's new join-token.
## Where to go next

View File

@ -215,7 +215,7 @@ Configures the swarm cluster that the current UCP instance manages.
The `dns`, `dns_opt`, and `dns_search` settings configure the DNS settings for UCP
components. Assigning these values overrides the settings in a container's
`/etc/resolv.conf` file. For more info, see
[Configure container DNS](/engine/userguide/networking/default_network/configure-dns/).
[Configure container DNS](/config/containers/container-networking.md#dns-services).
| Parameter | Required | Description |
|:----------------------------------|:---------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|

View File

@ -31,9 +31,9 @@ $ docker container run --rm -it \
This runs the uninstall command in interactive mode, so that you are prompted
for any necessary configuration values. Running this command on a single manager
node will uninstall UCP from the entire cluster. [Check the reference
documentation](../../../reference/cli/index.md) to learn the options available
in the `uninstall-ucp` command.
node will uninstall UCP from the entire cluster.
[Check the reference documentation](../../../reference/cli/index.md) to learn the
options available in the `uninstall-ucp` command.
## Swarm mode CA

View File

@ -8,8 +8,8 @@ There are several cases in the lifecycle of UCP when a node is actively
transitioning from one state to another, such as when a new node is joining the
swarm or during node promotion and demotion. In these cases, the current step
of the transition will be reported by UCP as a node message. You can view the
state of each individual node by following the same steps required to [monitor
cluster status](index.md).
state of each individual node by following the same steps required to
[monitor cluster status](index.md).
## UCP node states

View File

@ -200,9 +200,10 @@ manager failures, the system should be configured for
4. Perform a restore operation on the recovered swarm manager node.
5. Log in to UCP and browse to the nodes page, or use the CLI `docker node ls`
command.
6. If any nodes are listed as `down`, you need to manually [remove these
nodes](../configure/scale-your-cluster.md) from the swarm and then re-join
them using a `docker swarm join` operation with the swarm's new join-token.
6. If any nodes are listed as `down`, you need to manually
[remove these nodes](../configure/scale-your-cluster.md) from the swarm and
then re-join them using a `docker swarm join` operation with the swarm's new
join-token.
## Where to go next

View File

@ -215,7 +215,7 @@ Configures the swarm cluster that the current UCP instance manages.
The `dns`, `dns_opt`, and `dns_search` settings configure the DNS settings for UCP
components. Assigning these values overrides the settings in a container's
`/etc/resolv.conf` file. For more info, see
[Configure container DNS](/engine/userguide/networking/default_network/configure-dns/).
[Configure container DNS](/config/containers/container-networking.md#dns-services).
| Parameter | Required | Description |
|:----------------------------------|:---------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|

View File

@ -31,9 +31,9 @@ $ docker container run --rm -it \
This runs the uninstall command in interactive mode, so that you are prompted
for any necessary configuration values. Running this command on a single manager
node will uninstall UCP from the entire cluster. [Check the reference
documentation](../../../reference/cli/index.md) to learn the options available
in the `uninstall-ucp` command.
node will uninstall UCP from the entire cluster.
[Check the reference documentation](../../../reference/cli/index.md) to learn
the options available in the `uninstall-ucp` command.
## Swarm mode CA

View File

@ -23,7 +23,7 @@ Don't make changes to UCP configurations while you're upgrading.
This can lead to misconfigurations that are difficult to troubleshoot.
> **Note**: If you are upgrading a cluster to UCP 3.0.2 or higher on Microsoft
> Azure then please ensure all of the Azure [prerequisities](install-on-azure.md/#azure-prerequisites)
> Azure then please ensure all of the Azure [prerequisities](install-on-azure.md#azure-prerequisites)
> are met.
## Back up your swarm

View File

@ -8,8 +8,8 @@ There are several cases in the lifecycle of UCP when a node is actively
transitioning from one state to another, such as when a new node is joining the
swarm or during node promotion and demotion. In these cases, the current step
of the transition will be reported by UCP as a node message. You can view the
state of each individual node by following the same steps required to [monitor
cluster status](index.md).
state of each individual node by following the same steps required to
[monitor cluster status](index.md).
## UCP node states

View File

@ -6,7 +6,7 @@ redirect_from:
- /ee/ucp/user/services/deploy-compose-on-kubernetes/
---
Docker Enterprise Edition enables deploying [Docker Compose](/compose/overview.md/)
Docker Enterprise Edition enables deploying [Docker Compose](/compose/overview.md)
files to Kubernetes clusters. Starting in Compile file version 3.3, you use the
same `docker-compose.yml` file that you use for Swarm deployments, but you
specify **Kubernetes workloads** when you deploy the stack. The result is a

View File

@ -207,9 +207,10 @@ manager failures, the system should be configured for
4. Perform a restore operation on the recovered swarm manager node.
5. Log in to UCP and browse to the nodes page, or use the CLI `docker node ls`
command.
6. If any nodes are listed as `down`, you'll have to manually [remove these
nodes](configure/scale-your-cluster.md) from the swarm and then re-join
them using a `docker swarm join` operation with the swarm's new join-token.
6. If any nodes are listed as `down`, you'll have to manually
[remove these nodes](configure/scale-your-cluster.md) from the swarm and then
re-join them using a `docker swarm join` operation with the swarm's new
join-token.
## Where to go next

View File

@ -186,7 +186,7 @@ Configures the cluster that the current UCP instance manages.
The `dns`, `dns_opt`, and `dns_search` settings configure the DNS settings for UCP
components. Assigning these values overrides the settings in a container's
`/etc/resolv.conf` file. For more info, see
[Configure container DNS](/engine/userguide/networking/default_network/configure-dns/).
[Configure container DNS](/config/containers/container-networking.md#dns-services).
| Parameter | Required | Description |
|:---------------------------------------|:---------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|

View File

@ -39,8 +39,8 @@ The UCP configuration is kept in case you want to reinstall UCP with the same
configuration. If you want to also delete the configuration, run the uninstall
command with the `--purge-config` option.
[Check the reference
documentation](/reference/ucp/3.0/cli/index.md) to learn the options available.
[Check the reference documentation](/reference/ucp/3.0/cli/index.md) to learn
the options available.
Once the uninstall command finishes, UCP is completely removed from all the
nodes in the cluster. You don't need to run the command again from other nodes.

View File

@ -27,10 +27,10 @@ disk space. In particular, manager nodes must have at least 8GB of memory.
Learn about [UCP system requirements](system-requirements.md).
Ensure that your cluster nodes meet the minimum requirements for port openings.
[Ports used](system-requirements.md/#ports-used) are documented in the UCP system requirements.
[Ports used](system-requirements.md#ports-used) are documented in the UCP system requirements.
> **Note**: If you are upgrading a cluster to UCP 3.0.2 or higher on Microsoft
> Azure then please ensure all of the Azure [prerequisites](install-on-azure.md/#azure-prerequisites)
> Azure then please ensure all of the Azure [prerequisites](install-on-azure.md#azure-prerequisites)
> are met.
## Back up your cluster

View File

@ -8,8 +8,8 @@ There are several cases in the lifecycle of UCP when a node is actively
transitioning from one state to another, such as when a new node is joining the
cluster or during node promotion and demotion. In these cases, the current step
of the transition will be reported by UCP as a node message. You can view the
state of each individual node by following the same steps required to [monitor
cluster status](index.md).
state of each individual node by following the same steps required to
[monitor cluster status](index.md).
## UCP node states

View File

@ -115,11 +115,11 @@ Pods with any of the following defined in the Pod Specification:
Namespace.
- `SecurityContext.allowPrivilegeEscalation` - Prevents a child process
of a container from gaining more privileges than its parent.
- `SecurityContext.capabilities` - Prevents additional [Linux
Capabilities](https://docs.docker.com/engine/security/security/#linux-kernel-capabilities)
- `SecurityContext.capabilities` - Prevents additional
[Linux Capabilities](/engine/security/security.md#linux-kernel-capabilities)
from being added to a pod.
- `SecurityContext.privileged` - Prevents a user from deploying a [Privileged
Container](https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities).
- `SecurityContext.privileged` - Prevents a user from deploying a
[Privileged Container](/engine/reference/run/#runtime-privilege-and-linux-capabilities).
- `Volume.hostPath` - Prevents a user from mounting a path from the host into
the container. This could be a file, a directory, or even the Docker Socket.

View File

@ -4,7 +4,7 @@ description: Use Docker Enterprise Edition to deploy a Kubernetes workload from
keywords: UCP, Docker EE, Kubernetes, Compose
---
Docker Enterprise Edition enables deploying [Docker Compose](/compose/overview.md/)
Docker Enterprise Edition enables deploying [Docker Compose](/compose/overview.md)
files to Kubernetes clusters. Starting in Compose file version 3.3, you use the
same `docker-compose.yml` file that you use for Swarm deployments, but you
specify **Kubernetes workloads** when you deploy the stack. The result is a

View File

@ -21,10 +21,10 @@ or contact that third party.
## Install an unmanaged CNI plugin on Docker UCP
Once a platform operator has complied with [UCP system
requirements](/ee/ucp/admin/install/system-requirements/) and
Once a platform operator has complied with
[UCP system requirements](/ee/ucp/admin/install/system-requirements.md) and
taken into consideration any requirements for the custom CNI plugin, you can
[run the UCP install command](/reference/ucp/3.1/cli/install/) with the `--unmanaged-cni` flag
[run the UCP install command](/datacenter/ucp/3.1/reference/cli/install.md) with the `--unmanaged-cni` flag
to bring up the platform.
This command will install UCP, and bring up components
@ -54,8 +54,9 @@ will also be unavailable, as this runs in a Kubernetes pod.
### Configure CLI access to UCP
Next, a platform operator should log into UCP, download a UCP client bundle, and
configure the Kubernetes CLI tool, `kubectl`. See [CLI Based
Access](/ee/ucp/user-access/cli/#download-client-certificates) for more details.
configure the Kubernetes CLI tool, `kubectl`. See
[CLI Based Access](/ee/ucp/user-access/cli.md#download-client-certificates)
for more details.
With `kubectl`, you can see that the UCP components running on
Kubernetes are still pending, waiting for a CNI driver before becoming

View File

@ -16,14 +16,12 @@ Disks on demand.
This guide assumes you have already provisioned a UCP environment on
Microsoft Azure. The Cluster must be provisioned after meeting all of the
prerequisites listed in [Install UCP on
Azure](/ee/ucp/admin/install/install-on-azure.md).
prerequisites listed in [Install UCP on Azure](/ee/ucp/admin/install/cloudproviders/install-on-azure.md).
Additionally, this guide uses the Kubernetes Command Line tool `$
kubectl` to provision Kubernetes objects within a UCP cluster. Therefore, this
tool must be downloaded, along with a UCP client bundle. For more
information on configuring CLI access for UCP, see [CLI Based
Access](/ee/ucp/user-access/cli/).
information on configuring CLI access for UCP, see [CLI Based Access](/ee/ucp/user-access/cli.md).
## Manually provision Azure Disks
@ -233,7 +231,5 @@ $ kubectl describe pods mypod-azure-disk
## Where to go next
- [Deploy an Ingress Controller on
Kubernetes](/ee/ucp/kubernetes/layer-7-routing/)
- [Discover Network Encryption on
Kubernetes](/ee/ucp/kubernetes/kubernetes-network-encryption/)
- [Deploy an Ingress Controller on Kubernetes](../layer-7-routing.md)
- [Discover Network Encryption on Kubernetes](../kubernetes-network-encryption.md)

View File

@ -15,14 +15,12 @@ provision Azure Files Shares on demand.
This guide assumes you have already provisioned a UCP environment on
Microsoft Azure. The cluster must be provisioned after meeting all
prerequisites listed in [Install UCP on
Azure](/ee/ucp/admin/install/install-on-azure.md).
prerequisites listed in [Install UCP on Azure](/ee/ucp/admin/install/cloudproviders/install-on-azure.md).
Additionally, this guide uses the Kubernetes Command Line tool `$
kubectl` to provision Kubernetes objects within a UCP cluster. Therefore, you must download
this tool along with a UCP client bundle. For more
information on configuring CLI access to UCP, see [CLI Based
Access](/ee/ucp/user-access/cli/).
information on configuring CLI access to UCP, see [CLI Based Access](/ee/ucp/user-access/cli.md).
## Manually Provisioning Azure Files
@ -36,8 +34,7 @@ Azure Files Shares.
When manually creating an Azure Files Share, first create an Azure
Storage Account for the file shares. If you have already provisioned
a Storage Account, you can skip to [Creating an Azure Files
Share](#creating-an-azure-file-share).
a Storage Account, you can skip to [Creating an Azure Files Share](#creating-an-azure-files-share).
> **Note**: the Azure Kubernetes Driver does not support Azure Storage Accounts
> created using Azure Premium Storage.

View File

@ -46,8 +46,8 @@ upgrade your installation to the latest release.
file](/ee/ucp/admin/configure/ucp-configuration-file/) for more details.
(ENGORC-2334)
* Users can now adjust the internal Kubernetes Service IP Range from the default
`10.96.0.0/16` at install time. See [Plan
Installation](/ee/ucp/admin/install/plan-installation.md#avoid-ip-range-conflicts)
`10.96.0.0/16` at install time. See
[Plan Installation](/ee/ucp/admin/install/plan-installation.md#avoid-ip-range-conflicts)
for more details. (ENGCORE-683)
### Bug fixes

View File

@ -20,7 +20,7 @@ keep image size small:
starting with a generic `ubuntu` image and installing `openjdk` as part of the
Dockerfile.
- [Use multistage builds](/engine/userguide/eng-image/multistage-build.md). For
- [Use multistage builds](/develop/develop-images/multistage-build.md). For
instance, you can use the `maven` image to build your Java application, then
reset to the `tomcat` image and copy the Java artifacts into the correct
location to deploy your app, all in the same Dockerfile. This means that your
@ -45,7 +45,7 @@ keep image size small:
```
- If you have multiple images with a lot in common, consider creating your own
[base image](/engine/userguide/eng-image/baseimages.md) with the shared
[base image](/develop/develop-images/baseimages.md) with the shared
components, and basing your unique images on that. Docker only needs to load
the common layers once, and they are cached. This means that your
derivative images use memory on the Docker host more efficiently and load more
@ -63,12 +63,12 @@ keep image size small:
## Where and how to persist application data
- **Avoid** storing application data in your container's writable layer using
[storage drivers](/engine/userguide/storagedriver.md). This increases the
[storage drivers](/storage/storagedriver/select-storage-driver.md). This increases the
size of your container and is less efficient from an I/O perspective than
using volumes or bind mounts.
- Instead, store data using [volumes](/engine/admin/volumes/volumes.md).
- Instead, store data using [volumes](/storage/volumes.md).
- One case where it is appropriate to use
[bind mounts](/engine/admin/volumes/bind-mounts.md) is during development,
[bind mounts](/storage/bind-mounts.md) is during development,
when you may want to mount your source directory or a binary you just built
into your container. For production, use a volume instead, mounting it into
the same location as you mounted a bind mount during development.
@ -82,7 +82,7 @@ keep image size small:
## Use CI/CD for testing and deployment
- When you check a change into source control or create a pull request, use
[Docker Hub](/docker-hub/builds/automated-build.md) or
[Docker Hub](/docker-hub/builds/index.md) or
another CI/CD pipeline to automatically build and tag a Docker image and test
it.

View File

@ -320,7 +320,7 @@ processes, and [Apache](https://httpd.apache.org/) can create one process per
request.
Use your best judgment to keep containers as clean and modular as possible. If
containers depend on each other, you can use [Docker container networks](/engine/userguide/networking/)
containers depend on each other, you can use [Docker container networks](/network/index.md)
to ensure that these containers can communicate.
### Minimize the number of layers
@ -450,9 +450,9 @@ LABEL vendor=ACME\ Incorporated \
See [Understanding object labels](/config/labels-custom-metadata.md)
for guidelines about acceptable label keys and values. For information about
querying labels, refer to the items related to filtering in [Managing labels on
objects](/config/labels-custom-metadata.md#managing-labels-on-objects). See also
[LABEL](/engine/reference/builder/#label) in the Dockerfile reference.
querying labels, refer to the items related to filtering in
[Managing labels on objects](/config/labels-custom-metadata.md#manage-labels-on-objects).
See also [LABEL](/engine/reference/builder/#label) in the Dockerfile reference.
### RUN

View File

@ -16,8 +16,8 @@ If you're just getting started developing a brand new app on Docker, check out
these resources to understand some of the most common patterns for getting the
most benefits from Docker.
- Use [multistage builds](/engine/userguide/eng-image/multistage-build.md){: target="_blank" class="_"} to keep your images lean
- Manage application data using [volumes](/engine/admin/volumes/volumes.md) and [bind mounts](/engine/admin/volumes/bind-mounts.md){: target="_blank" class="_"}
- Use [multistage builds](/develop/develop-images/multistage-build.md){: target="_blank" class="_"} to keep your images lean
- Manage application data using [volumes](/storage/volumes.md) and [bind mounts](/storage/bind-mounts.md){: target="_blank" class="_"}
- [Scale your app](/get-started/kube-deploy.md){: target="_blank" class="_"} with kubernetes
- [Scale your app](/get-started/swarm-deploy.md){: target="_blank" class="_"} as a swarm service
- [General application development best practices](/develop/dev-best-practices.md){: target="_blank" class="_"}
@ -27,8 +27,8 @@ most benefits from Docker.
- [Docker for Java developers](https://github.com/docker/labs/tree/master/developer-tools/java/){: target="_blank" class="_"} lab
- [Port a node.js app to Docker](https://github.com/docker/labs/tree/master/developer-tools/nodejs/porting){: target="_blank" class="_"}
- [Ruby on Rails app on Docker](https://github.com/docker/labs/tree/master/developer-tools/ruby){: target="_blank" class="_"} lab
- [Dockerize a .Net Core application](/engine/examples/dotnetcore/){: target="_blank" class="_"}
- [Dockerize an ASP.NET Core application with SQL Server on Linux](/compose/aspnet-mssql-compose/){: target="_blank" class="_"} using Docker Compose
- [Dockerize a .Net Core application](/engine/examples/dotnetcore.md){: target="_blank" class="_"}
- [Dockerize an ASP.NET Core application with SQL Server on Linux](/compose/aspnet-mssql-compose.md){: target="_blank" class="_"} using Docker Compose
## Advanced development with the SDK or API

View File

@ -58,8 +58,8 @@ Also note that Docker Desktop cant route traffic to containers, so you can't
directly access an exposed port on a running container from the hosting machine.
If you do need multiple VMs, such as when testing multi-node swarms, you can
continue to use Docker Machine, which operates outside the scope of Docker Desktop. See [Docker Toolbox and Docker Desktop
coexistence](docker-toolbox.md#docker-toolbox-and-docker-desktop-coexistence).
continue to use Docker Machine, which operates outside the scope of Docker Desktop. See
[Docker Toolbox and Docker Desktop coexistence](docker-toolbox.md#docker-toolbox-and-docker-desktop-coexistence).
## Setting up to run Docker Desktop on Mac
@ -103,8 +103,7 @@ coexistence](docker-toolbox.md#docker-toolbox-and-docker-desktop-coexistence).
> `/usr/local/bin` with symlinks to its own versions.
{:.warning}
See also [Unset environment variables in the current
shell](/machine/get-started.md#unset-environment-variables-in-the-current-shell)
See also [Unset environment variables in the current shell](/machine/get-started.md#unset-environment-variables-in-the-current-shell)
in the Docker Machine topics.
## Docker Toolbox and Docker Desktop coexistence
@ -222,6 +221,5 @@ it](https://docs.docker.com/toolbox/toolbox_install_mac/#how-to-uninstall-toolbo
You might decide that you do not need Toolbox now that you have Docker Desktop,
and want to uninstall it. For details on how to perform a clean uninstall of
Toolbox on Mac, see [How to uninstall
Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox) in the
Toolbox Mac topics.
Toolbox on Mac, see [How to uninstall Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox)
in the Toolbox Mac topics.

View File

@ -1437,8 +1437,8 @@ issue is being investigated. The workaround is to restart Docker.app
with `osxfs`. In particular, writes of small blocks and traversals of large
directories are currently slow. Additionally, containers that perform large
numbers of directory operations, such as repeated scans of large directory
trees, may suffer from poor performance. More information is available in [Known
Issues](troubleshoot.md#known-issues) in Troubleshooting.
trees, may suffer from poor performance. More information is available in
[Known Issues](troubleshoot.md#known-issues) in Troubleshooting.
* Under some unhandled error conditions, `inotify` event delivery can fail and become permanently disabled. The workaround is to restart Docker.app.

View File

@ -168,8 +168,7 @@ For more information, see:
- [Namespaces](osxfs.md#namespaces){: target="_blank" class="_"} in the topic on
[osxfs file system sharing](osxfs.md).
- [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).)
- [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).)
#### Proxies
@ -205,8 +204,8 @@ You can configure Docker Desktop networking to work on a virtual private network
The Docker Engine page allows you to configure the Docker daemon to determine how your containers run.
Type a JSON configuration file in the box to configure the daemon settings. For a full list of options, see the Docker Engine [dockerd commandline
reference](/engine/reference/commandline/dockerd.md){:target="_blank"
Type a JSON configuration file in the box to configure the daemon settings. For a full list of options, see the Docker Engine
[dockerd commandline reference](/engine/reference/commandline/dockerd.md){:target="_blank"
class="_"}.
Click **Apply & Restart** to save your settings and restart Docker Desktop.
@ -370,7 +369,7 @@ Desktop `xhyve` virtual machine).
> effect.
>
> * The registry cannot be listed as an _insecure registry_ (see [Docker
> Daemon](index.md#docker-daemon)). Docker Desktop ignores certificates listed
> Engine](#docker-engine). Docker Desktop ignores certificates listed
> under insecure registries, and does not send client certificates. Commands
> like `docker run` that attempt to pull from the registry produce error
> messages on the command line, as well as on the registry.
@ -411,9 +410,9 @@ also in your keychain.
```
To learn more about how to install a CA root certificate for the registry and
how to set the client TLS certificate for verification, see [Verify repository
client with certificates](/engine/security/certificates.md) in the Docker Engine
topics.
how to set the client TLS certificate for verification, see
[Verify repository client with certificates](/engine/security/certificates.md)
in the Docker Engine topics.
## Install shell completion
@ -471,8 +470,8 @@ forum](https://forums.docker.com/c/docker-for-mac){:target="_blank" class="_"}.
To report bugs or problems, log on to Docker Desktop [for Mac issues on
GitHub](https://github.com/docker/for-mac/issues){:target="_blank" class="_"},
where you can review community reported issues, and file new ones. See [Logs
and Troubleshooting](troubleshoot.md) for more details.
where you can review community reported issues, and file new ones. See
[Logs and Troubleshooting](troubleshoot.md) for more details.
For information about providing feedback on the documentation or update it yourself, see [Contribute to documentation](/opensource/).
@ -483,8 +482,7 @@ Select **Sign in /Create Docker ID** from the Docker Desktop menu to access your
For more information, refer to the following [Docker Hub topics](/docker-hub/index.md){:target="_blank"
class="_"}:
* [Organizations and Teams in Docker
Hub](/docker-cloud/orgs/index.md){:target="_blank" class="_"}
* [Organizations and Teams in Docker Hub](/docker-hub/orgs.md){:target="_blank" class="_"}
* [Builds](/docker-hub/builds/index.md){:target="_blank" class="_"}
### Two-factor authentication
@ -513,8 +511,8 @@ After you have successfully authenticated, you can access your organizations and
* 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/api.md){: target="_blank" class="_"}.
* For a summary of Docker command line interface (CLI) commands, see
[Docker CLI Reference Guide](/engine/api/index.md){: target="_blank" class="_"}.
* Check out the blog post, [Whats New in Docker 17.06 Community Edition
(CE)](https://blog.docker.com/2017/07/whats-new-docker-17-06-community-edition-ce/){:

View File

@ -134,6 +134,6 @@ For information on how to back up and restore data volumes, see [Backup, restore
to run and submit diagnostics, and submit issues.
- [FAQs](faqs.md) provide answers to frequently asked questions.
- [Release notes](release-notes.md) lists component updates, new features, and
improvements associated with Stable releases. For information about Edge releases, see [Edge release
notes](edge-release-notes.md).
improvements associated with Stable releases. For information about Edge releases, see
[Edge release notes](edge-release-notes.md).
- [Get started with Docker](/get-started/) provides a general Docker tutorial.

View File

@ -4,14 +4,13 @@ keywords: mac, osxfs, volumes
title: Performance tuning for volume mounts (shared filesystems)
---
[Docker 17.04 CE
Edge](/edge/index.md#docker-ce-edge-new-features) adds support
[Docker 17.04 CE Edge](/edge/index.md#docker-ce-edge-new-features) adds support
for two new flags to the [docker run `-v`,
`--volume`](/engine/reference/run/#volume-shared-filesystems)
option, `cached` and `delegated`, that can significantly improve the performance
of mounted volume access on Docker Desktop for Mac. These options begin to solve some of
the challenges discussed in [Performance issues, solutions, and
roadmap](osxfs.md#performance-issues-solutions-and-roadmap).
the challenges discussed in
[Performance issues, solutions, and roadmap](osxfs.md#performance-issues-solutions-and-roadmap).
> **Tip:** Release notes for Docker CE Edge 17.04 are
[here](https://github.com/moby/moby/releases/tag/v17.04.0-ce), and the
@ -26,8 +25,7 @@ Performance](https://stories.amazee.io/docker-on-mac-performance-docker-machine-
gives a nice, quick summary.
For information on how to configure these options in a Compose file, see
[Caching options for volume
mounts](/compose/compose-file.md#caching-options-for-volume-mounts-docker-for-mac)
[Caching options for volume mounts](/compose/compose-file/index.md#caching-options-for-volume-mounts-docker-desktop-for-mac)
the Docker Compose topics.
## Performance implications of host-container file system consistency

View File

@ -163,13 +163,13 @@ As well as on the registry. For example:
2019/06/20 18:15:30 http: TLS handshake error from 192.168.203.139:52883: tls: first record does not look like a TLS handshake
```
For more about using client and server side certificates, see [Adding TLS
certificates](index.md#adding-tls-certificates) in the Getting Started topic.
For more about using client and server side certificates, see
[Adding TLS certificates](index.md#add-tls-certificates) in the Getting Started topic.
### Docker Desktop does not start if Mac user account and home folder are renamed after installing the app
See [Do I need to reinstall Docker Desktop if I change the name of my macOS
account?](faqs.md#do-i-need-to-reinstall-docker-for-mac-if-i-change-the-name-of-my-macos-account)
See
[Do I need to reinstall Docker Desktop if I change the name of my macOS account?](faqs.md#do-i-need-to-reinstall-docker-for-mac-if-i-change-the-name-of-my-macos-account)
in the FAQs.
### Volume mounting requires file sharing for any project directories outside of `/Users`
@ -229,8 +229,8 @@ in the Apple documentation, and Docker Desktop [Mac system requirements](install
* If you use bash, use the following command: `unset ${!DOCKER_*}`
* For other shells, unset each environment variable individually as described
in [Setting up to run Docker Desktop on
Mac](docker-toolbox.md#setting-up-to-run-docker-desktop-on-mac) in [Docker Desktop on Mac vs. Docker Toolbox](docker-toolbox.md).
in [Setting up to run Docker Desktop on Mac](docker-toolbox.md#setting-up-to-run-docker-desktop-on-mac)
in [Docker Desktop on Mac vs. Docker Toolbox](docker-toolbox.md).
* Network connections fail if the macOS Firewall is set to "Block all incoming
connections". You can enable the firewall, but `bootpd` must be allowed
@ -335,8 +335,8 @@ in the Apple documentation, and Docker Desktop [Mac system requirements](install
outside of `osxfs` mounts, and use third-party tools like Unison or `rsync` to
synchronize between container directories and bind-mounted directories. We are
actively working on `osxfs` performance using a number of different
techniques. To learn more, see the topic on [Performance issues, solutions,
and roadmap](osxfs.md#performance-issues-solutions-and-roadmap).
techniques. To learn more, see the topic on
[Performance issues, solutions, and roadmap](osxfs.md#performance-issues-solutions-and-roadmap).
* If your system does not have access to an NTP server, then after a hibernate
the time seen by Docker Desktop may be considerably out of sync with the host.

View File

@ -1312,10 +1312,9 @@ registry access (fixes [docker/for-win#569](https://github.com/docker/for-win/is
**New**
- Windows containers settings panel and options are working. In previous releases, settings were not implemented for [Windows containers
mode](index.md#switch-between-windows-and-linux-containers-beta-feature). (See
[About the Docker Windows containers specific
dialogs](index.md#about-the-docker-windows-containers-specific-dialogs).)
- Windows containers settings panel and options are working. In previous releases, settings were not implemented for
[Windows containers mode](index.md#switch-between-windows-and-linux-containers). (See
[About the Docker Windows containers specific dialogs](index.md#about-the-docker-windows-containers-specific-dialogs).)
- Windows containers: Restart from the settings panel works
- Windows containers: Factory default
- Windows containers: `Daemon.json` can be modified

View File

@ -307,8 +307,8 @@ Updating these settings requires a reconfiguration and reboot of the Linux VM.
The Docker Engine page allows you to configure the Docker daemon to determine how your containers run.
Type a JSON configuration file in the box to configure the daemon settings. For a full list of options, see the Docker Engine [dockerd commandline
reference](/engine/reference/commandline/dockerd.md){:target="_blank"
Type a JSON configuration file in the box to configure the daemon settings. For a full list of options, see the Docker Engine
[dockerd commandline reference](/engine/reference/commandline/dockerd.md){:target="_blank"
class="_"}.
Click **Apply & Restart** to save your settings and restart Docker Desktop.

View File

@ -55,11 +55,9 @@ more information, see [Running Docker Desktop in nested virtualization scenarios
Looking for information on using Windows containers?
* [Switch between Windows and Linux
containers](/docker-for-windows/index.md#switch-between-windows-and-linux-containers)
* [Switch between Windows and Linux containers](/docker-for-windows/index.md#switch-between-windows-and-linux-containers)
describes how you can toggle between Linux and Windows containers in Docker Desktop and points you to the tutorial mentioned above.
* [Getting Started with Windows Containers
(Lab)](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md)
* [Getting Started with Windows Containers (Lab)](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md)
provides a tutorial on how to set up and run Windows containers on Windows 10, Windows Server 2016 and Windows Server 2019. It shows you how to use a MusicStore application
with Windows containers.
* Docker Container Platform for Windows [articles and blog
@ -157,5 +155,4 @@ For information on how to back up and restore data volumes, see [Backup, restore
* [Troubleshooting](troubleshoot.md) describes common problems, workarounds, and
how to get support.
* [FAQs](faqs.md) provides answers to frequently asked questions.
* [Stable Release Notes](release-notes.md) or [Edge Release
Notes](edge-release-notes.md).
* [Stable Release Notes](release-notes.md) or [Edge Release Notes](edge-release-notes.md).

View File

@ -98,9 +98,9 @@ As well as on the registry. For example:
2017/06/20 18:15:30 http: TLS handshake error from 192.168.203.139:52883: tls: first record does not look like a TLS handshake
```
For more about using client and server side certificates, see [How do I add
custom CA certificates?](index.md#how-do-i-add-custom-ca certificates) and [How
do I add client certificates?](index.md#how-do-i-add-client-certificates) in the
For more about using client and server side certificates, see
[How do I add custom CA certificates?](index.md#how-do-i-add-custom-ca-certificates)
and [How do I add client certificates?](index.md#how-do-i-add-client-certificates) in the
Getting Started topic.
### Volumes
@ -117,9 +117,8 @@ volume defaults at container runtime, you need to either use non-host-mounted
volumes or find a way to make the applications work with the default file
permissions.
See also, [Can I change permissions on shared volumes for container-specific
deployment
requirements?](faqs.md#can-i-change-permissions-on-shared-volumes-for-container-specific-deployment-requirements)
See also,
[Can I change permissions on shared volumes for container-specific deployment requirements?](faqs.md#can-i-change-permissions-on-shared-volumes-for-container-specific-deployment-requirements)
in the FAQs.
#### Volume mounting requires shared drives for Linux containers
@ -183,13 +182,12 @@ In the subsequent screen, verify that Hyper-V is enabled:
#### Hyper-V driver for Docker Machine
The Docker Desktop installation includes the legacy tool Docker Machine which uses the old
[`boot2docker.iso`](https://github.com/boot2docker/boot2docker){:
target="_blank" class="_"}, and the [Microsoft Hyper-V
driver](/machine/drivers/hyper-v.md) to create local virtual machines. _This is
tangential to using Docker Desktop_, but if you want to use Docker Machine
to create multiple local Virtual Machines (VMs), or to provision remote machines, see the [Docker
Machine](/machine/index.md) topics. This is documented only for users looking for information about Docker Machine on Windows, which requires that Hyper-V is enabled, an external network switch is active, and referenced in the flags for the `docker-machine create` command [as described in the Docker
Machine driver example](/machine/drivers/hyper-v.md#example).
[`boot2docker.iso`](https://github.com/boot2docker/boot2docker){:target="_blank" class="_"},
and the [Microsoft Hyper-V driver](/machine/drivers/hyper-v.md) to create local
virtual machines. _This is tangential to using Docker Desktop_, but if you want to use Docker Machine
to create multiple local Virtual Machines (VMs), or to provision remote machines, see the
[Docker Machine](/machine/index.md) topics. This is documented only for users looking for information about Docker Machine on Windows, which requires that Hyper-V is enabled, an external network switch is active, and referenced in the flags for the `docker-machine create` command
as described in the [Docker Machine driver example](/machine/drivers/hyper-v.md#example).
#### Virtualization must be enabled
@ -225,14 +223,14 @@ Here are some steps to take if you experience similar problems:
![Hyper-V manager](images/hyperv-manager.png)
4. Set up an external network switch. If you plan at any point to use [Docker
Machine](/machine/overview.md) to set up multiple local VMs, you need this
anyway, as described in the topic on the [Hyper-V driver for Docker
Machine](/machine/drivers/hyper-v.md#example). You can replace `DockerNAT`
with this switch.
4. Set up an external network switch. If you plan at any point to use
[Docker Machine](/machine/overview.md) to set up multiple local VMs, you
need this anyway, as described in the topic on the
[Hyper-V driver for Docker Machine](/machine/drivers/hyper-v.md#example).
You can replace `DockerNAT` with this switch.
5. If previous steps fail to solve the problems, follow steps on the [Cleanup
README](https://github.com/Microsoft/Virtualization-Documentation/blob/master/windows-server-container-tools/CleanupContainerHostNetworking/README.md).
5. If previous steps fail to solve the problems, follow steps on the
[Cleanup README](https://github.com/Microsoft/Virtualization-Documentation/blob/master/windows-server-container-tools/CleanupContainerHostNetworking/README.md).
> Read the full description before you run the Windows cleanup script.
>
@ -246,12 +244,10 @@ Docker Desktop is not supported on Windows Server. Instead, you can use
[Docker Enterprise Basic](/ee/index.md) at no additional cost.
If you have questions about how to run Windows containers on Windows 10, see
[Switch between Windows and Linux
containers](index.md#switch-between-windows-and-linux-containers).
[Switch between Windows and Linux containers](index.md#switch-between-windows-and-linux-containers).
A full tutorial is available in [docker/labs](https://github.com/docker/labs) at
[Getting Started with Windows
Containers](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md).
[Getting Started with Windows Containers](https://github.com/docker/labs/blob/master/windows/windows-containers/README.md).
You can install a native Windows binary which allows you to develop and run
Windows containers without Docker Desktop. However, if you install Docker this way, you cannot develop or run Linux containers. If you try to run a Linux container on the native Docker daemon, an error occurs:
@ -288,8 +284,7 @@ Linux containers).
To reach a Windows container from the local host, you need to specify the IP
address and port for the container that is running the service.
You can get the container IP address by using [`docker
inspect`](/engine/reference/commandline/inspect.md) with some `--format` options
You can get the container IP address by using [`docker inspect`](/engine/reference/commandline/inspect.md) with some `--format` options
and the ID or name of the container. For the example above, the command would
look like this, using the name we gave to the container (`webserver`) instead of
the container ID:

View File

@ -44,9 +44,8 @@ make sure all of your services start.
You can define more than one `docker-compose.test.yml` file if needed. Any file
that ends in `.test.yml` is used for testing, and the tests run sequentially.
You can also use [custom build
hooks](advanced.md#override-build-test-or-push-commands) to further customize
your test behavior.
You can also use [custom build hooks](advanced.md#override-build-test-or-push-commands)
to further customize your test behavior.
> **Note**: If you enable Automated builds, they also run any tests defined
in the `test.yml` files.

View File

@ -85,7 +85,7 @@ You might redirected to the settings page to [link](link-source.md) the code rep
8. For each branch or tag, enable or disable the **Build Caching** toggle.
[Build caching](/engine/userguide/eng-image/dockerfile_best-practices/#/build-cache) can save time if you are building a large image frequently or have
[Build caching](/develop/develop-images/dockerfile_best-practices.md#leverage-build-cache) can save time if you are building a large image frequently or have
many dependencies. You might want to leave build caching disabled to
make sure all of your dependencies are resolved at build time, or if
you have a large layer that is quicker to build locally.

View File

@ -33,9 +33,9 @@ organizations.
>**Note**: If you are the owner of any GitHub organizations, you might see
options to grant Docker Hub access to them from this screen. You can also
individually edit an organization's third-party access settings to grant or
revoke Docker Hub's access. See [Grant access to a GitHub
organization](link-source.md#grant-access-to-a-github-organization) to
learn more.
revoke Docker Hub's access. See
[Grant access to a GitHub organization](link-source.md#grant-access-to-a-github-organization)
to learn more.
5. Click **Authorize docker** to save the link.

View File

@ -155,9 +155,9 @@ tutum/centos Centos image with SSH access. For the root.
There you can see two example results: `centos` and `ansible/centos7-ansible`.
The second result shows that it comes from the public repository of a user,
named `ansible/`, while the first result, `centos`, doesn't explicitly list a
repository which means that it comes from the top-level namespace for [official
images](/docker-hub/official_images.md). The `/` character separates a user's
repository from the image name.
repository which means that it comes from the top-level namespace for
[official images](/docker-hub/official_images.md). The `/` character separates
a user's repository from the image name.
Once you've found the image you want, you can download it with `docker pull <imagename>`:

View File

@ -8,7 +8,7 @@ keywords: dtr, webhooks, api, registry
## Prerequisite
See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md/#webhook-types) for a list of events you can trigger notifications for via the API.
See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md#webhook-types) for a list of events you can trigger notifications for via the API.
## API Base URL

View File

@ -9,7 +9,7 @@ keywords: dtr, webhooks, ui, web interface, registry
## Prerequisites
- You must have admin privileges to the repository in order to create a webhook.
- See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md/#webhook-types) for a list of events you can trigger notifications for using the web interface.
- See [Webhook types](/ee/dtr/admin/manage-webhooks/index.md#webhook-types) for a list of events you can trigger notifications for using the web interface.
## Create a webhook for your repository

View File

@ -49,10 +49,9 @@ DTR has a built-in security scanner that can be used to discover what versions
of software are used in your images. It scans each layer and aggregates the
results to give you a complete picture of what you are shipping as a part of
your stack. Most importantly, it correlates this information with a
vulnerability database that is kept up to date through [periodic
updates](admin/configure/set-up-vulnerability-scans.md). This
gives you [unprecedented insight into your exposure to known security
threats](user/manage-images/scan-images-for-vulnerabilities.md).
vulnerability database that is kept up to date through
[periodic updates](admin/configure/set-up-vulnerability-scans.md). This gives you
[unprecedented insight into your exposure to known security threats](user/manage-images/scan-images-for-vulnerabilities.md).
## Image signing

View File

@ -15,8 +15,9 @@ Scanning. The results of these scans are reported for each image tag in a reposi
Docker Security Scanning is available as an add-on to Docker Trusted Registry,
and an administrator configures it for your DTR instance. If you do not see
security scan results available on your repositories, your organization may not
have purchased the Security Scanning feature or it may be disabled. See [Set up
Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md) for more details.
have purchased the Security Scanning feature or it may be disabled. See
[Set up Security Scanning in DTR](../../admin/configure/set-up-vulnerability-scans.md)
for more details.
> **Tip**: Only users with write access to a repository can manually start a
scan. Users with read-only access can view the scan results, but cannot start
@ -41,8 +42,9 @@ discovered vulnerabilities.
DTR scans both Linux and Windows images, but by default Docker doesn't push
foreign image layers for Windows images so DTR won't be able to scan them. If
you want DTR to scan your Windows images, [configure Docker to always push image
layers](pull-and-push-images.md), and it will scan the non-foreign layers.
you want DTR to scan your Windows images,
[configure Docker to always push image layers](pull-and-push-images.md), and it
will scan the non-foreign layers.
## Security scan on push

View File

@ -11,9 +11,9 @@ redirect_from:
Two key components of the Docker Trusted Registry are the Notary Server and the Notary
Signer. These two containers provide the required components for using Docker Content
Trust (DCT) out of the box. [Docker Content
Trust](/engine/security/trust/content_trust/) allows you to sign image tags,
therefore giving consumers a way to verify the integrity of your image.
Trust (DCT) out of the box. [Docker Content Trust](/engine/security/trust/content_trust.md)
allows you to sign image tags, therefore giving consumers a way to verify the integrity
of your image.
As part of DTR, both the Notary and the Registry
servers are accessed through a front-end proxy, with both components sharing the
@ -29,13 +29,12 @@ DCT is integrated with the Docker CLI, and allows you to:
## Sign images that UCP can trust
UCP has a feature which will prevent [untrusted
images](/ee/ucp/admin/configure/run-only-the-images-you-trust/) from being
deployed on the cluster. To use the feature, you need to sign and push images to your DTR.
To tie the signed images back to UCP, you need to sign the
UCP has a feature which will prevent [untrusted images](/ee/ucp/admin/configure/run-only-the-images-you-trust.md)
from being deployed on the cluster. To use the feature, you need to sign and push
images to your DTR. To tie the signed images back to UCP, you need to sign the
images with the private keys of the UCP users. From a UCP client bundle, use
`key.pem` as your private key, and `cert.pem` as your public key
on an `x509` certificate.
`key.pem` as your private key, and `cert.pem` as your public key on an `x509`
certificate.
To sign images in a way that UCP can trust, you need to:

Some files were not shown because too many files have changed in this diff Show More