From 9fceeb262f78540423836c53370839e0d6c87d70 Mon Sep 17 00:00:00 2001 From: David Karlsson <35727626+dvdksn@users.noreply.github.com> Date: Sun, 11 Aug 2024 09:52:39 +0200 Subject: [PATCH] refactor: consolidate docker engine content files Move content files related to Docker Engine to the /engine content subdirectory, and update links Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- content/build/builders/_index.md | 2 +- content/build/building/annotations.md | 2 +- content/build/building/best-practices.md | 8 +- content/build/drivers/docker-container.md | 4 +- content/build/guide/mounts.md | 2 +- content/build/guide/multi-platform.md | 2 +- content/compose/compose-file/05-services.md | 4 +- content/compose/compose-file/06-networks.md | 4 +- content/compose/gettingstarted.md | 2 +- content/compose/gpu-support.md | 2 +- content/compose/networking.md | 8 +- content/compose/release-notes.md | 2 +- content/desktop/backup-and-restore.md | 4 +- content/desktop/install/linux-install.md | 6 +- content/desktop/networking.md | 2 +- .../desktop/previous-versions/archive-mac.md | 2 +- .../previous-versions/archive-windows.md | 2 +- .../previous-versions/edge-releases-mac.md | 2 +- .../edge-releases-windows.md | 2 +- content/desktop/release-notes.md | 2 +- content/desktop/settings/linux.md | 8 +- content/desktop/settings/mac.md | 4 +- content/desktop/settings/windows.md | 4 +- content/desktop/synchronized-file-sharing.md | 2 +- content/desktop/troubleshoot/overview.md | 2 +- content/desktop/use-desktop/volumes.md | 8 +- content/{config => engine/cli}/completion.md | 2 + content/{config => engine/cli}/filter.md | 40 ++-- content/{config => engine/cli}/formatting.md | 1 + content/{config => engine/cli}/otel.md | 2 + content/{network => engine/cli}/proxy.md | 18 +- .../containers/live-restore.md | 1 + .../containers/multi-service_container.md | 1 + .../containers/resource_constraints.md | 1 + .../containers/runmetrics.md | 1 + .../start-containers-automatically.md | 5 +- content/{config => engine}/daemon/_index.md | 13 +- .../{ => daemon}/alternative-runtimes.md | 19 +- .../daemon/images/prometheus-graph_idle.webp | Bin .../daemon/images/prometheus-graph_load.webp | Bin .../daemon/images/prometheus-targets.webp | Bin content/{config => engine}/daemon/ipv6.md | 3 +- content/{config => engine}/daemon/logs.md | 2 + .../{config => engine}/daemon/prometheus.md | 1 + content/{config => engine}/daemon/proxy.md | 3 +- .../daemon/remote-access.md | 2 + content/{config => engine}/daemon/start.md | 4 +- .../{config => engine}/daemon/troubleshoot.md | 1 + content/engine/faq.md | 4 +- content/engine/install/debian.md | 4 +- content/engine/install/linux-postinstall.md | 12 +- content/engine/install/raspberry-pi-os.md | 4 +- content/engine/install/ubuntu.md | 4 +- .../containers => engine}/logging/_index.md | 1 + .../logging/configure.md | 45 ++--- .../logging/drivers}/awslogs.md | 1 + .../logging/drivers}/etwlogs.md | 1 + .../logging/drivers}/fluentd.md | 1 + .../logging/drivers}/gcplogs.md | 1 + .../logging/drivers}/gelf.md | 1 + .../logging/drivers}/journald.md | 1 + .../logging/drivers}/json-file.md | 1 + .../logging/drivers}/local.md | 1 + .../logging/drivers}/splunk.md | 1 + .../logging/drivers}/syslog.md | 1 + .../logging/dual-logging.md | 8 +- .../containers => engine}/logging/log_tags.md | 1 + .../containers => engine}/logging/plugins.md | 1 + .../contexts.md} | 2 + .../manage-resources/labels.md} | 41 ++-- .../manage-resources}/pruning.md | 11 +- content/{ => engine}/network/_index.md | 7 +- .../{ => engine}/network/drivers/_index.md | 8 +- .../{ => engine}/network/drivers/bridge.md | 16 +- content/{ => engine}/network/drivers/host.md | 12 +- .../network/drivers/images/ipvlan-l3.gliffy | 0 .../network/drivers/images/ipvlan-l3.webp | Bin .../drivers/images/ipvlan_l2_simple.gliffy | 0 .../drivers/images/ipvlan_l2_simple.png | Bin .../images/macvlan-bridge-ipvlan-l2.gliffy | 0 .../images/macvlan-bridge-ipvlan-l2.webp | Bin .../drivers/images/vlans-deeper-look.gliffy | 0 .../drivers/images/vlans-deeper-look.webp | Bin .../{ => engine}/network/drivers/ipvlan.md | 4 +- .../{ => engine}/network/drivers/macvlan.md | 4 +- content/{ => engine}/network/drivers/none.md | 6 +- .../{ => engine}/network/drivers/overlay.md | 10 +- content/{ => engine}/network/links.md | 3 +- .../network/packet-filtering-firewalls.md | 1 + .../network/tutorials/host.md} | 14 +- .../network/tutorials/macvlan.md} | 10 +- .../network/tutorials/overlay.md} | 13 +- .../network/tutorials/standalone.md} | 16 +- content/engine/release-notes/17.11.md | 2 +- content/engine/release-notes/18.06.md | 2 +- content/engine/release-notes/18.09.md | 2 +- content/engine/release-notes/20.10.md | 8 +- content/engine/release-notes/23.0.md | 2 +- content/engine/release-notes/25.0.md | 2 +- content/engine/security/_index.md | 4 +- content/engine/security/protect-access.md | 2 +- content/engine/security/rootless.md | 2 +- content/{ => engine}/storage/_index.md | 17 +- content/{ => engine}/storage/bind-mounts.md | 15 +- content/{ => engine}/storage/containerd.md | 6 +- .../storage/drivers}/_index.md | 10 +- .../storage/drivers}/aufs-driver.md | 0 .../storage/drivers}/btrfs-driver.md | 0 .../storage/drivers}/device-mapper-driver.md | 4 +- .../storage/drivers}/images/aufs_layers.webp | Bin .../drivers}/images/btfs_container_layer.webp | Bin .../storage/drivers}/images/btfs_pool.webp | Bin .../drivers}/images/btfs_snapshots.webp | Bin .../drivers}/images/btfs_subvolume.webp | Bin .../drivers}/images/container-layers.webp | Bin .../storage/drivers}/images/dm_container.webp | Bin .../drivers}/images/overlay_constructs.webp | Bin .../drivers}/images/sharing-layers.webp | Bin .../drivers}/images/two_dm_container.webp | Bin .../storage/drivers}/images/zfs_clones.webp | Bin .../storage/drivers}/images/zfs_zpool.webp | Bin .../storage/drivers}/images/zpool_blocks.webp | Bin .../storage/drivers}/overlayfs-driver.md | 2 +- .../storage/drivers}/select-storage-driver.md | 10 +- .../storage/drivers}/vfs-driver.md | 0 .../storage/drivers}/zfs-driver.md | 0 .../storage/images/types-of-mounts-bind.webp | Bin .../storage/images/types-of-mounts-tmpfs.webp | Bin .../images/types-of-mounts-volume.webp | Bin .../storage/images/types-of-mounts.webp | Bin .../images/volumes-shared-storage.webp | Bin content/{ => engine}/storage/tmpfs.md | 3 +- content/{ => engine}/storage/volumes.md | 5 +- content/engine/swarm/manage-nodes.md | 6 +- content/engine/swarm/networking.md | 6 +- content/engine/swarm/services.md | 8 +- content/engine/tutorials/_index.md | 2 +- .../engine/tutorials/networkingcontainers.md | 2 +- .../overriding-container-defaults.md | 2 +- .../persisting-container-data.md | 6 +- .../running-containers/publishing-ports.md | 4 +- .../the-basics/what-is-a-container.md | 2 +- content/guides/use-case/jupyter.md | 4 +- content/guides/workshop/04_sharing_app.md | 2 +- content/guides/workshop/05_persisting_data.md | 4 +- content/guides/workshop/07_multi_container.md | 2 +- content/language/golang/develop.md | 6 +- content/language/nodejs/develop.md | 2 +- content/language/rust/develop.md | 4 +- data/glossary.yaml | 8 +- data/redirects.yml | 8 +- data/toc.yaml | 180 +++++++++--------- hugo.yaml | 2 +- 153 files changed, 451 insertions(+), 391 deletions(-) rename content/{config => engine/cli}/completion.md (98%) rename content/{config => engine/cli}/filter.md (74%) rename content/{config => engine/cli}/formatting.md (99%) rename content/{config => engine/cli}/otel.md (99%) rename content/{network => engine/cli}/proxy.md (92%) rename content/{config => engine}/containers/live-restore.md (98%) rename content/{config => engine}/containers/multi-service_container.md (98%) rename content/{config => engine}/containers/resource_constraints.md (99%) rename content/{config => engine}/containers/runmetrics.md (99%) rename content/{config => engine}/containers/start-containers-automatically.md (97%) rename content/{config => engine}/daemon/_index.md (89%) rename content/engine/{ => daemon}/alternative-runtimes.md (91%) rename content/{config => engine}/daemon/images/prometheus-graph_idle.webp (100%) rename content/{config => engine}/daemon/images/prometheus-graph_load.webp (100%) rename content/{config => engine}/daemon/images/prometheus-targets.webp (100%) rename content/{config => engine}/daemon/ipv6.md (98%) rename content/{config => engine}/daemon/logs.md (99%) rename content/{config => engine}/daemon/prometheus.md (99%) rename content/{config => engine}/daemon/proxy.md (99%) rename content/{config => engine}/daemon/remote-access.md (99%) rename content/{config => engine}/daemon/start.md (97%) rename content/{config => engine}/daemon/troubleshoot.md (99%) rename content/{config/containers => engine}/logging/_index.md (98%) rename content/{config/containers => engine}/logging/configure.md (74%) rename content/{config/containers/logging => engine/logging/drivers}/awslogs.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/etwlogs.md (98%) rename content/{config/containers/logging => engine/logging/drivers}/fluentd.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/gcplogs.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/gelf.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/journald.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/json-file.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/local.md (98%) rename content/{config/containers/logging => engine/logging/drivers}/splunk.md (99%) rename content/{config/containers/logging => engine/logging/drivers}/syslog.md (99%) rename content/{config/containers => engine}/logging/dual-logging.md (97%) rename content/{config/containers => engine}/logging/log_tags.md (97%) rename content/{config/containers => engine}/logging/plugins.md (97%) rename content/engine/{context/working-with-contexts.md => manage-resources/contexts.md} (99%) rename content/{config/labels-custom-metadata.md => engine/manage-resources/labels.md} (68%) rename content/{config => engine/manage-resources}/pruning.md (93%) rename content/{ => engine}/network/_index.md (97%) rename content/{ => engine}/network/drivers/_index.md (92%) rename content/{ => engine}/network/drivers/bridge.md (96%) rename content/{ => engine}/network/drivers/host.md (89%) rename content/{ => engine}/network/drivers/images/ipvlan-l3.gliffy (100%) rename content/{ => engine}/network/drivers/images/ipvlan-l3.webp (100%) rename content/{ => engine}/network/drivers/images/ipvlan_l2_simple.gliffy (100%) rename content/{ => engine}/network/drivers/images/ipvlan_l2_simple.png (100%) rename content/{ => engine}/network/drivers/images/macvlan-bridge-ipvlan-l2.gliffy (100%) rename content/{ => engine}/network/drivers/images/macvlan-bridge-ipvlan-l2.webp (100%) rename content/{ => engine}/network/drivers/images/vlans-deeper-look.gliffy (100%) rename content/{ => engine}/network/drivers/images/vlans-deeper-look.webp (100%) rename content/{ => engine}/network/drivers/ipvlan.md (99%) rename content/{ => engine}/network/drivers/macvlan.md (96%) rename content/{ => engine}/network/drivers/none.md (90%) rename content/{ => engine}/network/drivers/overlay.md (93%) rename content/{ => engine}/network/links.md (99%) rename content/{ => engine}/network/packet-filtering-firewalls.md (99%) rename content/{network/network-tutorial-host.md => engine/network/tutorials/host.md} (84%) rename content/{network/network-tutorial-macvlan.md => engine/network/tutorials/macvlan.md} (96%) rename content/{network/network-tutorial-overlay.md => engine/network/tutorials/overlay.md} (97%) rename content/{network/network-tutorial-standalone.md => engine/network/tutorials/standalone.md} (97%) rename content/{ => engine}/storage/_index.md (94%) rename content/{ => engine}/storage/bind-mounts.md (96%) rename content/{ => engine}/storage/containerd.md (90%) rename content/{storage/storagedriver => engine/storage/drivers}/_index.md (98%) rename content/{storage/storagedriver => engine/storage/drivers}/aufs-driver.md (100%) rename content/{storage/storagedriver => engine/storage/drivers}/btrfs-driver.md (100%) rename content/{storage/storagedriver => engine/storage/drivers}/device-mapper-driver.md (99%) rename content/{storage/storagedriver => engine/storage/drivers}/images/aufs_layers.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/btfs_container_layer.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/btfs_pool.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/btfs_snapshots.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/btfs_subvolume.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/container-layers.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/dm_container.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/overlay_constructs.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/sharing-layers.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/two_dm_container.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/zfs_clones.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/zfs_zpool.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/images/zpool_blocks.webp (100%) rename content/{storage/storagedriver => engine/storage/drivers}/overlayfs-driver.md (99%) rename content/{storage/storagedriver => engine/storage/drivers}/select-storage-driver.md (96%) rename content/{storage/storagedriver => engine/storage/drivers}/vfs-driver.md (100%) rename content/{storage/storagedriver => engine/storage/drivers}/zfs-driver.md (100%) rename content/{ => engine}/storage/images/types-of-mounts-bind.webp (100%) rename content/{ => engine}/storage/images/types-of-mounts-tmpfs.webp (100%) rename content/{ => engine}/storage/images/types-of-mounts-volume.webp (100%) rename content/{ => engine}/storage/images/types-of-mounts.webp (100%) rename content/{ => engine}/storage/images/volumes-shared-storage.webp (100%) rename content/{ => engine}/storage/tmpfs.md (98%) rename content/{ => engine}/storage/volumes.md (99%) diff --git a/content/build/builders/_index.md b/content/build/builders/_index.md index 15907cd286..12b5a8ca78 100644 --- a/content/build/builders/_index.md +++ b/content/build/builders/_index.md @@ -18,7 +18,7 @@ for your builds. This builder uses the BuildKit library bundled with the daemon. This builder requires no configuration. The default builder is directly bound to the Docker daemon and its -[context](../../engine/context/working-with-contexts.md). If you change the +[context](/engine/manage-resources/contexts.md). If you change the Docker context, your `default` builder refers to the new Docker context. ## Build drivers diff --git a/content/build/building/annotations.md b/content/build/building/annotations.md index d525e5a1f2..114de3d5a2 100644 --- a/content/build/building/annotations.md +++ b/content/build/building/annotations.md @@ -211,5 +211,5 @@ Reference information: [config]: https://github.com/opencontainers/image-spec/blob/main/config.md [descriptors]: https://github.com/opencontainers/image-spec/blob/main/descriptor.md [indexes]: https://github.com/opencontainers/image-spec/blob/main/image-index.md -[labels]: ../../config/labels-custom-metadata.md +[labels]: /engine/manage-resources/labels.md [manifests]: https://github.com/opencontainers/image-spec/blob/main/manifest.md diff --git a/content/build/building/best-practices.md b/content/build/building/best-practices.md index f522bc93b9..5d37ea954c 100644 --- a/content/build/building/best-practices.md +++ b/content/build/building/best-practices.md @@ -145,14 +145,14 @@ database, and an in-memory cache in a decoupled manner. Limiting each container to one process is a good rule of thumb, but it's not a hard and fast rule. For example, not only can containers be -[spawned with an init process](../../engine/reference/run.md#specify-an-init-process), +[spawned with an init process](/engine/containers/run.md#specify-an-init-process), some programs might spawn additional processes of their own accord. For instance, [Celery](https://docs.celeryproject.org/) can spawn multiple worker 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](../../network/index.md) +containers depend on each other, you can use [Docker container networks](/engine/network/_index.md) to ensure that these containers can communicate. ## Sort multi-line arguments @@ -308,10 +308,10 @@ LABEL vendor=ACME\ Incorporated \ com.example.release-date="2015-02-12" ``` -See [Understanding object labels](../../config/labels-custom-metadata.md) +See [Understanding object labels](/engine/manage-resources/labels.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#manage-labels-on-objects). +[Managing labels on objects](/engine/manage-resources/labels.md#manage-labels-on-objects). See also [LABEL](../../reference/dockerfile.md#label) in the Dockerfile reference. ### RUN diff --git a/content/build/drivers/docker-container.md b/content/build/drivers/docker-container.md index 635a85ebea..aecdf66c8a 100644 --- a/content/build/drivers/docker-container.md +++ b/content/build/drivers/docker-container.md @@ -46,11 +46,11 @@ pass to `--driver-opt`: | `default-load` | Boolean | `false` | Automatically load images to the Docker Engine image store. | | `network` | String | | Sets the network mode for the container. | | `cgroup-parent` | String | `/docker/buildx` | Sets the cgroup parent of the container if Docker is using the "cgroupfs" driver. | -| `restart-policy` | String | `unless-stopped` | Sets the container's [restart policy](../../config/containers/start-containers-automatically.md#use-a-restart-policy). | +| `restart-policy` | String | `unless-stopped` | Sets the container's [restart policy](/engine/containers/start-containers-automatically.md#use-a-restart-policy). | | `env.` | String | | Sets the environment variable `key` to the specified `value` in the container. | Before you configure the resource limits for the container, -read about [configuring runtime resource constraints for containers](../../config/containers/resource_constraints/). +read about [configuring runtime resource constraints for containers](/engine/containers/resource_constraints/). ## Usage diff --git a/content/build/guide/mounts.md b/content/build/guide/mounts.md index eaceb6bd33..5ed92beca8 100644 --- a/content/build/guide/mounts.md +++ b/content/build/guide/mounts.md @@ -215,7 +215,7 @@ mounts. Related information: - [Dockerfile reference](../../reference/dockerfile.md#run---mount) -- [Bind mounts](../../storage/bind-mounts.md) +- [Bind mounts](/engine/storage/bind-mounts.md) ## Next steps diff --git a/content/build/guide/multi-platform.md b/content/build/guide/multi-platform.md index b880a12dac..c108cedc9b 100644 --- a/content/build/guide/multi-platform.md +++ b/content/build/guide/multi-platform.md @@ -241,7 +241,7 @@ Related information: - [Multi-platfom images](../building/multi-platform.md) - [containerd image store (Docker Desktop)](../../desktop/containerd.md) -- [containerd image store (Docker Engine)](../../storage/containerd.md) +- [containerd image store (Docker Engine)](/engine/storage/containerd.md) You may also want to consider checking out [xx - Dockerfile cross-compilation helpers](https://github.com/tonistiigi/xx). diff --git a/content/compose/compose-file/05-services.md b/content/compose/compose-file/05-services.md index 002cc8d36d..950b1d90b6 100644 --- a/content/compose/compose-file/05-services.md +++ b/content/compose/compose-file/05-services.md @@ -1217,7 +1217,7 @@ There is a performance penalty for applications that swap memory to disk often. - `none`: Turns off all container networking. - `host`: Gives the container raw access to the host's network interface. -- `service:{name}`: Gives the containers access to the specified service only. For more information, see [Container networks](../../network/_index.md#container-networks). +- `service:{name}`: Gives the containers access to the specified service only. For more information, see [Container networks](/engine/network/_index.md#container-networks). ```yml network_mode: "host" @@ -1574,7 +1574,7 @@ web: runtime: runc ``` -The default is `runc`. To use a different runtime, see [Alternative runtimes](../../engine/alternative-runtimes.md). +The default is `runc`. To use a different runtime, see [Alternative runtimes](/engine/daemon/alternative-runtimes.md). ### scale diff --git a/content/compose/compose-file/06-networks.md b/content/compose/compose-file/06-networks.md index a498b8b876..2edc5b22a8 100644 --- a/content/compose/compose-file/06-networks.md +++ b/content/compose/compose-file/06-networks.md @@ -73,7 +73,7 @@ networks: driver: bridge ``` -For more information on drivers and available options, see [Network drivers](../../network/drivers/_index.md). +For more information on drivers and available options, see [Network drivers](/engine/network/drivers/_index.md). ### driver_opts @@ -103,7 +103,7 @@ networks: ### enable_ipv6 -`enable_ipv6` enables IPv6 networking. For an example, see step four of [Create an IPv6 network](../../config/daemon/ipv6.md). +`enable_ipv6` enables IPv6 networking. For an example, see step four of [Create an IPv6 network](/engine/daemon/ipv6.md). ### external diff --git a/content/compose/gettingstarted.md b/content/compose/gettingstarted.md index 1c64dabb86..3d2b84f5fd 100644 --- a/content/compose/gettingstarted.md +++ b/content/compose/gettingstarted.md @@ -240,7 +240,7 @@ services: Whenever a file is changed, Compose syncs the file to the corresponding location under `/code` inside the container. Once copied, the bundler updates the running application without a restart. -For more information on how Compose Watch works, see [Use Compose Watch](file-watch.md). Alternatively, see [Manage data in containers](../storage/volumes.md) for other options. +For more information on how Compose Watch works, see [Use Compose Watch](file-watch.md). Alternatively, see [Manage data in containers](/engine/storage/volumes.md) for other options. > **Note** > diff --git a/content/compose/gpu-support.md b/content/compose/gpu-support.md index e82f719808..515d674eab 100644 --- a/content/compose/gpu-support.md +++ b/content/compose/gpu-support.md @@ -4,7 +4,7 @@ keywords: documentation, docs, docker, compose, GPU access, NVIDIA, samples title: Turn on GPU access with Docker Compose --- -Compose services can define GPU device reservations if the Docker host contains such devices and the Docker Daemon is set accordingly. For this, make sure you install the [prerequisites](../config/containers/resource_constraints.md#gpu) if you haven't already done so. +Compose services can define GPU device reservations if the Docker host contains such devices and the Docker Daemon is set accordingly. For this, make sure you install the [prerequisites](/engine/containers/resource_constraints.md#gpu) if you haven't already done so. The examples in the following sections focus specifically on providing service containers access to GPU devices with Docker Compose. You can use either `docker-compose` or `docker compose` commands. For more information, see [Migrate to Compose V2](migrate.md). diff --git a/content/compose/networking.md b/content/compose/networking.md index dd8728ceed..84e0fb1c1c 100644 --- a/content/compose/networking.md +++ b/content/compose/networking.md @@ -7,7 +7,7 @@ title: Networking in Compose {{< include "compose-eol.md" >}} By default Compose sets up a single -[network](../reference/cli/docker/network/create.md) for your app. Each +[network](/reference/cli/docker/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 the service's name. @@ -85,13 +85,13 @@ See the [links reference](compose-file/05-services.md#links) for more informatio ## Multi-host networking -When deploying a Compose application on a Docker Engine with [Swarm mode enabled](../engine/swarm/index.md), +When deploying a Compose application on a Docker Engine with [Swarm mode enabled](../engine/swarm/_index.md), you can make use of the built-in `overlay` driver to enable multi-host communication. Overlay networks are always created as `attachable`. You can optionally set the [`attachable`](compose-file/06-networks.md#attachable) property to `false`. -Consult the [Swarm mode section](../engine/swarm/index.md), to see how to set up -a Swarm cluster, and the [Getting started with multi-host networking](../network/network-tutorial-overlay.md) +Consult the [Swarm mode section](../engine/swarm/_index.md), to see how to set up +a Swarm cluster, and the [Getting started with multi-host networking](/engine/network/tutorials/overlay.md) to learn about multi-host overlay networks. ## Specify custom networks diff --git a/content/compose/release-notes.md b/content/compose/release-notes.md index 7afa558c81..3a96544153 100644 --- a/content/compose/release-notes.md +++ b/content/compose/release-notes.md @@ -2303,7 +2303,7 @@ naming scheme accordingly before upgrading. - Added support for `extra_hosts` in build configuration - Added support for the [long syntax](compose-file/legacy-versions.md) for volume entries, as previously introduced in the 3.2 format. - Using this syntax will create [mounts](../storage/bind-mounts.md) instead of volumes. + Using this syntax will create [mounts](/engine/storage/bind-mounts.md) instead of volumes. #### Compose file version 2.1 and up diff --git a/content/desktop/backup-and-restore.md b/content/desktop/backup-and-restore.md index df8054c22e..f0ccc5be05 100644 --- a/content/desktop/backup-and-restore.md +++ b/content/desktop/backup-and-restore.md @@ -24,7 +24,7 @@ computer, for example. Also note that filesystem changes in volume that are attached to the container are not included in the image, and must be backed up separately. - If you used a [named volume](../storage/index.md#more-details-about-mount-types) to store container data, such as databases, refer to the [back up, restore, or migrate data volumes](../storage/volumes.md#back-up-restore-or-migrate-data-volumes) page in the storage section. + If you used a [named volume](/engine/storage/index.md#more-details-about-mount-types) to store container data, such as databases, refer to the [back up, restore, or migrate data volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) page in the storage section. 2. Use [`docker push`](../reference/cli/docker/image/push.md) to push any images you have built locally and want to keep to the [Docker Hub registry](../docker-hub/index.md). @@ -49,4 +49,4 @@ and [install a different version](release-notes.md) or reset Docker Desktop to f 2. Re-create your containers if needed, using [`docker run`](../reference/cli/docker/container/run.md), or [Docker Compose](../compose/index.md). -Refer to the [backup, restore, or migrate data volumes](../storage/volumes.md#back-up-restore-or-migrate-data-volumes) page in the storage section to restore volume data. +Refer to the [backup, restore, or migrate data volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) page in the storage section to restore volume data. diff --git a/content/desktop/install/linux-install.md b/content/desktop/install/linux-install.md index e0d66cc3d4..573b7b5a5c 100644 --- a/content/desktop/install/linux-install.md +++ b/content/desktop/install/linux-install.md @@ -74,7 +74,7 @@ $ sudo systemctl disable docker docker.socket containerd The Docker CLI can be used to interact with multiple Docker Engines. For example, you can use the same Docker CLI to control a local Docker Engine and to control -a remote Docker Engine instance running in the cloud. [Docker Contexts](../../engine/context/working-with-contexts.md) +a remote Docker Engine instance running in the cloud. [Docker Contexts](/engine/manage-resources/contexts.md) allow you to switch between Docker Engines instances. When installing Docker Desktop, a dedicated "desktop-linux" context is created to @@ -112,7 +112,7 @@ desktop-linux Current context is now "desktop-linux" ``` -Refer to the [Docker Context documentation](../../engine/context/working-with-contexts.md) for more details. +Refer to the [Docker Context documentation](/engine/manage-resources/contexts.md) for more details. {{< /accordion >}} @@ -241,7 +241,7 @@ Sign out and sign back in so that your group membership is re-evaluated. - Explore [Docker's core subscriptions](https://www.docker.com/pricing/) to see what Docker can offer you. - [Get started with Docker](../../guides/getting-started/_index.md). -- [Explore Docker Desktop](../use-desktop/index.md) and all its features. +- [Explore Docker Desktop](../use-desktop/_index.md) and all its features. - [Troubleshooting](../troubleshoot/overview.md) describes common problems, workarounds, how to run and submit diagnostics, and submit issues. - [FAQs](../faqs/general.md) provide answers to frequently asked questions. - [Release notes](../release-notes.md) lists component updates, new features, and improvements associated with Docker Desktop releases. diff --git a/content/desktop/networking.md b/content/desktop/networking.md index 9bf6e10393..4bd912f401 100644 --- a/content/desktop/networking.md +++ b/content/desktop/networking.md @@ -181,7 +181,7 @@ container to random ports on the host. $ docker run -d -P --name webserver nginx ``` -Alternatively, you can also use [host networking](../network/drivers/host.md#docker-desktop) +Alternatively, you can also use [host networking](/engine/network/drivers/host.md#docker-desktop) to give the container direct access to the network stack of the host. See the [run command](../reference/cli/docker/container/run.md) for more details on diff --git a/content/desktop/previous-versions/archive-mac.md b/content/desktop/previous-versions/archive-mac.md index 7e253cc48c..f9d93517bd 100644 --- a/content/desktop/previous-versions/archive-mac.md +++ b/content/desktop/previous-versions/archive-mac.md @@ -36,7 +36,7 @@ This page contains release notes for older versions of Docker Desktop for Mac. - Re-enable raw as the default disk format for users running macOS 10.13.4 and higher. Note this change only takes effect after a "reset to factory defaults" or "remove all data" (from the Whale menu -> Preferences -> Reset). Related to [docker/for-mac#2625](https://github.com/docker/for-mac/issues/2625) * Bug fixes and minor changes - - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Preferences > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](../../storage/volumes.md#back-up-restore-or-migrate-data-volumes) + - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Preferences > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) - OS X El Captain 10.11 is deprecated in Docker Desktop. You will not be able to install updates after Docker Desktop 18.06.x. We recommend upgrading to the latest version of macOS. - Fix bug which would cause VM logs to be written to RAM rather than disk in some cases, and the VM to hang. See [docker/for-mac#2984](https://github.com/docker/for-mac/issues/2984) - Fix network connection leak triggered by haproxy TCP health-checks [docker/for-mac#1132](https://github.com/docker/for-mac/issues/1132) diff --git a/content/desktop/previous-versions/archive-windows.md b/content/desktop/previous-versions/archive-windows.md index b7e06d638b..a06c5674bd 100644 --- a/content/desktop/previous-versions/archive-windows.md +++ b/content/desktop/previous-versions/archive-windows.md @@ -50,7 +50,7 @@ This page contains release notes for older versions of Docker Desktop for Window - Kubernetes Support. You can now run a single-node Kubernetes cluster from the "Kubernetes" Pane in Docker for Windows settings and use kubectl commands as well as Docker commands. See [the Kubernetes section](../kubernetes.md) * Bug fixes and minor changes - - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset the disk image (in Settings > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [backup volumes](../../storage/volumes.md#back-up-restore-or-migrate-data-volumes) + - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset the disk image (in Settings > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [backup volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) - Fix bug which would in some cases cause virtual machine logs to be written to RAM rather than disk, and the virtual machine to hang. - Fix security issue with named pipe connection to docker service. - Fix VPNKit memory leak. Fixes [docker/for-win#2087](https://github.com/docker/for-win/issues/2087), [moby/vpnkit#371](https://github.com/moby/vpnkit/issues/371) diff --git a/content/desktop/previous-versions/edge-releases-mac.md b/content/desktop/previous-versions/edge-releases-mac.md index e119b7f53d..533d35a9ab 100644 --- a/content/desktop/previous-versions/edge-releases-mac.md +++ b/content/desktop/previous-versions/edge-releases-mac.md @@ -733,7 +733,7 @@ This release contains a Kubernetes upgrade. Note that your local Kubernetes clus - Add an experimental SOCKS server to allow access to container networks, see [docker/for-mac#2670](https://github.com/docker/for-mac/issues/2670#issuecomment-372365274). Also see [docker/for-mac#2721](https://github.com/docker/for-mac/issues/2721) * Bug fixes and minor changes - - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Preferences > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](../../storage/volumes.md#back-up-restore-or-migrate-data-volumes) + - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Preferences > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) - Fix startup issue with AUFS [docker/for-mac#2804](https://github.com/docker/for-mac/issues/2804) - Fix status bug which could prevent the Kubernetes cluster from starting. Fixes [docker/for-mac#2990](https://github.com/docker/for-mac/issues/2990) - Fix bug which would cause virtual machine logs to be written to RAM rather than disk in some cases, and the virtual machine to hang. See [docker/for-mac#2984](https://github.com/docker/for-mac/issues/2984) diff --git a/content/desktop/previous-versions/edge-releases-windows.md b/content/desktop/previous-versions/edge-releases-windows.md index c43647befd..2bd361e2f6 100644 --- a/content/desktop/previous-versions/edge-releases-windows.md +++ b/content/desktop/previous-versions/edge-releases-windows.md @@ -954,7 +954,7 @@ This release contains a Kubernetes upgrade. Note that your local Kubernetes clus - New Kubernetes menu item allowing to switch Kubernetes context & connect to clusters other than the local one. * Bug fixes and minor changes - - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Settings > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](../../storage/volumes.md#back-up-restore-or-migrate-data-volumes) + - AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Settings > Reset menu) before updating to the next major update. You can check documentation to [save images](/reference/cli/docker/image/save/#examples) and [back up volumes](/engine/storage/volumes.md#back-up-restore-or-migrate-data-volumes) - Fix startup issue with AUFS - Fix status bug which could prevent the kubernetes cluster from starting. - Fix bug which would cause VM logs to be written to RAM rather than disk in some cases, and the VM to hang. diff --git a/content/desktop/release-notes.md b/content/desktop/release-notes.md index 824044fe98..53784748f5 100644 --- a/content/desktop/release-notes.md +++ b/content/desktop/release-notes.md @@ -372,7 +372,7 @@ This can be resolved by adding the user to the **docker-users** group. Before st - New [interactive Compose CLI (experimental)](../compose/environment-variables/envvars.md#compose_menu). - Beta release of: - Air-Gapped Containers with [Settings Management](hardened-desktop/air-gapped-containers/_index.md). - - [Host networking](../network/drivers/host.md#docker-desktop) in Docker Desktop. + - [Host networking](/engine/network/drivers/host.md#docker-desktop) in Docker Desktop. - [Docker Debug](use-desktop/container.md#integrated-terminal) for running containers. - [Volumes Backup & Share extension](use-desktop/volumes.md) functionality available in the **Volumes** tab. diff --git a/content/desktop/settings/linux.md b/content/desktop/settings/linux.md index eb28b12258..5e091dd5d1 100644 --- a/content/desktop/settings/linux.md +++ b/content/desktop/settings/linux.md @@ -137,8 +137,8 @@ File share settings are: > * Shared folders are designed to allow application code to be edited > on the host while being executed in containers. For non-code items > such as cache directories or databases, the performance will be much -> better if they are stored in the Linux VM, using a [data volume](../../storage/volumes.md) -> (named volume) or [data container](../../storage/volumes.md). +> better if they are stored in the Linux VM, using a [data volume](/engine/storage/volumes.md) +> (named volume) or [data container](/engine/storage/volumes.md). { .tip } ### Proxies @@ -204,8 +204,8 @@ edit the file using your favorite text editor. > > Only the **Docker Desktop** daemon uses the configuration file under `$HOME/.docker`. > If you manually install Docker Engine alongside Docker Desktop, the manually -> installed instance uses a `daemon.json` configuration file in a different location. -> Refer to [Configure the daemon](../../config/daemon/index.md) for more information +> installed instance uses a `daemon.json` configuration file in a different location. +> Refer to [Configure the daemon](/engine/daemon/_index.md) for more information > about how to configure the Docker daemon on a manually installed Docker Engine. To see the full list of possible configuration options, see the diff --git a/content/desktop/settings/mac.md b/content/desktop/settings/mac.md index e2a67005fe..06faae4030 100644 --- a/content/desktop/settings/mac.md +++ b/content/desktop/settings/mac.md @@ -169,8 +169,8 @@ File share settings are: > * Shared folders are designed to allow application code to be edited > on the host while being executed in containers. For non-code items > such as cache directories or databases, the performance will be much -> better if they are stored in the Linux VM, using a [data volume](../../storage/volumes.md) -> (named volume) or [data container](../../storage/volumes.md). +> better if they are stored in the Linux VM, using a [data volume](/engine/storage/volumes.md) +> (named volume) or [data container](/engine/storage/volumes.md). > * If you share the whole of your home directory into a container, MacOS may > prompt you to give Docker access to personal areas of your home directory such as > your Reminders or Downloads. diff --git a/content/desktop/settings/windows.md b/content/desktop/settings/windows.md index e344606349..7295ea2168 100644 --- a/content/desktop/settings/windows.md +++ b/content/desktop/settings/windows.md @@ -163,8 +163,8 @@ File share settings are: > * Shared folders are designed to allow application code to be edited > on the host while being executed in containers. For non-code items > such as cache directories or databases, the performance will be much -> better if they are stored in the Linux VM, using a [data volume](../../storage/volumes.md) -> (named volume) or [data container](../../storage/volumes.md). +> better if they are stored in the Linux VM, using a [data volume](/engine/storage/volumes.md) +> (named volume) or [data container](/engine/storage/volumes.md). > * Docker Desktop sets permissions to read/write/execute for users, groups and > others [0777 or a+rwx](https://chmodcommand.com/chmod-0777/). > This is not configurable. See [Permissions errors on data directories for shared volumes](../troubleshoot/topics.md). diff --git a/content/desktop/synchronized-file-sharing.md b/content/desktop/synchronized-file-sharing.md index 2ba29366a1..d630b8d5ff 100644 --- a/content/desktop/synchronized-file-sharing.md +++ b/content/desktop/synchronized-file-sharing.md @@ -24,7 +24,7 @@ Synchronized file shares is ideal for developers who: A Synchronized file share behaves just like a virtual file share, but takes advantage of a high-performance, low-latency code synchronization engine to create a synchronized cache of the host files on an ext4 filesystem within the Docker Desktop VM. If you make filesystem changes on the host or in the VM’s containers, it propagates via bidirectional synchronization. -After creating a file share instance, any container using a bind mount that points to a location on the host filesystem matching the specified synchronized file share location, or a subdirectory within it, utilizes the Synchronized File Shares feature. Bind mounts that don't satisfy this condition are passed to the normal virtual filesystem [bind-mounting mechanism](../storage/bind-mounts.md), for example VirtioFS or gRPC-FUSE. +After creating a file share instance, any container using a bind mount that points to a location on the host filesystem matching the specified synchronized file share location, or a subdirectory within it, utilizes the Synchronized File Shares feature. Bind mounts that don't satisfy this condition are passed to the normal virtual filesystem [bind-mounting mechanism](/engine/storage/bind-mounts.md), for example VirtioFS or gRPC-FUSE. > **Note** > diff --git a/content/desktop/troubleshoot/overview.md b/content/desktop/troubleshoot/overview.md index 7efee58036..2fd4d82bf1 100644 --- a/content/desktop/troubleshoot/overview.md +++ b/content/desktop/troubleshoot/overview.md @@ -306,7 +306,7 @@ Desktop at `$HOME/.docker/desktop/log/`. ## View the Docker daemon logs -Refer to the [Read the daemon logs](../../config/daemon/logs.md) section +Refer to the [Read the daemon logs](/engine/daemon/logs.md) section to learn how to view the Docker Daemon logs. ## Further resources diff --git a/content/desktop/use-desktop/volumes.md b/content/desktop/use-desktop/volumes.md index f5bca757c5..9656e16ad5 100644 --- a/content/desktop/use-desktop/volumes.md +++ b/content/desktop/use-desktop/volumes.md @@ -5,7 +5,7 @@ title: Explore Volumes --- The **Volumes** view in Docker Dashboard lets you create, delete, and perform -other actions on your [volumes](../../storage/volumes.md). You can also see +other actions on your [volumes](/engine/storage/volumes.md). You can also see which volumes are being used as well as inspect the files and folders in your volumes. @@ -34,7 +34,7 @@ doing the following: ## Create a volume You use the following steps to create an empty volume. Alternatively, if you -[start a container with a volume](../../storage/volumes.md#start-a-container-with-a-volume) +[start a container with a volume](/engine/storage/volumes.md#start-a-container-with-a-volume) that doesn't yet exist, Docker creates the volume for you. To create a volume: @@ -43,7 +43,7 @@ To create a volume: 2. In the **New Volume** modal, specify a volume name, and then select **Create**. -To use the volume with a container, see [Use volumes](../../storage/volumes.md#start-a-container-with-a-volume). +To use the volume with a container, see [Use volumes](/engine/storage/volumes.md#start-a-container-with-a-volume). ## Inspect a volume @@ -246,4 +246,4 @@ To import a volume: ## Additional resources - [Persisting container data](../../guides/docker-concepts/running-containers/persisting-container-data.md) -- [Use volumes](../../storage/volumes.md) \ No newline at end of file +- [Use volumes](/engine/storage/volumes.md) \ No newline at end of file diff --git a/content/config/completion.md b/content/engine/cli/completion.md similarity index 98% rename from content/config/completion.md rename to content/engine/cli/completion.md index 90ab810054..d3edd45bd8 100644 --- a/content/config/completion.md +++ b/content/engine/cli/completion.md @@ -2,6 +2,8 @@ title: CLI completion description: Set up your shell to get autocomplete for Docker commands and flags keywords: cli, shell, fish, bash, zsh, completion, options +aliases: + - /config/completion/ --- You can generate a shell completion script for the Docker CLI using the `docker diff --git a/content/config/filter.md b/content/engine/cli/filter.md similarity index 74% rename from content/config/filter.md rename to content/engine/cli/filter.md index fa26725fb4..317cf61f9d 100644 --- a/content/config/filter.md +++ b/content/engine/cli/filter.md @@ -4,6 +4,8 @@ description: | Use the filtering function in the CLI to selectively include resources that match the pattern you define. keywords: cli, filter, commands, output, include, exclude +aliases: + - /config/filter/ --- You can use the `--filter` flag to scope your commands. When filtering, the @@ -70,7 +72,7 @@ busybox glibc 7338d0c72c65 2 hours ago 6.09MB ### Multiple negated filters -Some commands support negated filters on [labels](./labels-custom-metadata.md). +Some commands support negated filters on [labels](/engine/manage-resources/labels.md). Negated filters only consider results that don't match the specified patterns. The following command prunes all containers that aren't labeled `foo`. @@ -92,21 +94,21 @@ $ docker container prune --filter "label!=foo" --filter "label!=bar" For more information about filtering commands, refer to the CLI reference description for commands that support the `--filter` flag: -- [`docker config ls`](../reference/cli/docker/config/ls.md) -- [`docker container prune`](../reference/cli/docker/container/prune.md) -- [`docker image prune`](../reference/cli/docker/image/prune.md) -- [`docker image ls`](../reference/cli/docker/image/ls.md) -- [`docker network ls`](../reference/cli/docker/network/ls.md) -- [`docker network prune`](../reference/cli/docker/network/prune.md) -- [`docker node ls`](../reference/cli/docker/node/ls.md) -- [`docker node ps`](../reference/cli/docker/node/ps.md) -- [`docker plugin ls`](../reference/cli/docker/plugin/ls.md) -- [`docker container ls`](../reference/cli/docker/container/ls.md) -- [`docker search`](../reference/cli/docker/search.md) -- [`docker secret ls`](../reference/cli/docker/secret/ls.md) -- [`docker service ls`](../reference/cli/docker/service/ls.md) -- [`docker service ps`](../reference/cli/docker/service/ps.md) -- [`docker stack ps`](../reference/cli/docker/stack/ps.md) -- [`docker system prune`](../reference/cli/docker/system/prune.md) -- [`docker volume ls`](../reference/cli/docker/volume/ls.md) -- [`docker volume prune`](../reference/cli/docker/volume/prune.md) +- [`docker config ls`](/reference/cli/docker/config/ls.md) +- [`docker container prune`](/reference/cli/docker/container/prune.md) +- [`docker image prune`](/reference/cli/docker/image/prune.md) +- [`docker image ls`](/reference/cli/docker/image/ls.md) +- [`docker network ls`](/reference/cli/docker/network/ls.md) +- [`docker network prune`](/reference/cli/docker/network/prune.md) +- [`docker node ls`](/reference/cli/docker/node/ls.md) +- [`docker node ps`](/reference/cli/docker/node/ps.md) +- [`docker plugin ls`](/reference/cli/docker/plugin/ls.md) +- [`docker container ls`](/reference/cli/docker/container/ls.md) +- [`docker search`](/reference/cli/docker/search.md) +- [`docker secret ls`](/reference/cli/docker/secret/ls.md) +- [`docker service ls`](/reference/cli/docker/service/ls.md) +- [`docker service ps`](/reference/cli/docker/service/ps.md) +- [`docker stack ps`](/reference/cli/docker/stack/ps.md) +- [`docker system prune`](/reference/cli/docker/system/prune.md) +- [`docker volume ls`](/reference/cli/docker/volume/ls.md) +- [`docker volume prune`](/reference/cli/docker/volume/prune.md) diff --git a/content/config/formatting.md b/content/engine/cli/formatting.md similarity index 99% rename from content/config/formatting.md rename to content/engine/cli/formatting.md index 8ac2fb77b1..2872bd183b 100644 --- a/content/config/formatting.md +++ b/content/engine/cli/formatting.md @@ -4,6 +4,7 @@ keywords: format, formatting, output, templates, log title: Format command and log output aliases: - /engine/admin/formatting/ + - /config/formatting/ --- Docker supports [Go templates](https://golang.org/pkg/text/template/) which you diff --git a/content/config/otel.md b/content/engine/cli/otel.md similarity index 99% rename from content/config/otel.md rename to content/engine/cli/otel.md index cf57523cbe..b9b9f979ee 100644 --- a/content/config/otel.md +++ b/content/engine/cli/otel.md @@ -2,6 +2,8 @@ title: OpenTelemetry for the Docker CLI description: Learn about how to capture OpenTelemetry metrics for the Docker command line keywords: otel, opentelemetry, telemetry, traces, tracing, metrics, logs +aliases: + - /config/otel/ --- {{< introduced engine 26.1.0 >}} diff --git a/content/network/proxy.md b/content/engine/cli/proxy.md similarity index 92% rename from content/network/proxy.md rename to content/engine/cli/proxy.md index 6720e32986..423f6ab2f9 100644 --- a/content/network/proxy.md +++ b/content/engine/cli/proxy.md @@ -1,7 +1,9 @@ --- -title: Configure Docker to use a proxy server -description: How to configure the Docker client to use a proxy server +title: Use a proxy server with the Docker CLI +description: How to configure the Docker client CLI to use a proxy server keywords: network, networking, proxy, client +aliases: + - /network/proxy/ --- This page describes how to configure the Docker CLI to use proxies via @@ -9,12 +11,12 @@ environment variables in containers. This page doesn't describe how to configure proxies for the Docker daemon. For instructions on configuring Docker Desktop to use HTTP/HTTPS proxies, see -[proxies on Mac](../desktop/settings/mac.md#proxies), -[proxies on Windows](../desktop/settings/windows.md#proxies), and -[proxies on Linux](../desktop/settings/linux.md#proxies). +[proxies on Mac](/desktop/settings/mac.md#proxies), +[proxies on Windows](/desktop/settings/windows.md#proxies), and +[proxies on Linux](/desktop/settings/linux.md#proxies). If you're running Docker Engine without Docker Desktop, refer to -[Configure the Docker daemon to use a proxy](../config/daemon/proxy.md) +[Configure the Docker daemon to use a proxy](/engine/daemon/proxy.md) to learn how to configure a proxy server for the Docker daemon (`dockerd`) itself. If your container needs to use an HTTP, HTTPS, or FTP proxy server, you can @@ -79,7 +81,7 @@ These settings are used to configure proxy environment variables for containers only, and not used as proxy settings for the Docker CLI or the Docker Engine itself. Refer to the [environment variables](/reference/cli/docker/#environment-variables) -and [configure the Docker daemon to use a proxy server](../config/daemon/proxy.md#httphttps-proxy) +and [configure the Docker daemon to use a proxy server](/engine/daemon/proxy.md#httphttps-proxy) sections for configuring proxy settings for the CLI and daemon. ### Run containers with a proxy configuration @@ -174,7 +176,7 @@ $ docker run --env HTTP_PROXY="http://proxy.example.com:3128" redis For a list of all the proxy-related build arguments that you can use with the `docker build` command, see -[Predefined ARGs](../reference/dockerfile.md#predefined-args). +[Predefined ARGs](/reference/dockerfile.md#predefined-args). These proxy values are only available in the build container. They're not included in the build output. diff --git a/content/config/containers/live-restore.md b/content/engine/containers/live-restore.md similarity index 98% rename from content/config/containers/live-restore.md rename to content/engine/containers/live-restore.md index e78f5d39d2..6fff9791a7 100644 --- a/content/config/containers/live-restore.md +++ b/content/engine/containers/live-restore.md @@ -4,6 +4,7 @@ keywords: docker, upgrade, daemon, dockerd, live-restore, daemonless container title: Live restore aliases: - /engine/admin/live-restore/ + - /config/containers/live-restore/ --- By default, when the Docker daemon terminates, it shuts down running containers. diff --git a/content/config/containers/multi-service_container.md b/content/engine/containers/multi-service_container.md similarity index 98% rename from content/config/containers/multi-service_container.md rename to content/engine/containers/multi-service_container.md index f805758a59..c99fbd4202 100644 --- a/content/config/containers/multi-service_container.md +++ b/content/engine/containers/multi-service_container.md @@ -7,6 +7,7 @@ aliases: - /engine/admin/multi-service_container/ - /engine/admin/using_supervisord/ - /engine/articles/using_supervisord/ + - /config/containers/multi-service_container/ --- A container's main running process is the `ENTRYPOINT` and/or `CMD` at the diff --git a/content/config/containers/resource_constraints.md b/content/engine/containers/resource_constraints.md similarity index 99% rename from content/config/containers/resource_constraints.md rename to content/engine/containers/resource_constraints.md index 8ea8b9e6fc..a4b445ed74 100644 --- a/content/config/containers/resource_constraints.md +++ b/content/engine/containers/resource_constraints.md @@ -4,6 +4,7 @@ description: Specify the runtime options for a container keywords: docker, daemon, configuration, runtime aliases: - /engine/admin/resource_constraints/ + - /config/containers/resource_constraints/ --- By default, a container has no resource constraints and can use as much of a diff --git a/content/config/containers/runmetrics.md b/content/engine/containers/runmetrics.md similarity index 99% rename from content/config/containers/runmetrics.md rename to content/engine/containers/runmetrics.md index 257b096595..4324287fc5 100644 --- a/content/config/containers/runmetrics.md +++ b/content/engine/containers/runmetrics.md @@ -7,6 +7,7 @@ aliases: - /engine/articles/run_metrics/ - /engine/articles/runmetrics/ - /engine/admin/runmetrics/ + - /config/containers/runmetrics/ --- ## Docker stats diff --git a/content/config/containers/start-containers-automatically.md b/content/engine/containers/start-containers-automatically.md similarity index 97% rename from content/config/containers/start-containers-automatically.md rename to content/engine/containers/start-containers-automatically.md index 8d3e28c834..126d889abf 100644 --- a/content/config/containers/start-containers-automatically.md +++ b/content/engine/containers/start-containers-automatically.md @@ -6,9 +6,10 @@ aliases: - /engine/articles/host_integration/ - /engine/admin/host_integration/ - /engine/admin/start-containers-automatically/ + - /config/containers/start-containers-automatically/ --- -Docker provides [restart policies](../../engine/reference/run.md#restart-policies---restart) +Docker provides [restart policies](/engine/containers/run.md#restart-policies---restart) to control whether your containers start automatically when they exit, or when Docker restarts. Restart policies start linked containers in the correct order. Docker recommends that you use restart policies, and avoid using process @@ -66,7 +67,7 @@ Keep the following in mind when using restart policies: - Restart policies only apply to containers. To configure restart policies for Swarm services, see - [flags related to service restart](../../reference/cli/docker/service/create.md). + [flags related to service restart](/reference/cli/docker/service/create.md). ### Restarting foreground containers diff --git a/content/config/daemon/_index.md b/content/engine/daemon/_index.md similarity index 89% rename from content/config/daemon/_index.md rename to content/engine/daemon/_index.md index 64abcf4b27..9d90442f41 100644 --- a/content/config/daemon/_index.md +++ b/content/engine/daemon/_index.md @@ -23,6 +23,7 @@ aliases: - /engine/articles/dsc/ - /engine/articles/puppet/ - /engine/userguide/ + - /config/daemon/ --- This page shows you how to customize the Docker daemon, `dockerd`. @@ -67,7 +68,7 @@ You can also explicitly specify the location of the configuration file on startup, using the `dockerd --config-file` flag. Learn about the available configuration options in the -[dockerd reference docs](../../reference/cli/dockerd.md#daemon-configuration-file) +[dockerd reference docs](/reference/cli/dockerd.md#daemon-configuration-file) ### Configuration using flags @@ -86,7 +87,7 @@ $ dockerd --debug \ ``` Learn about the available configuration options in the -[dockerd reference docs](../../reference/cli/dockerd.md), or by +[dockerd reference docs](/reference/cli/dockerd.md), or by running: ```console @@ -123,8 +124,8 @@ to troubleshoot. Many specific configuration options are discussed throughout the Docker documentation. Some places to go next include: -- [Automatically start containers](../containers/start-containers-automatically.md) -- [Limit a container's resources](../containers/resource_constraints.md) -- [Configure storage drivers](../../storage/storagedriver/select-storage-driver.md) -- [Container security](../../engine/security/_index.md) +- [Automatically start containers](/engine/containers/start-containers-automatically.md) +- [Limit a container's resources](/engine/containers/resource_constraints.md) +- [Configure storage drivers](/engine/storage/drivers/select-storage-driver.md) +- [Container security](/engine/security/_index.md) - [Configure the Docker daemon to use a proxy](./proxy.md) diff --git a/content/engine/alternative-runtimes.md b/content/engine/daemon/alternative-runtimes.md similarity index 91% rename from content/engine/alternative-runtimes.md rename to content/engine/daemon/alternative-runtimes.md index 7c7b4ed57c..783a5e86d1 100644 --- a/content/engine/alternative-runtimes.md +++ b/content/engine/daemon/alternative-runtimes.md @@ -1,13 +1,12 @@ --- title: Alternative container runtimes -description: 'Docker Engine uses runc as the default container runtime, but you - +description: | + Docker Engine uses runc as the default container runtime, but you can specify alternative runtimes using the CLI or by configuring - the daemon - - ' keywords: engine, runtime, containerd, runtime v2, shim +aliases: + - /engine/alternative-runtimes/ --- Docker Engine uses containerd for managing the container lifecycle, @@ -107,7 +106,7 @@ use the `runtimes` option in the daemon configuration file. ``` For more information about the configuration options for containerd shims, see -[Configure containerd shims](./../reference/cli/dockerd.md#configure-containerd-shims). +[Configure containerd shims](/reference/cli/dockerd.md#configure-containerd-shims). ## Examples @@ -127,7 +126,7 @@ youki functions as a drop-in replacement for runc, meaning it relies on the runc shim to invoke the runtime binary. When you register runtimes acting as runc replacements, you configure the path to the runtime executable, and optionally a set of runtime arguments. For more information, see -[Configure runc drop-in replacements](./../reference/cli/dockerd.md#configure-runc-drop-in-replacements). +[Configure runc drop-in replacements](/reference/cli/dockerd.md#configure-runc-drop-in-replacements). To add youki as a container runtime: @@ -176,7 +175,7 @@ plus the added sandboxing provided by the Wasm runtime environment. To add Wasmtime as a container runtime, follow these steps: -1. Turn on the [containerd image store](../storage/containerd.md) +1. Turn on the [containerd image store](/engine/storage/containerd.md) feature in the daemon configuration file. > **Note** @@ -233,6 +232,6 @@ $ docker run --rm \ ## Related information - To learn more about the configuration options for container runtimes, - see [Configure container runtimes](./../reference/cli/dockerd.md#configure-container-runtimes). + see [Configure container runtimes](/reference/cli/dockerd.md#configure-container-runtimes). - You can configure which runtime that the daemon should use as its default. - Refer to [Configure the default container runtime](./../reference/cli/dockerd.md#configure-the-default-container-runtime). + Refer to [Configure the default container runtime](/reference/cli/dockerd.md#configure-the-default-container-runtime). diff --git a/content/config/daemon/images/prometheus-graph_idle.webp b/content/engine/daemon/images/prometheus-graph_idle.webp similarity index 100% rename from content/config/daemon/images/prometheus-graph_idle.webp rename to content/engine/daemon/images/prometheus-graph_idle.webp diff --git a/content/config/daemon/images/prometheus-graph_load.webp b/content/engine/daemon/images/prometheus-graph_load.webp similarity index 100% rename from content/config/daemon/images/prometheus-graph_load.webp rename to content/engine/daemon/images/prometheus-graph_load.webp diff --git a/content/config/daemon/images/prometheus-targets.webp b/content/engine/daemon/images/prometheus-targets.webp similarity index 100% rename from content/config/daemon/images/prometheus-targets.webp rename to content/engine/daemon/images/prometheus-targets.webp diff --git a/content/config/daemon/ipv6.md b/content/engine/daemon/ipv6.md similarity index 98% rename from content/config/daemon/ipv6.md rename to content/engine/daemon/ipv6.md index 9442342974..4a33a8f1dc 100644 --- a/content/config/daemon/ipv6.md +++ b/content/engine/daemon/ipv6.md @@ -4,6 +4,7 @@ description: How to enable IPv6 support in the Docker daemon keywords: daemon, network, networking, ipv6 aliases: - /engine/userguide/networking/default_network/ipv6/ +- /config/daemon/ipv6/ --- IPv6 is only supported on Docker daemons running on Linux hosts. @@ -191,4 +192,4 @@ Engine. ## Next steps -- [Networking overview](../../network/index.md) +- [Networking overview](/engine/network/_index.md) diff --git a/content/config/daemon/logs.md b/content/engine/daemon/logs.md similarity index 99% rename from content/config/daemon/logs.md rename to content/engine/daemon/logs.md index ed58f30539..d1e5a5f788 100644 --- a/content/config/daemon/logs.md +++ b/content/engine/daemon/logs.md @@ -2,6 +2,8 @@ title: Read the daemon logs description: How to read the event logs for the Docker daemon keywords: docker, daemon, configuration, troubleshooting, logging +aliases: + - /config/daemon/logs/ --- The daemon logs may help you diagnose problems. The logs may be saved in one of diff --git a/content/config/daemon/prometheus.md b/content/engine/daemon/prometheus.md similarity index 99% rename from content/config/daemon/prometheus.md rename to content/engine/daemon/prometheus.md index 830c49a3c7..dc42df8872 100644 --- a/content/config/daemon/prometheus.md +++ b/content/engine/daemon/prometheus.md @@ -6,6 +6,7 @@ aliases: - /engine/admin/prometheus/ - /config/thirdparty/monitoring/ - /config/thirdparty/prometheus/ + - /config/daemon/prometheus/ --- [Prometheus](https://prometheus.io/) is an open-source systems monitoring and diff --git a/content/config/daemon/proxy.md b/content/engine/daemon/proxy.md similarity index 99% rename from content/config/daemon/proxy.md rename to content/engine/daemon/proxy.md index 57f45c74da..d494841e6b 100644 --- a/content/config/daemon/proxy.md +++ b/content/engine/daemon/proxy.md @@ -8,6 +8,7 @@ aliases: - /engine/admin/systemd/ - /engine/articles/systemd/ - /config/daemon/systemd/ + - /config/daemon/proxy/ --- @@ -19,7 +20,7 @@ and to reach other nodes in a Docker swarm. This page describes how to configure a proxy for the Docker daemon. For instructions on configuring proxy settings for the Docker CLI, see [Configure -Docker to use a proxy server](../../network/proxy.md). +Docker CLI to use a proxy server](/engine/cli/proxy.md). There are two ways you can configure these settings: diff --git a/content/config/daemon/remote-access.md b/content/engine/daemon/remote-access.md similarity index 99% rename from content/config/daemon/remote-access.md rename to content/engine/daemon/remote-access.md index c518b5a04e..f41a41a43a 100644 --- a/content/config/daemon/remote-access.md +++ b/content/engine/daemon/remote-access.md @@ -5,6 +5,8 @@ description: socket keywords: configuration, daemon, remote access, engine title: Configure remote access for Docker daemon +aliases: + - /config/daemon/remote-access/ --- By default, the Docker daemon listens for connections on a Unix socket to accept diff --git a/content/config/daemon/start.md b/content/engine/daemon/start.md similarity index 97% rename from content/config/daemon/start.md rename to content/engine/daemon/start.md index f15ab477b1..80a1de4a93 100644 --- a/content/config/daemon/start.md +++ b/content/engine/daemon/start.md @@ -2,6 +2,8 @@ title: Start the daemon description: Starting the Docker daemon manually keywords: docker, daemon, configuration, troubleshooting +aliases: + - /config/daemon/start/ --- This page shows how to start the daemon, either manually or using OS utilities. @@ -45,4 +47,4 @@ INFO[0000] Listening for HTTP on unix (/var/run/docker.sock) ``` To stop Docker when you have started it manually, issue a `Ctrl+C` in your -terminal. \ No newline at end of file +terminal. diff --git a/content/config/daemon/troubleshoot.md b/content/engine/daemon/troubleshoot.md similarity index 99% rename from content/config/daemon/troubleshoot.md rename to content/engine/daemon/troubleshoot.md index b24120b19e..2d822c889c 100644 --- a/content/config/daemon/troubleshoot.md +++ b/content/engine/daemon/troubleshoot.md @@ -8,6 +8,7 @@ keywords: | aliases: - /engine/install/troubleshoot/ - /storage/troubleshooting_volume_errors/ + - /config/daemon/troubleshooting/ tags: [Troubleshooting] --- diff --git a/content/engine/faq.md b/content/engine/faq.md index b526929a89..fdf34aa1ee 100644 --- a/content/engine/faq.md +++ b/content/engine/faq.md @@ -101,14 +101,14 @@ thousands or even millions of containers. ### How do I connect Docker containers? Currently the recommended way to connect containers is via the Docker network -feature. You can see details of [how to work with Docker networks](../network/drivers/bridge.md). +feature. You can see details of [how to work with Docker networks](/engine/network/drivers/bridge.md). ### How do I run more than one process in a Docker container? This approach is discouraged for most use cases. For maximum efficiency and isolation, each container should address one specific area of concern. However, if you need to run multiple services within a single container, see -[Run multiple services in a container](../config/containers/multi-service_container.md). +[Run multiple services in a container](/engine/containers/multi-service_container.md). ### How do I report a security issue with Docker? diff --git a/content/engine/install/debian.md b/content/engine/install/debian.md index f580935b2f..9b293a0f4e 100644 --- a/content/engine/install/debian.md +++ b/content/engine/install/debian.md @@ -29,12 +29,12 @@ To get started with Docker Engine on Debian, make sure you - If you use ufw or firewalld to manage firewall settings, be aware that when you expose container ports using Docker, these ports bypass your firewall rules. For more information, refer to - [Docker and ufw](../../network/packet-filtering-firewalls.md#docker-and-ufw). + [Docker and ufw](/engine/network/packet-filtering-firewalls.md#docker-and-ufw). - Docker is only compatible with `iptables-nft` and `iptables-legacy`. Firewall rules created with `nft` are not supported on a system with Docker installed. Make sure that any firewall rulesets you use are created with `iptables` or `ip6tables`, and that you add them to the `DOCKER-USER` chain, - see [Packet filtering and firewalls](../../network/packet-filtering-firewalls.md). + see [Packet filtering and firewalls](/engine/network/packet-filtering-firewalls.md). ### OS requirements diff --git a/content/engine/install/linux-postinstall.md b/content/engine/install/linux-postinstall.md index dadb432ad6..b337579a88 100644 --- a/content/engine/install/linux-postinstall.md +++ b/content/engine/install/linux-postinstall.md @@ -117,11 +117,11 @@ $ sudo systemctl disable containerd.service You can use systemd unit files to configure the Docker service on startup, for example to add an HTTP proxy, set a different directory or partition for the Docker runtime files, or other customizations. For an example, see -[Configure the daemon to use a proxy](../../config/daemon/proxy.md#systemd-unit-file). +[Configure the daemon to use a proxy](/engine/daemon/proxy.md#systemd-unit-file). ## Configure default logging driver -Docker provides [logging drivers](../../config/containers/logging/index.md) for +Docker provides [logging drivers](/engine/logging/_index.md) for collecting and viewing log data from all containers running on a host. The default logging driver, `json-file`, writes log data to JSON-formatted files on the host filesystem. Over time, these log files expand in size, leading to @@ -131,13 +131,13 @@ To avoid issues with overusing disk for log data, consider one of the following options: - Configure the `json-file` logging driver to turn on - [log rotation](../../config/containers/logging/json-file.md). + [log rotation](/engine/logging/drivers/json-file.md). - Use an - [alternative logging driver](../../config/containers/logging/configure.md#configure-the-default-logging-driver) - such as the ["local" logging driver](../../config/containers/logging/local.md) + [alternative logging driver](/engine/logging/configure.md#configure-the-default-logging-driver) + such as the ["local" logging driver](/engine/logging/drivers/local.md) that performs log rotation by default. - Use a logging driver that sends logs to a remote logging aggregator. ## Next steps -- Take a look at the [Docker workshop](../../guides/workshop/_index.md) to learn how to build an image and run it as a containerized application. +- Take a look at the [Docker workshop](/guides/workshop/_index.md) to learn how to build an image and run it as a containerized application. diff --git a/content/engine/install/raspberry-pi-os.md b/content/engine/install/raspberry-pi-os.md index 4dfbc5c2f9..581b725729 100644 --- a/content/engine/install/raspberry-pi-os.md +++ b/content/engine/install/raspberry-pi-os.md @@ -35,12 +35,12 @@ To get started with Docker Engine on Raspberry Pi OS, make sure you - If you use ufw or firewalld to manage firewall settings, be aware that when you expose container ports using Docker, these ports bypass your firewall rules. For more information, refer to - [Docker and ufw](../../network/packet-filtering-firewalls.md#docker-and-ufw). + [Docker and ufw](/engine/network/packet-filtering-firewalls.md#docker-and-ufw). - Docker is only compatible with `iptables-nft` and `iptables-legacy`. Firewall rules created with `nft` are not supported on a system with Docker installed. Make sure that any firewall rulesets you use are created with `iptables` or `ip6tables`, and that you add them to the `DOCKER-USER` chain, - see [Packet filtering and firewalls](../../network/packet-filtering-firewalls.md). + see [Packet filtering and firewalls](/engine/network/packet-filtering-firewalls.md). ### OS requirements diff --git a/content/engine/install/ubuntu.md b/content/engine/install/ubuntu.md index 3157e3caaf..a510035378 100644 --- a/content/engine/install/ubuntu.md +++ b/content/engine/install/ubuntu.md @@ -37,12 +37,12 @@ To get started with Docker Engine on Ubuntu, make sure you - If you use ufw or firewalld to manage firewall settings, be aware that when you expose container ports using Docker, these ports bypass your firewall rules. For more information, refer to - [Docker and ufw](../../network/packet-filtering-firewalls.md#docker-and-ufw). + [Docker and ufw](/engine/network/packet-filtering-firewalls.md#docker-and-ufw). - Docker is only compatible with `iptables-nft` and `iptables-legacy`. Firewall rules created with `nft` are not supported on a system with Docker installed. Make sure that any firewall rulesets you use are created with `iptables` or `ip6tables`, and that you add them to the `DOCKER-USER` chain, - see [Packet filtering and firewalls](../../network/packet-filtering-firewalls.md). + see [Packet filtering and firewalls](/engine/network/packet-filtering-firewalls.md). ### OS requirements diff --git a/content/config/containers/logging/_index.md b/content/engine/logging/_index.md similarity index 98% rename from content/config/containers/logging/_index.md rename to content/engine/logging/_index.md index 84546f1013..beb1cff715 100644 --- a/content/config/containers/logging/_index.md +++ b/content/engine/logging/_index.md @@ -5,6 +5,7 @@ title: View container logs aliases: - /engine/admin/logging/ - /engine/admin/logging/view_container_logs/ + - /config/containers/logging/ --- The `docker logs` command shows information logged by a running container. The diff --git a/content/config/containers/logging/configure.md b/content/engine/logging/configure.md similarity index 74% rename from content/config/containers/logging/configure.md rename to content/engine/logging/configure.md index d7947c4390..a7e1e74902 100644 --- a/content/config/containers/logging/configure.md +++ b/content/engine/logging/configure.md @@ -9,22 +9,23 @@ aliases: - /engine/admin/reference/logging/ - /engine/admin/logging/logentries/ - /engine/admin/logging/overview/ + - /engine/admin/logging/ --- -Docker includes multiple logging mechanisms to help you -[get information from running containers and services](index.md). -These mechanisms are called logging drivers. Each Docker daemon has a default -logging driver, which each container uses unless you configure it to use a -different logging driver, or log driver for short. +Docker includes multiple logging mechanisms to help you get information from +running containers and services. These mechanisms are called logging drivers. +Each Docker daemon has a default logging driver, which each container uses +unless you configure it to use a different logging driver, or log driver for +short. -As a default, Docker uses the [`json-file` logging driver](json-file.md), which +As a default, Docker uses the [`json-file` logging driver](drivers/json-file.md), which caches container logs as JSON internally. In addition to using the logging drivers included with Docker, you can also implement and use [logging driver plugins](plugins.md). > **Tip: use the `local` logging driver to prevent disk-exhaustion** > > By default, no log-rotation is performed. As a result, log-files stored by the -> default [`json-file` logging driver](json-file.md) logging driver can cause +> default [`json-file` logging driver](drivers/json-file.md) logging driver can cause > a significant amount of disk space to be used for containers that generate much > output, which can lead to disk space exhaustion. > @@ -36,7 +37,7 @@ included with Docker, you can also implement and use [logging driver plugins](pl > log-rotation by default, and uses a more efficient file format. Refer to the > [Configure the default logging driver](#configure-the-default-logging-driver) > section below to learn how to configure the `local` logging driver as a default, -> and the [local file logging driver](local.md) page for more details about the +> and the [local file logging driver](drivers/local.md) page for more details about the > `local` logging driver. { .tip } @@ -49,7 +50,7 @@ configuration file. Refer to the "daemon configuration file" section in the for details. The default logging driver is `json-file`. The following example sets the default -logging driver to the [`local` log driver](local.md): +logging driver to the [`local` log driver](drivers/local.md): ```json { @@ -185,19 +186,19 @@ documentation for its configurable options, if applicable. If you are using [logging driver plugins](plugins.md), you may see more options. -| Driver | Description | -| :---------------------------- | :---------------------------------------------------------------------------------------------------------- | -| `none` | No logs are available for the container and `docker logs` does not return any output. | -| [`local`](local.md) | Logs are stored in a custom format designed for minimal overhead. | -| [`json-file`](json-file.md) | The logs are formatted as JSON. The default logging driver for Docker. | -| [`syslog`](syslog.md) | Writes logging messages to the `syslog` facility. The `syslog` daemon must be running on the host machine. | -| [`journald`](journald.md) | Writes log messages to `journald`. The `journald` daemon must be running on the host machine. | -| [`gelf`](gelf.md) | Writes log messages to a Graylog Extended Log Format (GELF) endpoint such as Graylog or Logstash. | -| [`fluentd`](fluentd.md) | Writes log messages to `fluentd` (forward input). The `fluentd` daemon must be running on the host machine. | -| [`awslogs`](awslogs.md) | Writes log messages to Amazon CloudWatch Logs. | -| [`splunk`](splunk.md) | Writes log messages to `splunk` using the HTTP Event Collector. | -| [`etwlogs`](etwlogs.md) | Writes log messages as Event Tracing for Windows (ETW) events. Only available on Windows platforms. | -| [`gcplogs`](gcplogs.md) | Writes log messages to Google Cloud Platform (GCP) Logging. | +| Driver | Description | +| :------------------------------------ | :---------------------------------------------------------------------------------------------------------- | +| `none` | No logs are available for the container and `docker logs` does not return any output. | +| [`local`](drivers/local.md) | Logs are stored in a custom format designed for minimal overhead. | +| [`json-file`](drivers/json-file.md) | The logs are formatted as JSON. The default logging driver for Docker. | +| [`syslog`](drivers/syslog.md) | Writes logging messages to the `syslog` facility. The `syslog` daemon must be running on the host machine. | +| [`journald`](drivers/journald.md) | Writes log messages to `journald`. The `journald` daemon must be running on the host machine. | +| [`gelf`](drivers/gelf.md) | Writes log messages to a Graylog Extended Log Format (GELF) endpoint such as Graylog or Logstash. | +| [`fluentd`](drivers/fluentd.md) | Writes log messages to `fluentd` (forward input). The `fluentd` daemon must be running on the host machine. | +| [`awslogs`](drivers/awslogs.md) | Writes log messages to Amazon CloudWatch Logs. | +| [`splunk`](drivers/splunk.md) | Writes log messages to `splunk` using the HTTP Event Collector. | +| [`etwlogs`](drivers/etwlogs.md) | Writes log messages as Event Tracing for Windows (ETW) events. Only available on Windows platforms. | +| [`gcplogs`](drivers/gcplogs.md) | Writes log messages to Google Cloud Platform (GCP) Logging. | ## Limitations of logging drivers diff --git a/content/config/containers/logging/awslogs.md b/content/engine/logging/drivers/awslogs.md similarity index 99% rename from content/config/containers/logging/awslogs.md rename to content/engine/logging/drivers/awslogs.md index c4bbfb9e89..9892e823cc 100644 --- a/content/config/containers/logging/awslogs.md +++ b/content/engine/logging/drivers/awslogs.md @@ -5,6 +5,7 @@ title: Amazon CloudWatch Logs logging driver aliases: - /engine/reference/logging/awslogs/ - /engine/admin/logging/awslogs/ + - /config/containers/logging/awslogs/ --- The `awslogs` logging driver sends container logs to diff --git a/content/config/containers/logging/etwlogs.md b/content/engine/logging/drivers/etwlogs.md similarity index 98% rename from content/config/containers/logging/etwlogs.md rename to content/engine/logging/drivers/etwlogs.md index 3b9028e048..e984ca2424 100644 --- a/content/config/containers/logging/etwlogs.md +++ b/content/engine/logging/drivers/etwlogs.md @@ -4,6 +4,7 @@ keywords: ETW, docker, logging, driver title: ETW logging driver aliases: - /engine/admin/logging/etwlogs/ + - /config/containers/logging/etwlogs/ --- The Event Tracing for Windows (ETW) logging driver forwards container logs as ETW events. diff --git a/content/config/containers/logging/fluentd.md b/content/engine/logging/drivers/fluentd.md similarity index 99% rename from content/config/containers/logging/fluentd.md rename to content/engine/logging/drivers/fluentd.md index d5ba0d713b..10e4f80053 100644 --- a/content/config/containers/logging/fluentd.md +++ b/content/engine/logging/drivers/fluentd.md @@ -6,6 +6,7 @@ aliases: - /engine/reference/logging/fluentd/ - /reference/logging/fluentd/ - /engine/admin/logging/fluentd/ + - /config/containers/logging/fluentd/ --- The `fluentd` logging driver sends container logs to the diff --git a/content/config/containers/logging/gcplogs.md b/content/engine/logging/drivers/gcplogs.md similarity index 99% rename from content/config/containers/logging/gcplogs.md rename to content/engine/logging/drivers/gcplogs.md index 18fced9750..cac4f674c7 100644 --- a/content/config/containers/logging/gcplogs.md +++ b/content/engine/logging/drivers/gcplogs.md @@ -4,6 +4,7 @@ keywords: gcplogs, google, docker, logging, driver title: Google Cloud Logging driver aliases: - /engine/admin/logging/gcplogs/ + - /config/containers/logging/gcplogs/ --- The Google Cloud Logging driver sends container logs to diff --git a/content/config/containers/logging/gelf.md b/content/engine/logging/drivers/gelf.md similarity index 99% rename from content/config/containers/logging/gelf.md rename to content/engine/logging/drivers/gelf.md index 2457396090..b45d34e911 100644 --- a/content/config/containers/logging/gelf.md +++ b/content/engine/logging/drivers/gelf.md @@ -5,6 +5,7 @@ title: Graylog Extended Format logging driver aliases: - /engine/reference/logging/gelf/ - /engine/admin/logging/gelf/ + - /config/containers/logging/gelf/ --- The `gelf` logging driver is a convenient format that's understood by a number of tools such as diff --git a/content/config/containers/logging/journald.md b/content/engine/logging/drivers/journald.md similarity index 99% rename from content/config/containers/logging/journald.md rename to content/engine/logging/drivers/journald.md index 05b27ed171..9170f0d927 100644 --- a/content/config/containers/logging/journald.md +++ b/content/engine/logging/drivers/journald.md @@ -5,6 +5,7 @@ title: Journald logging driver aliases: - /engine/reference/logging/journald/ - /engine/admin/logging/journald/ + - /config/containers/logging/journald/ --- The `journald` logging driver sends container logs to the diff --git a/content/config/containers/logging/json-file.md b/content/engine/logging/drivers/json-file.md similarity index 99% rename from content/config/containers/logging/json-file.md rename to content/engine/logging/drivers/json-file.md index 6f045bb44c..de4551bfdf 100644 --- a/content/config/containers/logging/json-file.md +++ b/content/engine/logging/drivers/json-file.md @@ -5,6 +5,7 @@ title: JSON File logging driver aliases: - /engine/reference/logging/json-file/ - /engine/admin/logging/json-file/ + - /config/containers/logging/json-file/ --- By default, Docker captures the standard output (and standard error) of all your containers, diff --git a/content/config/containers/logging/local.md b/content/engine/logging/drivers/local.md similarity index 98% rename from content/config/containers/logging/local.md rename to content/engine/logging/drivers/local.md index 3a349e71b5..53008a7f52 100644 --- a/content/config/containers/logging/local.md +++ b/content/engine/logging/drivers/local.md @@ -5,6 +5,7 @@ title: Local file logging driver aliases: - /engine/reference/logging/local/ - /engine/admin/logging/local/ + - /config/containers/logging/local/ --- The `local` logging driver captures output from container's stdout/stderr and diff --git a/content/config/containers/logging/splunk.md b/content/engine/logging/drivers/splunk.md similarity index 99% rename from content/config/containers/logging/splunk.md rename to content/engine/logging/drivers/splunk.md index 90fd3095ee..3f29b0064f 100644 --- a/content/config/containers/logging/splunk.md +++ b/content/engine/logging/drivers/splunk.md @@ -5,6 +5,7 @@ title: Splunk logging driver aliases: - /engine/reference/logging/splunk/ - /engine/admin/logging/splunk/ + - /config/containers/logging/splunk/ --- The `splunk` logging driver sends container logs to diff --git a/content/config/containers/logging/syslog.md b/content/engine/logging/drivers/syslog.md similarity index 99% rename from content/config/containers/logging/syslog.md rename to content/engine/logging/drivers/syslog.md index 5b2f3ad855..3ce24b94c6 100644 --- a/content/config/containers/logging/syslog.md +++ b/content/engine/logging/drivers/syslog.md @@ -5,6 +5,7 @@ title: Syslog logging driver aliases: - /engine/reference/logging/syslog/ - /engine/admin/logging/syslog/ + - /config/containers/logging/syslog/ --- The `syslog` logging driver routes logs to a `syslog` server. The `syslog` protocol uses diff --git a/content/config/containers/logging/dual-logging.md b/content/engine/logging/dual-logging.md similarity index 97% rename from content/config/containers/logging/dual-logging.md rename to content/engine/logging/dual-logging.md index a8d5203636..28ce37a294 100644 --- a/content/config/containers/logging/dual-logging.md +++ b/content/engine/logging/dual-logging.md @@ -6,12 +6,14 @@ keywords: > docker, logging, driver, dual logging, dual logging, cache, ring-buffer, configuration title: Use docker logs with remote logging drivers +aliases: + - /config/containers/logging/dual-logging/ --- ## Overview You can use the `docker logs` command to read container logs regardless of the -configured logging driver or plugin. Docker Engine uses the [`local`](local.md) +configured logging driver or plugin. Docker Engine uses the [`local`](drivers/local.md) logging driver to act as cache for reading the latest logs of your containers. This is called dual logging. By default, the cache has log-file rotation enabled, and is limited to a maximum of 5 files of 20 MB each (before @@ -109,7 +111,7 @@ as a default, with dual logging caching enabled: ### Configuration options The dual logging cache accepts the same configuration options as the -[`local` logging driver](local.md), but with a `cache-` prefix. These options +[`local` logging driver](drivers/local.md), but with a `cache-` prefix. These options can be specified per container, and defaults for new containers can be set using the [daemon configuration file](/reference/cli/dockerd/#daemon-configuration-file). @@ -134,7 +136,7 @@ through a remote logging system, and if there is no need to read logs through Caching can be disabled for individual containers or by default for new containers, when using the [daemon configuration file](/reference/cli/dockerd/#daemon-configuration-file). -The following example uses the daemon configuration file to use the [`splunk`](splunk.md) +The following example uses the daemon configuration file to use the [`splunk`](drivers/splunk.md) logging driver as a default, with caching disabled: ```console diff --git a/content/config/containers/logging/log_tags.md b/content/engine/logging/log_tags.md similarity index 97% rename from content/config/containers/logging/log_tags.md rename to content/engine/logging/log_tags.md index 943ab432cf..d0372fe5c2 100644 --- a/content/config/containers/logging/log_tags.md +++ b/content/engine/logging/log_tags.md @@ -5,6 +5,7 @@ title: Customize log driver output aliases: - /engine/reference/logging/log_tags/ - /engine/admin/logging/log_tags/ + - /config/containers/logging/log_tags/ --- The `tag` log option specifies how to format a tag that identifies the diff --git a/content/config/containers/logging/plugins.md b/content/engine/logging/plugins.md similarity index 97% rename from content/config/containers/logging/plugins.md rename to content/engine/logging/plugins.md index 46e5911079..50dc2f8b08 100644 --- a/content/config/containers/logging/plugins.md +++ b/content/engine/logging/plugins.md @@ -4,6 +4,7 @@ title: Use a logging driver plugin keywords: logging, driver, plugins, monitoring aliases: - /engine/admin/logging/plugins/ + - /engine/reference/logging/plugins/ --- Docker logging plugins allow you to extend and customize Docker's logging diff --git a/content/engine/context/working-with-contexts.md b/content/engine/manage-resources/contexts.md similarity index 99% rename from content/engine/context/working-with-contexts.md rename to content/engine/manage-resources/contexts.md index a7fb6fad80..0841366885 100644 --- a/content/engine/context/working-with-contexts.md +++ b/content/engine/manage-resources/contexts.md @@ -2,6 +2,8 @@ title: Docker contexts description: Learn about managing multiple daemons from a single client with contexts keywords: engine, context, cli, daemons, remote +aliases: + - /engine/context/working-with-contexts/ --- ## Introduction diff --git a/content/config/labels-custom-metadata.md b/content/engine/manage-resources/labels.md similarity index 68% rename from content/config/labels-custom-metadata.md rename to content/engine/manage-resources/labels.md index 1b37e45f01..1cc915fa2e 100644 --- a/content/config/labels-custom-metadata.md +++ b/content/engine/manage-resources/labels.md @@ -4,6 +4,7 @@ keywords: labels, metadata, docker, annotations title: Docker object labels aliases: - /engine/userguide/labels-custom-metadata/ + - /config/labels-custom-metadata/ --- Labels are a mechanism for applying metadata to Docker objects, including: @@ -79,37 +80,37 @@ Labels on Swarm nodes and services can be updated dynamically. - Images and containers - - [Adding labels to images](../reference/dockerfile.md#label) - - [Overriding a container's labels at runtime](../reference/cli/docker/container/run.md#label) - - [Inspecting labels on images or containers](../reference/cli/docker/inspect.md) - - [Filtering images by label](../reference/cli/docker/image/ls.md#filter) - - [Filtering containers by label](../reference/cli/docker/container/ls.md#filter) + - [Adding labels to images](/reference/dockerfile.md#label) + - [Overriding a container's labels at runtime](/reference/cli/docker/container/run.md#label) + - [Inspecting labels on images or containers](/reference/cli/docker/inspect.md) + - [Filtering images by label](/reference/cli/docker/image/ls.md#filter) + - [Filtering containers by label](/reference/cli/docker/container/ls.md#filter) - Local Docker daemons - - [Adding labels to a Docker daemon at runtime](../reference/cli/dockerd.md) - - [Inspecting a Docker daemon's labels](../reference/cli/docker/system/info.md) + - [Adding labels to a Docker daemon at runtime](/reference/cli/dockerd.md) + - [Inspecting a Docker daemon's labels](/reference/cli/docker/system/info.md) - Volumes - - [Adding labels to volumes](../reference/cli/docker/volume/create.md) - - [Inspecting a volume's labels](../reference/cli/docker/volume/inspect.md) - - [Filtering volumes by label](../reference/cli/docker/volume/ls.md#filter) + - [Adding labels to volumes](/reference/cli/docker/volume/create.md) + - [Inspecting a volume's labels](/reference/cli/docker/volume/inspect.md) + - [Filtering volumes by label](/reference/cli/docker/volume/ls.md#filter) - Networks - - [Adding labels to a network](../reference/cli/docker/network/create.md) - - [Inspecting a network's labels](../reference/cli/docker/network/inspect.md) - - [Filtering networks by label](../reference/cli/docker/network/ls.md#filter) + - [Adding labels to a network](/reference/cli/docker/network/create.md) + - [Inspecting a network's labels](/reference/cli/docker/network/inspect.md) + - [Filtering networks by label](/reference/cli/docker/network/ls.md#filter) - Swarm nodes - - [Adding or updating a Swarm node's labels](../reference/cli/docker/node/update.md#label-add) - - [Inspecting a Swarm node's labels](../reference/cli/docker/node/inspect.md) - - [Filtering Swarm nodes by label](../reference/cli/docker/node/ls.md#filter) + - [Adding or updating a Swarm node's labels](/reference/cli/docker/node/update.md#label-add) + - [Inspecting a Swarm node's labels](/reference/cli/docker/node/inspect.md) + - [Filtering Swarm nodes by label](/reference/cli/docker/node/ls.md#filter) - Swarm services - - [Adding labels when creating a Swarm service](../reference/cli/docker/service/create.md#label) - - [Updating a Swarm service's labels](../reference/cli/docker/service/update.md) - - [Inspecting a Swarm service's labels](../reference/cli/docker/service/inspect.md) - - [Filtering Swarm services by label](../reference/cli/docker/service/ls.md#filter) + - [Adding labels when creating a Swarm service](/reference/cli/docker/service/create.md#label) + - [Updating a Swarm service's labels](/reference/cli/docker/service/update.md) + - [Inspecting a Swarm service's labels](/reference/cli/docker/service/inspect.md) + - [Filtering Swarm services by label](/reference/cli/docker/service/ls.md#filter) diff --git a/content/config/pruning.md b/content/engine/manage-resources/pruning.md similarity index 93% rename from content/config/pruning.md rename to content/engine/manage-resources/pruning.md index 712f606db1..56b5b4de95 100644 --- a/content/config/pruning.md +++ b/content/engine/manage-resources/pruning.md @@ -5,6 +5,7 @@ keywords: pruning, prune, images, volumes, containers, networks, disk, administr title: Prune unused Docker objects aliases: - /engine/admin/pruning/ +- /config/pruning/ --- Docker takes a conservative approach to cleaning up unused objects (often @@ -51,7 +52,7 @@ $ docker image prune -a --filter "until=24h" ``` Other filtering expressions are available. See the -[`docker image prune` reference](../reference/cli/docker/image/prune.md) +[`docker image prune` reference](/reference/cli/docker/image/prune.md) for more examples. ## Prune containers @@ -82,7 +83,7 @@ $ docker container prune --filter "until=24h" ``` Other filtering expressions are available. See the -[`docker container prune` reference](../reference/cli/docker/container/prune.md) +[`docker container prune` reference](/reference/cli/docker/container/prune.md) for more examples. ## Prune volumes @@ -110,7 +111,7 @@ $ docker volume prune --filter "label!=keep" ``` Other filtering expressions are available. See the -[`docker volume prune` reference](../reference/cli/docker/volume/prune.md) +[`docker volume prune` reference](/reference/cli/docker/volume/prune.md) for more examples. ## Prune networks @@ -139,7 +140,7 @@ $ docker network prune --filter "until=24h" ``` Other filtering expressions are available. See the -[`docker network prune` reference](../reference/cli/docker/network/prune.md) +[`docker network prune` reference](/reference/cli/docker/network/prune.md) for more examples. ## Prune everything @@ -187,5 +188,5 @@ $ docker system prune --filter "until=24h" ``` Other filtering expressions are available. See the -[`docker system prune` reference](../reference/cli/docker/system/prune.md) +[`docker system prune` reference](/reference/cli/docker/system/prune.md) for more examples. diff --git a/content/network/_index.md b/content/engine/network/_index.md similarity index 97% rename from content/network/_index.md rename to content/engine/network/_index.md index d9be354854..5968fb7493 100644 --- a/content/network/_index.md +++ b/content/engine/network/_index.md @@ -11,6 +11,7 @@ aliases: - /engine/userguide/networking/default_network/configure-dns/ - /engine/userguide/networking/default_network/container-communication/ - /engine/userguide/networking/dockernetworks/ +- /network/ --- Container networking refers to the ability for containers to connect to and @@ -167,7 +168,7 @@ By default, containers inherit the DNS settings as defined in the `/etc/resolv.conf` configuration file. Containers that attach to the default `bridge` network receive a copy of this file. Containers that attach to a -[custom network](network-tutorial-standalone.md#use-user-defined-bridge-networks) +[custom network](tutorials/standalone.md#use-user-defined-bridge-networks) use Docker's embedded DNS server. The embedded DNS server forwards external DNS lookups to the DNS servers configured on the host. @@ -189,10 +190,10 @@ Your container will have lines in `/etc/hosts` which define the hostname of the container itself, as well as `localhost` and a few other common things. Custom hosts, defined in `/etc/hosts` on the host machine, aren't inherited by containers. To pass additional hosts into a container, refer to [add entries to -container hosts file](../reference/cli/docker/container/run.md#add-host) in the +container hosts file](/reference/cli/docker/container/run.md#add-host) in the `docker run` reference documentation. ## Proxy server If your container needs to use a proxy server, see -[Use a proxy server](proxy.md). +[Use a proxy server](/engine/daemon/proxy.md). diff --git a/content/network/drivers/_index.md b/content/engine/network/drivers/_index.md similarity index 92% rename from content/network/drivers/_index.md rename to content/engine/network/drivers/_index.md index 175c624a9c..5318ca402b 100644 --- a/content/network/drivers/_index.md +++ b/content/engine/network/drivers/_index.md @@ -70,7 +70,7 @@ exist by default, and provide core networking functionality: Now that you understand the basics about Docker networks, deepen your understanding using the following tutorials: -- [Standalone networking tutorial](../network-tutorial-standalone.md) -- [Host networking tutorial](../network-tutorial-host.md) -- [Overlay networking tutorial](../network-tutorial-overlay.md) -- [Macvlan networking tutorial](../network-tutorial-macvlan.md) \ No newline at end of file +- [Standalone networking tutorial](/engine/network/tutorials/standalone.md) +- [Host networking tutorial](/engine/network/tutorials/host.md) +- [Overlay networking tutorial](/engine/network/tutorials/overlay.md) +- [Macvlan networking tutorial](/engine/network/tutorials/macvlan.md) diff --git a/content/network/drivers/bridge.md b/content/engine/network/drivers/bridge.md similarity index 96% rename from content/network/drivers/bridge.md rename to content/engine/network/drivers/bridge.md index 2e0d8db460..2e9020a144 100644 --- a/content/network/drivers/bridge.md +++ b/content/engine/network/drivers/bridge.md @@ -91,8 +91,8 @@ network.** compose file can define the shared variables. - You can use swarm services instead of standalone containers, and take - advantage of shared [secrets](../../engine/swarm/secrets.md) and - [configs](../../engine/swarm/configs.md). + advantage of shared [secrets](/engine/swarm/secrets.md) and + [configs](/engine/swarm/configs.md). Containers connected to the same user-defined bridge network effectively expose all ports to each other. For a port to be accessible to containers or non-Docker hosts on @@ -132,7 +132,7 @@ daemon. The following table shows which options have equivalent flags in the The Docker daemon supports a `--bridge` flag, which you can use to define your own `docker0` bridge. Use this option if you want to run multiple daemon instances on the same host. For details, see -[Run multiple daemons](../../reference/cli/dockerd.md#run-multiple-daemons). +[Run multiple daemons](/reference/cli/dockerd.md#run-multiple-daemons). ### Default host binding address @@ -166,7 +166,7 @@ $ docker network create my-net You can specify the subnet, the IP address range, the gateway, and other options. See the -[docker network create](../../reference/cli/docker/network/create.md#specify-advanced-options) +[docker network create](/reference/cli/docker/network/create.md#specify-advanced-options) reference or the output of `docker network create --help` for details. Use the `docker network rm` command to remove a user-defined bridge @@ -311,7 +311,7 @@ configured the IP address for the bridge. ## Next steps -- Go through the [standalone networking tutorial](../network-tutorial-standalone.md) -- Learn about [networking from the container's point of view](../index.md) -- Learn about [overlay networks](overlay.md) -- Learn about [Macvlan networks](macvlan.md) +- Go through the [standalone networking tutorial](/engine/network/tutorials/standalone.md) +- Learn about [networking from the container's point of view](../_index.md) +- Learn about [overlay networks](./overlay.md) +- Learn about [Macvlan networks](./macvlan.md) diff --git a/content/network/drivers/host.md b/content/engine/network/drivers/host.md similarity index 89% rename from content/network/drivers/host.md rename to content/engine/network/drivers/host.md index c86c8e76b7..0d5da6952d 100644 --- a/content/network/drivers/host.md +++ b/content/engine/network/drivers/host.md @@ -44,7 +44,7 @@ given swarm node. ## Docker Desktop Host networking is also supported on Docker Desktop version 4.29 and later for Mac, -Windows, and Linux as a [beta feature](../../release-lifecycle.md#beta). To enable this feature, navigate to the **Features in development** tab in **Settings**, and then select **Enable host networking**. +Windows, and Linux as a [beta feature](/release-lifecycle.md#beta). To enable this feature, navigate to the **Features in development** tab in **Settings**, and then select **Enable host networking**. This feature works in both directions. This means you can access a server that is running in a container from your host and you can access @@ -98,8 +98,8 @@ network contradict each other. ## Next steps -- Go through the [host networking tutorial](../network-tutorial-host.md) -- Learn about [networking from the container's point of view](../index.md) -- Learn about [bridge networks](bridge.md) -- Learn about [overlay networks](overlay.md) -- Learn about [Macvlan networks](macvlan.md) +- Go through the [host networking tutorial](/engine/network/tutorials/host.md) +- Learn about [networking from the container's point of view](../_index.md) +- Learn about [bridge networks](./bridge.md) +- Learn about [overlay networks](./overlay.md) +- Learn about [Macvlan networks](./macvlan.md) diff --git a/content/network/drivers/images/ipvlan-l3.gliffy b/content/engine/network/drivers/images/ipvlan-l3.gliffy similarity index 100% rename from content/network/drivers/images/ipvlan-l3.gliffy rename to content/engine/network/drivers/images/ipvlan-l3.gliffy diff --git a/content/network/drivers/images/ipvlan-l3.webp b/content/engine/network/drivers/images/ipvlan-l3.webp similarity index 100% rename from content/network/drivers/images/ipvlan-l3.webp rename to content/engine/network/drivers/images/ipvlan-l3.webp diff --git a/content/network/drivers/images/ipvlan_l2_simple.gliffy b/content/engine/network/drivers/images/ipvlan_l2_simple.gliffy similarity index 100% rename from content/network/drivers/images/ipvlan_l2_simple.gliffy rename to content/engine/network/drivers/images/ipvlan_l2_simple.gliffy diff --git a/content/network/drivers/images/ipvlan_l2_simple.png b/content/engine/network/drivers/images/ipvlan_l2_simple.png similarity index 100% rename from content/network/drivers/images/ipvlan_l2_simple.png rename to content/engine/network/drivers/images/ipvlan_l2_simple.png diff --git a/content/network/drivers/images/macvlan-bridge-ipvlan-l2.gliffy b/content/engine/network/drivers/images/macvlan-bridge-ipvlan-l2.gliffy similarity index 100% rename from content/network/drivers/images/macvlan-bridge-ipvlan-l2.gliffy rename to content/engine/network/drivers/images/macvlan-bridge-ipvlan-l2.gliffy diff --git a/content/network/drivers/images/macvlan-bridge-ipvlan-l2.webp b/content/engine/network/drivers/images/macvlan-bridge-ipvlan-l2.webp similarity index 100% rename from content/network/drivers/images/macvlan-bridge-ipvlan-l2.webp rename to content/engine/network/drivers/images/macvlan-bridge-ipvlan-l2.webp diff --git a/content/network/drivers/images/vlans-deeper-look.gliffy b/content/engine/network/drivers/images/vlans-deeper-look.gliffy similarity index 100% rename from content/network/drivers/images/vlans-deeper-look.gliffy rename to content/engine/network/drivers/images/vlans-deeper-look.gliffy diff --git a/content/network/drivers/images/vlans-deeper-look.webp b/content/engine/network/drivers/images/vlans-deeper-look.webp similarity index 100% rename from content/network/drivers/images/vlans-deeper-look.webp rename to content/engine/network/drivers/images/vlans-deeper-look.webp diff --git a/content/network/drivers/ipvlan.md b/content/engine/network/drivers/ipvlan.md similarity index 99% rename from content/network/drivers/ipvlan.md rename to content/engine/network/drivers/ipvlan.md index 42c5311932..e61f02e2ac 100644 --- a/content/network/drivers/ipvlan.md +++ b/content/engine/network/drivers/ipvlan.md @@ -11,7 +11,7 @@ The IPvlan driver gives users total control over both IPv4 and IPv6 addressing. The VLAN driver builds on top of that in giving operators complete control of layer 2 VLAN tagging and even IPvlan L3 routing for users interested in underlay network integration. For overlay deployments that abstract away physical constraints -see the [multi-host overlay](../network-tutorial-overlay.md) driver. +see the [multi-host overlay](/engine/network/tutorials/overlay.md) driver. IPvlan is a new twist on the tried and true network virtualization technique. The Linux implementations are extremely lightweight because rather than using @@ -641,4 +641,4 @@ $ ip link del foo As with all of the Libnetwork drivers, they can be mixed and matched, even as far as running 3rd party ecosystem drivers in parallel for maximum flexibility -to the Docker user. \ No newline at end of file +to the Docker user. diff --git a/content/network/drivers/macvlan.md b/content/engine/network/drivers/macvlan.md similarity index 96% rename from content/network/drivers/macvlan.md rename to content/engine/network/drivers/macvlan.md index d440f6a95b..9da1fce46d 100644 --- a/content/network/drivers/macvlan.md +++ b/content/engine/network/drivers/macvlan.md @@ -107,7 +107,7 @@ $ docker network create -d ipvlan \ ## Use IPv6 -If you have [configured the Docker daemon to allow IPv6](../../config/daemon/ipv6.md), +If you have [configured the Docker daemon to allow IPv6](/engine/daemon/ipv6.md), you can use dual-stack IPv4/IPv6 `macvlan` networks. ```console @@ -122,4 +122,4 @@ $ docker network create -d macvlan \ ## Next steps Learn how to use the Macvlan driver in the -[Macvlan networking tutorial](../network-tutorial-macvlan.md). \ No newline at end of file +[Macvlan networking tutorial](/engine/network/tutorials/macvlan.md). diff --git a/content/network/drivers/none.md b/content/engine/network/drivers/none.md similarity index 90% rename from content/network/drivers/none.md rename to content/engine/network/drivers/none.md index 1c828a62a5..68c0ed60a1 100644 --- a/content/network/drivers/none.md +++ b/content/engine/network/drivers/none.md @@ -31,8 +31,8 @@ $ docker run --rm --network none --name no-net-alpine alpine:latest ip addr show ## Next steps -- Go through the [host networking tutorial](../network-tutorial-host.md) -- Learn about [networking from the container's point of view](../index.md) +- Go through the [host networking tutorial](/engine/network/tutorials/host.md) +- Learn about [networking from the container's point of view](../_index.md) - Learn about [bridge networks](bridge.md) - Learn about [overlay networks](overlay.md) -- Learn about [Macvlan networks](macvlan.md) \ No newline at end of file +- Learn about [Macvlan networks](macvlan.md) diff --git a/content/network/drivers/overlay.md b/content/engine/network/drivers/overlay.md similarity index 93% rename from content/network/drivers/overlay.md rename to content/engine/network/drivers/overlay.md index 941caeabfa..d91ba51f81 100644 --- a/content/network/drivers/overlay.md +++ b/content/engine/network/drivers/overlay.md @@ -26,7 +26,7 @@ Swarm mode to establish a connection between the hosts. This page describes overlay networks in general, and when used with standalone containers. For information about overlay for Swarm services, see -[Manage Swarm service networks](../../engine/swarm/networking.md). +[Manage Swarm service networks](/engine/swarm/networking.md). ## Create an overlay network @@ -35,8 +35,8 @@ The following table lists ports that need to be open to each host participating | Ports | Description | | :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `2377/tcp` | The default Swarm control plane port, is configurable with [`docker swarm join --listen-addr`](../../reference/cli/docker/swarm/join.md#--listen-addr-value) | -| `4789/udp` | The default overlay traffic port, configurable with [`docker swarm init --data-path-addr`](../../reference/cli/docker/swarm/init.md#data-path-port) | +| `2377/tcp` | The default Swarm control plane port, is configurable with [`docker swarm join --listen-addr`](/reference/cli/docker/swarm/join.md#--listen-addr-value) | +| `4789/udp` | The default overlay traffic port, configurable with [`docker swarm init --data-path-addr`](/reference/cli/docker/swarm/init.md#data-path-port) | | `7946/tcp`, `7946/udp` | Used for communication among nodes, not configurable | To create an overlay network that containers on other Docker hosts can connect to, @@ -124,7 +124,7 @@ For more information about this limitation, see ## Next steps -- Go through the [overlay networking tutorial](../network-tutorial-overlay.md) -- Learn about [networking from the container's point of view](../index.md) +- Go through the [overlay networking tutorial](/engine/network/tutorials/overlay.md) +- Learn about [networking from the container's point of view](../_index.md) - Learn about [standalone bridge networks](bridge.md) - Learn about [Macvlan networks](macvlan.md) diff --git a/content/network/links.md b/content/engine/network/links.md similarity index 99% rename from content/network/links.md rename to content/engine/network/links.md index 1cc9dabf1e..58c39acbf9 100644 --- a/content/network/links.md +++ b/content/engine/network/links.md @@ -6,6 +6,7 @@ title: Legacy container links aliases: - /userguide/dockerlinks/ - /engine/userguide/networking/default_network/dockerlinks/ +- /network/links/ --- >**Warning** @@ -415,4 +416,4 @@ root@aed84ee21bde:/opt/webapp# cat /etc/hosts 172.17.0.7 aed84ee21bde <...> 172.17.0.9 db -``` \ No newline at end of file +``` diff --git a/content/network/packet-filtering-firewalls.md b/content/engine/network/packet-filtering-firewalls.md similarity index 99% rename from content/network/packet-filtering-firewalls.md rename to content/engine/network/packet-filtering-firewalls.md index 85013a3c4f..2df8205d9b 100644 --- a/content/network/packet-filtering-firewalls.md +++ b/content/engine/network/packet-filtering-firewalls.md @@ -4,6 +4,7 @@ description: How Docker works with packet filtering, iptables, and firewalls keywords: network, iptables, firewall aliases: - /network/iptables/ +- /network/packet-filtering-firewalls/ --- On Linux, Docker creates `iptables` and `ip6tables` rules to implement network diff --git a/content/network/network-tutorial-host.md b/content/engine/network/tutorials/host.md similarity index 84% rename from content/network/network-tutorial-host.md rename to content/engine/network/tutorials/host.md index ce1c0c34d0..ef2111045a 100644 --- a/content/network/network-tutorial-host.md +++ b/content/engine/network/tutorials/host.md @@ -2,11 +2,13 @@ title: Networking using the host network description: Tutorials for networking using the host network, disabling network isolation keywords: networking, host, standalone +aliases: + - /network/network-tutorial-host/ --- This series of tutorials deals with networking standalone containers which bind directly to the Docker host's network, with no network isolation. For other -networking topics, see the [overview](index.md). +networking topics, see the [overview](/engine/network/_index.md). ## Goal @@ -23,8 +25,8 @@ host. Nginx listen on a different port, see the [documentation for the `nginx` image](https://hub.docker.com/_/nginx/) -- The `host` networking driver only works on Linux hosts, but is availabe as a - [beta feature](../../release-lifecycle.md#beta) on Docker Desktop version 4.29 +- The `host` networking driver only works on Linux hosts, but is available as a + [beta feature](/release-lifecycle.md#beta) on Docker Desktop version 4.29 and later for Mac, Windows, and Linux. To enable this feature, navigate to the **Features in development** tab in **Settings**, and then select **Enable host networking**. @@ -63,6 +65,6 @@ host. ## Other networking tutorials -- [Standalone networking tutorial](network-tutorial-standalone.md) -- [Overlay networking tutorial](network-tutorial-overlay.md) -- [Macvlan networking tutorial](network-tutorial-macvlan.md) +- [Standalone networking tutorial](/engine/network/tutorials/standalone.md) +- [Overlay networking tutorial](/engine/network/tutorials/overlay.md) +- [Macvlan networking tutorial](/engine/network/tutorials/macvlan.md) diff --git a/content/network/network-tutorial-macvlan.md b/content/engine/network/tutorials/macvlan.md similarity index 96% rename from content/network/network-tutorial-macvlan.md rename to content/engine/network/tutorials/macvlan.md index 2419c9023b..d8c0f7a9a3 100644 --- a/content/network/network-tutorial-macvlan.md +++ b/content/engine/network/tutorials/macvlan.md @@ -3,13 +3,15 @@ title: Networking using a macvlan network description: Tutorials for networking using a macvlan bridge network and 802.1Q trunk bridge network keywords: networking, macvlan, 802.1Q, standalone +aliases: + - /network/network-tutorial-macvlan/ --- This series of tutorials deals with networking standalone containers which connect to `macvlan` networks. In this type of network, the Docker host accepts requests for multiple MAC addresses at its IP address, and routes those requests to the appropriate container. For other networking topics, see the -[overview](index.md). +[overview](/engine/network/_index.md). ## Goal @@ -218,6 +220,6 @@ be physically attached to the network. ## Other networking tutorials -- [Standalone networking tutorial](network-tutorial-standalone.md) -- [Overlay networking tutorial](network-tutorial-overlay.md) -- [Host networking tutorial](network-tutorial-host.md) +- [Standalone networking tutorial](/engine/network/tutorials/standalone.md) +- [Overlay networking tutorial](/engine/network/tutorials/overlay.md) +- [Host networking tutorial](/engine/network/tutorials/host.md) diff --git a/content/network/network-tutorial-overlay.md b/content/engine/network/tutorials/overlay.md similarity index 97% rename from content/network/network-tutorial-overlay.md rename to content/engine/network/tutorials/overlay.md index 29d29fa85b..420ec38ae7 100644 --- a/content/network/network-tutorial-overlay.md +++ b/content/engine/network/tutorials/overlay.md @@ -5,12 +5,13 @@ description: Tutorials for networking with swarm services and standalone contain keywords: networking, bridge, routing, ports, swarm, overlay aliases: - /engine/userguide/networking/get-started-overlay/ +- /network/network-tutorial-overlay/ --- This series of tutorials deals with networking for swarm services. For networking with standalone containers, see -[Networking with standalone containers](network-tutorial-standalone.md). If you need to -learn more about Docker networking in general, see the [overview](index.md). +[Networking with standalone containers](/engine/network/tutorials/standalone.md). If you need to +learn more about Docker networking in general, see the [overview](/engine/network/_index.md). This page includes the following tutorials. You can run each of them on Linux, Windows, or a Mac, but for the last one, you need a second Docker @@ -59,7 +60,7 @@ If you don't have three hosts handy, an easy solution is to set up three Ubuntu hosts on a cloud provider such as Amazon EC2, all on the same network with all communications allowed to all hosts on that network (using a mechanism such as EC2 security groups), and then to follow the -[installation instructions for Docker Engine - Community on Ubuntu](../engine/install/ubuntu.md). +[installation instructions for Docker Engine - Community on Ubuntu](/engine/install/ubuntu.md). ### Walkthrough @@ -436,6 +437,6 @@ example also uses Linux hosts, but the same commands work on Windows. ## Other networking tutorials -- [Host networking tutorial](network-tutorial-host.md) -- [Standalone networking tutorial](network-tutorial-standalone.md) -- [Macvlan networking tutorial](network-tutorial-macvlan.md) +- [Host networking tutorial](/engine/network/tutorials/host.md) +- [Standalone networking tutorial](/engine/network/tutorials/standalone.md) +- [Macvlan networking tutorial](/engine/network/tutorials/macvlan.md) diff --git a/content/network/network-tutorial-standalone.md b/content/engine/network/tutorials/standalone.md similarity index 97% rename from content/network/network-tutorial-standalone.md rename to content/engine/network/tutorials/standalone.md index 4059c8b3e8..3ca32146b0 100644 --- a/content/network/network-tutorial-standalone.md +++ b/content/engine/network/tutorials/standalone.md @@ -2,12 +2,14 @@ title: Networking with standalone containers description: Tutorials for networking with standalone containers keywords: networking, bridge, routing, ports, overlay +aliases: + - /network/network-tutorial-standalone/ --- This series of tutorials deals with networking for standalone Docker containers. For networking with swarm services, see -[Networking with swarm services](network-tutorial-overlay.md). If you need to -learn more about Docker networking in general, see the [overview](index.md). +[Networking with swarm services](/engine/network/tutorials/overlay.md). If you need to +learn more about Docker networking in general, see the [overview](_index.md). This topic includes two different tutorials. You can run each of them on Linux, Windows, or a Mac, but for the last one, you need a second Docker @@ -22,9 +24,9 @@ host running elsewhere. running on the same Docker host. This is recommended for standalone containers running in production. -Although [overlay networks](drivers/overlay.md) are generally used for swarm services, +Although [overlay networks](/engine/network/drivers/overlay.md) are generally used for swarm services, you can also use an overlay network for standalone containers. That's covered as -part of the [tutorial on using overlay networks](network-tutorial-overlay.md#use-an-overlay-network-for-standalone-containers). +part of the [tutorial on using overlay networks](/engine/network/tutorials/overlay.md#use-an-overlay-network-for-standalone-containers). ## Use the default bridge network @@ -615,6 +617,6 @@ connected to both networks. ## Other networking tutorials -- [Host networking tutorial](network-tutorial-host.md) -- [Overlay networking tutorial](network-tutorial-overlay.md) -- [Macvlan networking tutorial](network-tutorial-macvlan.md) +- [Host networking tutorial](/engine/network/tutorials/host.md) +- [Overlay networking tutorial](/engine/network/tutorials/overlay.md) +- [Macvlan networking tutorial](/engine/network/tutorials/macvlan.md) diff --git a/content/engine/release-notes/17.11.md b/content/engine/release-notes/17.11.md index 34aedae07f..b3481ef64b 100644 --- a/content/engine/release-notes/17.11.md +++ b/content/engine/release-notes/17.11.md @@ -11,7 +11,7 @@ toc_max: 2 [containerd 1.0 beta](https://github.com/containerd/containerd/releases/tag/v1.0.0-beta.2). Docker CE 17.11 and later don't recognize containers started with previous Docker versions. If using -[Live Restore](../../config/containers/live-restore.md), +[Live Restore](/engine/containers/live-restore.md), you must stop all containers before upgrading to Docker CE 17.11. If you don't, any containers started by Docker versions that predate 17.11 aren't recognized by Docker after the upgrade and keep diff --git a/content/engine/release-notes/18.06.md b/content/engine/release-notes/18.06.md index c7aacf55b5..ed29b976da 100644 --- a/content/engine/release-notes/18.06.md +++ b/content/engine/release-notes/18.06.md @@ -184,7 +184,7 @@ toc_max: 2 * Set item-type for ExecIDs. [moby/moby#37121](https://github.com/moby/moby/pull/37121) * Use go-systemd const instead of magic string in Linux version of dockerd. [moby/moby#37136](https://github.com/moby/moby/pull/37136) * Use stdlib TLS dialer. [moby/moby#36687](https://github.com/moby/moby/pull/36687) -* Warn when an engine label using a reserved namespace (com.docker.\*, io.docker.\*, or org.dockerproject.\*) is configured, as per [Docker object labels](../../config/labels-custom-metadata.md). [moby/moby#36921](https://github.com/moby/moby/pull/36921) +* Warn when an engine label using a reserved namespace (com.docker.\*, io.docker.\*, or org.dockerproject.\*) is configured, as per [Docker object labels](/engine/manage-resources/labels.md). [moby/moby#36921](https://github.com/moby/moby/pull/36921) - Fix missing plugin name in message. [moby/moby#37052](https://github.com/moby/moby/pull/37052) - Fix link anchors in CONTRIBUTING.md. [moby/moby#37276](https://github.com/moby/moby/pull/37276) - Fix link to Docker Toolbox. [moby/moby#37240](https://github.com/moby/moby/pull/37240) diff --git a/content/engine/release-notes/18.09.md b/content/engine/release-notes/18.09.md index 584ec4b70b..994a4078c8 100644 --- a/content/engine/release-notes/18.09.md +++ b/content/engine/release-notes/18.09.md @@ -374,7 +374,7 @@ Update your configuration if this command prints a non-empty value for `MountFla - Docker has deprecated support for Device Mapper as a storage driver. It will continue to be supported at this time, but support will be removed in a future release. - The [Overlay2 storage driver](../../storage/storagedriver/overlayfs-driver.md) is now the default for Docker engine implementations. + The [Overlay2 storage driver](/engine/storage/drivers/overlayfs-driver.md) is now the default for Docker Engine implementations. For more information on the list of deprecated flags and APIs, have a look at the [deprecation information](/engine/deprecated/) where you can find the target removal dates. diff --git a/content/engine/release-notes/20.10.md b/content/engine/release-notes/20.10.md index e45b98258f..fa378acadc 100644 --- a/content/engine/release-notes/20.10.md +++ b/content/engine/release-notes/20.10.md @@ -405,7 +405,7 @@ to learn how to use the `docker scan` command to check if images are vulnerable. > longer used for TLS (`https://`) connections. Make sure you also set an `$HTTPS_PROXY` > environment variable for handling requests to `https://` URLs. > -> Refer to [Configure the daemon to use a proxy](../../config/daemon/proxy.md) +> Refer to [Configure the daemon to use a proxy](/engine/daemon/proxy.md) > to learn how to configure the Docker Daemon to use a proxy server. { .important } @@ -435,7 +435,7 @@ to learn how to use the `docker scan` command to check if images are vulnerable. > longer used for TLS (`https://`) connections. Make sure you also set an `$HTTPS_PROXY` > environment variable for handling requests to `https://` URLs. > -> Refer to the [HTTP/HTTPS proxy section](../../config/daemon/proxy.md#httphttps-proxy) +> Refer to the [HTTP/HTTPS proxy section](/engine/daemon/proxy.md#httphttps-proxy) > to learn how to configure the Docker Daemon to use a proxy server. { .important } @@ -476,7 +476,7 @@ well as updated versions of the containerd.io package. > longer used for TLS (`https://`) connections. Make sure you also set an `$HTTPS_PROXY` > environment variable for handling requests to `https://` URLs. > -> Refer to the [HTTP/HTTPS proxy section](../../config/daemon/proxy.md#httphttps-proxy) +> Refer to the [HTTP/HTTPS proxy section](/engine/daemon/proxy.md#httphttps-proxy) > to learn how to configure the Docker Daemon to use a proxy server. { .important } @@ -521,7 +521,7 @@ well as updated versions of the containerd.io package. > longer used for TLS (`https://`) connections. Make sure you also set an `$HTTPS_PROXY` > environment variable for handling requests to `https://` URLs. > -> Refer to the [HTTP/HTTPS proxy section](../../config/daemon/proxy.md#httphttps-proxy) +> Refer to the [HTTP/HTTPS proxy section](/engine/daemon/proxy.md#httphttps-proxy) > to learn how to configure the Docker Daemon to use a proxy server. { .important } diff --git a/content/engine/release-notes/23.0.md b/content/engine/release-notes/23.0.md index 7ef9c51eeb..b89f35ab75 100644 --- a/content/engine/release-notes/23.0.md +++ b/content/engine/release-notes/23.0.md @@ -468,7 +468,7 @@ To mitigate this, the previous build cache must be discarded. `docker builder pr #### ipvlan networks ([tracking issue](https://github.com/moby/moby/issues/44925)) -When upgrading to the 23.0 branch, the existence of any [ipvlan](../../network/drivers/ipvlan.md) networks will prevent the daemon from starting: +When upgrading to the 23.0 branch, the existence of any [ipvlan](/engine/network/drivers/ipvlan.md) networks will prevent the daemon from starting: ``` panic: interface conversion: interface {} is nil, not string diff --git a/content/engine/release-notes/25.0.md b/content/engine/release-notes/25.0.md index 109f103d08..33ceb82a20 100644 --- a/content/engine/release-notes/25.0.md +++ b/content/engine/release-notes/25.0.md @@ -201,7 +201,7 @@ For a full list of pull requests and changes in this release, refer to the relev > > This option isn't supported with the `-v` or `--volume` flag. > For more information, see -> [Recursive mounts](../../storage/bind-mounts.md#recursive-mounts). +> [Recursive mounts](/engine/storage/bind-mounts.md#recursive-mounts). ### New diff --git a/content/engine/security/_index.md b/content/engine/security/_index.md index 890a19683a..0f4f01dbb4 100644 --- a/content/engine/security/_index.md +++ b/content/engine/security/_index.md @@ -37,7 +37,7 @@ of another container. Of course, if the host system is setup accordingly, containers can interact with each other through their respective network interfaces — just like they can interact with external hosts. When you specify public ports for your containers or use -[links](../../network/links.md) +[links](/engine/network/links.md) then IP traffic is allowed between containers. They can ping each other, send/receive UDP packets, and establish TCP connections, but that can be restricted if necessary. From a network architecture point of view, all @@ -280,4 +280,4 @@ pull requests, or comments on the Docker community forums. * [Seccomp security profiles for Docker](seccomp.md) * [AppArmor security profiles for Docker](apparmor.md) * [On the Security of Containers (2014)](https://medium.com/@ewindisch/on-the-security-of-containers-2c60ffe25a9e) -* [Docker swarm mode overlay network security model](../../network/drivers/overlay.md) +* [Docker swarm mode overlay network security model](/engine/network/drivers/overlay.md) diff --git a/content/engine/security/protect-access.md b/content/engine/security/protect-access.md index 8fb590b17f..ac7844f8b2 100644 --- a/content/engine/security/protect-access.md +++ b/content/engine/security/protect-access.md @@ -19,7 +19,7 @@ optionally communicate using SSH or a TLS (HTTPS) socket. > remote machine. Refer to [manage Docker as a non-root user](../install/linux-postinstall.md#manage-docker-as-a-non-root-user) > to learn how to give a non-root user access to the docker socket. -The following example creates a [`docker context`](../context/working-with-contexts.md) +The following example creates a [`docker context`](/engine/manage-resources/contexts.md) to connect with a remote `dockerd` daemon on `host1.example.com` using SSH, and as the `docker-user` user on the remote machine: diff --git a/content/engine/security/rootless.md b/content/engine/security/rootless.md index 2805334fdc..8ac10779b8 100644 --- a/content/engine/security/rootless.md +++ b/content/engine/security/rootless.md @@ -380,7 +380,7 @@ Or add `net.ipv4.ip_unprivileged_port_start=0` to `/etc/sysctl.conf` (or Limiting resources with cgroup-related `docker run` flags such as `--cpus`, `--memory`, `--pids-limit` is supported only when running with cgroup v2 and systemd. -See [Changing cgroup version](../../config/containers/runmetrics.md) to enable cgroup v2. +See [Changing cgroup version](/engine/containers/runmetrics.md) to enable cgroup v2. If `docker info` shows `none` as `Cgroup Driver`, the conditions are not satisfied. When these conditions are not satisfied, rootless mode ignores the cgroup-related `docker run` flags. diff --git a/content/storage/_index.md b/content/engine/storage/_index.md similarity index 94% rename from content/storage/_index.md rename to content/engine/storage/_index.md index 8abf47fcd6..063195c676 100644 --- a/content/storage/_index.md +++ b/content/engine/storage/_index.md @@ -3,7 +3,8 @@ description: Overview of persisting data in containers title: Manage data in Docker keywords: storage, persistence, data persistence, volumes, mounts, bind mounts, tmpfs aliases: -- engine/admin/volumes/ + - /engine/admin/volumes/ + - /storage/ --- By default all files created inside a container are stored on a writable @@ -14,7 +15,7 @@ container layer. This means that: - A container's writable layer is tightly coupled to the host machine where the container is running. You can't easily move the data somewhere else. - Writing into a container's writable layer requires a - [storage driver](/storage/storagedriver/) to manage the + [storage driver](/engine/storage/drivers/) to manage the filesystem. The storage driver provides a union filesystem, using the Linux kernel. This extra abstraction reduces performance as compared to using _data volumes_, which write directly to the host filesystem. @@ -113,7 +114,7 @@ You can't use Docker CLI commands to directly manage bind mounts. > **Tip** > > Working with large repositories or monorepos, or with virtual file systems that are no longer scaling with your codebase? -> Check out [Synchronized file shares](../desktop/synchronized-file-sharing.md). It provides fast and flexible host-to-VM file sharing by enhancing bind mount performance through the use of synchronized filesystem caches. +> Check out [Synchronized file shares](/desktop/synchronized-file-sharing.md). It provides fast and flexible host-to-VM file sharing by enhancing bind mount performance through the use of synchronized filesystem caches. { .tip } ### tmpfs @@ -122,7 +123,7 @@ A `tmpfs` mount isn't persisted on disk, either on the Docker host or within a container. It can be used by a container during the lifetime of the container, to store non-persistent state or sensitive information. For instance, internally, Swarm services use `tmpfs` mounts to mount -[secrets](../engine/swarm/secrets.md) into a service's containers. +[secrets](/engine/swarm/secrets.md) into a service's containers. ### Named pipes @@ -212,9 +213,9 @@ If you use either bind mounts or volumes, keep the following in mind: ## Next steps -- Learn more about [volumes](volumes.md). -- Learn more about [bind mounts](bind-mounts.md). -- Learn more about [tmpfs mounts](tmpfs.md). -- Learn more about [storage drivers](/storage/storagedriver/), which +- Learn more about [volumes](./volumes.md). +- Learn more about [bind mounts](./bind-mounts.md). +- Learn more about [tmpfs mounts](./tmpfs.md). +- Learn more about [storage drivers](/engine/storage/drivers/), which are not related to bind mounts or volumes, but allow you to store data in a container's writable layer. diff --git a/content/storage/bind-mounts.md b/content/engine/storage/bind-mounts.md similarity index 96% rename from content/storage/bind-mounts.md rename to content/engine/storage/bind-mounts.md index 21e2cbb7d9..8816970522 100644 --- a/content/storage/bind-mounts.md +++ b/content/engine/storage/bind-mounts.md @@ -4,6 +4,7 @@ title: Bind mounts keywords: storage, persistence, data persistence, mounts, bind mounts aliases: - /engine/admin/volumes/bind-mounts/ +- /storage/bind-mounts/ --- Bind mounts have been around since the early days of Docker. Bind mounts have @@ -26,7 +27,7 @@ manage bind mounts. > **Tip** > > Working with large repositories or monorepos, or with virtual file systems that are no longer scaling with your codebase? -> Check out [Synchronized file shares](../desktop/synchronized-file-sharing.md). It provides fast and flexible host-to-VM file sharing by enhancing bind mount performance through the use of synchronized filesystem caches. +> Check out [Synchronized file shares](/desktop/synchronized-file-sharing.md). It provides fast and flexible host-to-VM file sharing by enhancing bind mount performance through the use of synchronized filesystem caches. { .tip } ## Choose the -v or --mount flag @@ -100,7 +101,7 @@ on your development host. Use the following command to bind-mount the `target/` directory into your container at `/app/`. Run the command from within the `source` directory. The `$(pwd)` sub-command expands to the current working directory on Linux or macOS hosts. -If you're on Windows, see also [Path conversions on Windows](../desktop/troubleshoot/topics.md). +If you're on Windows, see also [Path conversions on Windows](/desktop/troubleshoot/topics.md). The `--mount` and `-v` examples below produce the same result. You can't run them both unless you remove the `devtest` container after running the @@ -418,12 +419,12 @@ volumes: ``` For more information about using volumes of the `bind` type with Compose, see -[Compose reference on volumes](../compose/compose-file/05-services.md#volumes). +[Compose reference on volumes](/compose/compose-file/05-services.md#volumes). and -[Compose reference on volume configuration](../compose/compose-file/05-services.md#volumes). +[Compose reference on volume configuration](/compose/compose-file/05-services.md#volumes). ## Next steps -- Learn about [volumes](volumes.md). -- Learn about [tmpfs mounts](tmpfs.md). -- Learn about [storage drivers](/storage/storagedriver/). +- Learn about [volumes](./volumes.md). +- Learn about [tmpfs mounts](./tmpfs.md). +- Learn about [storage drivers](/engine/storage/drivers/). diff --git a/content/storage/containerd.md b/content/engine/storage/containerd.md similarity index 90% rename from content/storage/containerd.md rename to content/engine/storage/containerd.md index b992bb903e..de6c9c3048 100644 --- a/content/storage/containerd.md +++ b/content/engine/storage/containerd.md @@ -2,13 +2,15 @@ title: containerd image store with Docker Engine keywords: containerd, snapshotters, image store, docker engine description: Learn how to enable the containerd image store on Docker Engine +aliases: + - /storage/containerd/ --- > **Note** > > The containerd image store is an experimental feature of Docker Engine. > If you're using Docker Desktop, refer to the instructions on the -> [containerd image store with Docker Desktop page](../desktop/containerd/index.md). +> [containerd image store with Docker Desktop page](/desktop/containerd.md). containerd, the industry-standard container runtime, uses snapshotters instead of the classic storage drivers for storing image and container data. @@ -16,7 +18,7 @@ While the `overlay2` driver still remains the default driver for Docker Engine, you can opt in to using containerd snapshotters as an experimental feature. To learn more about the containerd image store and its benefits, refer to -[containerd image store on Docker Desktop](../desktop/containerd/index.md). +[containerd image store on Docker Desktop](/desktop/containerd.md). ## Enable containerd image store on Docker Engine diff --git a/content/storage/storagedriver/_index.md b/content/engine/storage/drivers/_index.md similarity index 98% rename from content/storage/storagedriver/_index.md rename to content/engine/storage/drivers/_index.md index 825c95b588..cb4d98f898 100644 --- a/content/storage/storagedriver/_index.md +++ b/content/engine/storage/drivers/_index.md @@ -62,8 +62,8 @@ Each layer is only a set of differences from the layer before it. Note that both _adding_, and _removing_ files will result in a new layer. In the example above, the `$HOME/.cache` directory is removed, but will still be available in the previous layer and add up to the image's total size. Refer to the -[Best practices for writing Dockerfiles](../../build/building/best-practices.md) -and [use multi-stage builds](../../build/building/multi-stage.md) +[Best practices for writing Dockerfiles](/build/building/best-practices.md) +and [use multi-stage builds](/build/building/multi-stage.md) sections to learn how to optimize your Dockerfiles for efficient images. The layers are stacked on top of each other. When you create a new container, @@ -129,7 +129,7 @@ these containers would be SUM (`size` of containers) plus one image size This also doesn't count the following additional ways a container can take up disk space: -- Disk space used for log files stored by the [logging-driver](../../config/containers/logging/index.md). +- Disk space used for log files stored by the [logging-driver](/engine/logging/_index.md). This can be non-trivial if your container generates a large amount of logging data and log rotation isn't configured. - Volumes and bind mounts used by the container. @@ -328,7 +328,7 @@ layers are the same. the ID of that image. BuildKit uses its own caching mechanism, and no longer requires intermediate - images for caching. Refer to [BuildKit](../../build/buildkit/_index.md) + images for caching. Refer to [BuildKit](/build/buildkit/_index.md) to learn more about other enhancements made in BuildKit. 9. Check out the layers for each image @@ -370,7 +370,7 @@ layers are the same. > extract and format specific information from the output, without requiring > additional tools such as `awk` or `sed`. To learn more about formatting > the output of docker commands using the `--format` flag, refer to the - > [format command and log output section](../../config/formatting.md). + > [format command and log output section](/engine/cli/formatting.md). > We also pretty-printed the JSON output using the [`jq` utility](https://stedolan.github.io/jq/) > for readability. { .tip } diff --git a/content/storage/storagedriver/aufs-driver.md b/content/engine/storage/drivers/aufs-driver.md similarity index 100% rename from content/storage/storagedriver/aufs-driver.md rename to content/engine/storage/drivers/aufs-driver.md diff --git a/content/storage/storagedriver/btrfs-driver.md b/content/engine/storage/drivers/btrfs-driver.md similarity index 100% rename from content/storage/storagedriver/btrfs-driver.md rename to content/engine/storage/drivers/btrfs-driver.md diff --git a/content/storage/storagedriver/device-mapper-driver.md b/content/engine/storage/drivers/device-mapper-driver.md similarity index 99% rename from content/storage/storagedriver/device-mapper-driver.md rename to content/engine/storage/drivers/device-mapper-driver.md index b43ebee761..c059001b0b 100644 --- a/content/storage/storagedriver/device-mapper-driver.md +++ b/content/engine/storage/drivers/device-mapper-driver.md @@ -837,11 +837,11 @@ storage driver. by default `/var/lib/docker`. If your containers generate lots of log messages, this may lead to increased disk usage or the inability to manage your system due to a full disk. You can configure a - [log driver](../../config/containers/logging/configure.md) to store your container + [log driver](/engine/logging/configure.md) to store your container logs externally. ## Related Information - [Volumes](../volumes.md) -- [Understand images, containers, and storage drivers](index.md) +- [Understand images, containers, and storage drivers](./_index.md) - [Select a storage driver](select-storage-driver.md) diff --git a/content/storage/storagedriver/images/aufs_layers.webp b/content/engine/storage/drivers/images/aufs_layers.webp similarity index 100% rename from content/storage/storagedriver/images/aufs_layers.webp rename to content/engine/storage/drivers/images/aufs_layers.webp diff --git a/content/storage/storagedriver/images/btfs_container_layer.webp b/content/engine/storage/drivers/images/btfs_container_layer.webp similarity index 100% rename from content/storage/storagedriver/images/btfs_container_layer.webp rename to content/engine/storage/drivers/images/btfs_container_layer.webp diff --git a/content/storage/storagedriver/images/btfs_pool.webp b/content/engine/storage/drivers/images/btfs_pool.webp similarity index 100% rename from content/storage/storagedriver/images/btfs_pool.webp rename to content/engine/storage/drivers/images/btfs_pool.webp diff --git a/content/storage/storagedriver/images/btfs_snapshots.webp b/content/engine/storage/drivers/images/btfs_snapshots.webp similarity index 100% rename from content/storage/storagedriver/images/btfs_snapshots.webp rename to content/engine/storage/drivers/images/btfs_snapshots.webp diff --git a/content/storage/storagedriver/images/btfs_subvolume.webp b/content/engine/storage/drivers/images/btfs_subvolume.webp similarity index 100% rename from content/storage/storagedriver/images/btfs_subvolume.webp rename to content/engine/storage/drivers/images/btfs_subvolume.webp diff --git a/content/storage/storagedriver/images/container-layers.webp b/content/engine/storage/drivers/images/container-layers.webp similarity index 100% rename from content/storage/storagedriver/images/container-layers.webp rename to content/engine/storage/drivers/images/container-layers.webp diff --git a/content/storage/storagedriver/images/dm_container.webp b/content/engine/storage/drivers/images/dm_container.webp similarity index 100% rename from content/storage/storagedriver/images/dm_container.webp rename to content/engine/storage/drivers/images/dm_container.webp diff --git a/content/storage/storagedriver/images/overlay_constructs.webp b/content/engine/storage/drivers/images/overlay_constructs.webp similarity index 100% rename from content/storage/storagedriver/images/overlay_constructs.webp rename to content/engine/storage/drivers/images/overlay_constructs.webp diff --git a/content/storage/storagedriver/images/sharing-layers.webp b/content/engine/storage/drivers/images/sharing-layers.webp similarity index 100% rename from content/storage/storagedriver/images/sharing-layers.webp rename to content/engine/storage/drivers/images/sharing-layers.webp diff --git a/content/storage/storagedriver/images/two_dm_container.webp b/content/engine/storage/drivers/images/two_dm_container.webp similarity index 100% rename from content/storage/storagedriver/images/two_dm_container.webp rename to content/engine/storage/drivers/images/two_dm_container.webp diff --git a/content/storage/storagedriver/images/zfs_clones.webp b/content/engine/storage/drivers/images/zfs_clones.webp similarity index 100% rename from content/storage/storagedriver/images/zfs_clones.webp rename to content/engine/storage/drivers/images/zfs_clones.webp diff --git a/content/storage/storagedriver/images/zfs_zpool.webp b/content/engine/storage/drivers/images/zfs_zpool.webp similarity index 100% rename from content/storage/storagedriver/images/zfs_zpool.webp rename to content/engine/storage/drivers/images/zfs_zpool.webp diff --git a/content/storage/storagedriver/images/zpool_blocks.webp b/content/engine/storage/drivers/images/zpool_blocks.webp similarity index 100% rename from content/storage/storagedriver/images/zpool_blocks.webp rename to content/engine/storage/drivers/images/zpool_blocks.webp diff --git a/content/storage/storagedriver/overlayfs-driver.md b/content/engine/storage/drivers/overlayfs-driver.md similarity index 99% rename from content/storage/storagedriver/overlayfs-driver.md rename to content/engine/storage/drivers/overlayfs-driver.md index 5bd250b0c4..d8c4e8d5b5 100644 --- a/content/storage/storagedriver/overlayfs-driver.md +++ b/content/engine/storage/drivers/overlayfs-driver.md @@ -13,7 +13,7 @@ storage driver as `overlay2`. > **Note** > -> For `fuse-overlayfs` driver, check [Rootless mode documentation](../../engine/security/rootless.md). +> For `fuse-overlayfs` driver, check [Rootless mode documentation](/engine/security/rootless.md). ## Prerequisites diff --git a/content/storage/storagedriver/select-storage-driver.md b/content/engine/storage/drivers/select-storage-driver.md similarity index 96% rename from content/storage/storagedriver/select-storage-driver.md rename to content/engine/storage/drivers/select-storage-driver.md index 475eba2691..5d9f407971 100644 --- a/content/storage/storagedriver/select-storage-driver.md +++ b/content/engine/storage/drivers/select-storage-driver.md @@ -15,7 +15,7 @@ in. Docker supports several storage drivers, using a pluggable architecture. The storage driver controls how images and containers are stored and managed on your -Docker host. After you have read the [storage driver overview](index.md), the +Docker host. After you have read the [storage driver overview](./_index.md), the next step is to choose the best storage driver for your workloads. Use the storage driver with the best overall performance and stability in the most usual scenarios. @@ -24,7 +24,7 @@ The Docker Engine provides the following storage drivers on Linux: | Driver | Description | | :---------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `overlay2` | `overlay2` is the preferred storage driver for all currently supported Linux distributions, and requires no extra configuration. | -| `fuse-overlayfs` | `fuse-overlayfs`is preferred only for running Rootless Docker on an old host that does not provide support for rootless `overlay2`. The `fuse-overlayfs` driver does not need to be used since Linux kernel 5.11, and `overlay2` works even in rootless mode. Refer to the [rootless mode documentation](../../engine/security/rootless.md) for details. | +| `fuse-overlayfs` | `fuse-overlayfs`is preferred only for running Rootless Docker on an old host that does not provide support for rootless `overlay2`. The `fuse-overlayfs` driver does not need to be used since Linux kernel 5.11, and `overlay2` works even in rootless mode. Refer to the [rootless mode documentation](/engine/security/rootless.md) for details. | | `btrfs` and `zfs` | The `btrfs` and `zfs` storage drivers allow for advanced options, such as creating "snapshots", but require more maintenance and setup. Each of these relies on the backing filesystem being configured correctly. | | `vfs` | The `vfs` storage driver is intended for testing purposes, and for situations where no copy-on-write filesystem can be used. Performance of this storage driver is poor, and is not generally recommended for production use. | @@ -53,10 +53,10 @@ the final decision. > > Modifying the storage driver by editing the daemon configuration file isn't > supported on Docker Desktop. Only the default `overlay2` driver or the -> [containerd storage](../../desktop/containerd.md) are supported. The +> [containerd storage](/desktop/containerd.md) are supported. The > following table is also not applicable for the Docker Engine in rootless > mode. For the drivers available in rootless mode, see the [Rootless mode -> documentation](../../engine/security/rootless.md). +> documentation](/engine/security/rootless.md). Your operating system and kernel may not support every storage driver. For example, `btrfs` is only supported if your system uses `btrfs` as storage. In @@ -190,7 +190,7 @@ to physical or logical disks on the Docker host. ## Related information -- [About images, containers, and storage drivers](index.md) +- [About images, containers, and storage drivers](./_index.md) - [`overlay2` storage driver in practice](overlayfs-driver.md) - [`btrfs` storage driver in practice](btrfs-driver.md) - [`zfs` storage driver in practice](zfs-driver.md) diff --git a/content/storage/storagedriver/vfs-driver.md b/content/engine/storage/drivers/vfs-driver.md similarity index 100% rename from content/storage/storagedriver/vfs-driver.md rename to content/engine/storage/drivers/vfs-driver.md diff --git a/content/storage/storagedriver/zfs-driver.md b/content/engine/storage/drivers/zfs-driver.md similarity index 100% rename from content/storage/storagedriver/zfs-driver.md rename to content/engine/storage/drivers/zfs-driver.md diff --git a/content/storage/images/types-of-mounts-bind.webp b/content/engine/storage/images/types-of-mounts-bind.webp similarity index 100% rename from content/storage/images/types-of-mounts-bind.webp rename to content/engine/storage/images/types-of-mounts-bind.webp diff --git a/content/storage/images/types-of-mounts-tmpfs.webp b/content/engine/storage/images/types-of-mounts-tmpfs.webp similarity index 100% rename from content/storage/images/types-of-mounts-tmpfs.webp rename to content/engine/storage/images/types-of-mounts-tmpfs.webp diff --git a/content/storage/images/types-of-mounts-volume.webp b/content/engine/storage/images/types-of-mounts-volume.webp similarity index 100% rename from content/storage/images/types-of-mounts-volume.webp rename to content/engine/storage/images/types-of-mounts-volume.webp diff --git a/content/storage/images/types-of-mounts.webp b/content/engine/storage/images/types-of-mounts.webp similarity index 100% rename from content/storage/images/types-of-mounts.webp rename to content/engine/storage/images/types-of-mounts.webp diff --git a/content/storage/images/volumes-shared-storage.webp b/content/engine/storage/images/volumes-shared-storage.webp similarity index 100% rename from content/storage/images/volumes-shared-storage.webp rename to content/engine/storage/images/volumes-shared-storage.webp diff --git a/content/storage/tmpfs.md b/content/engine/storage/tmpfs.md similarity index 98% rename from content/storage/tmpfs.md rename to content/engine/storage/tmpfs.md index 522c751180..04355affc5 100644 --- a/content/storage/tmpfs.md +++ b/content/engine/storage/tmpfs.md @@ -4,6 +4,7 @@ title: tmpfs mounts keywords: storage, persistence, data persistence, tmpfs aliases: - /engine/admin/volumes/tmpfs/ +- /storage/tmpfs/ --- [Volumes](volumes.md) and [bind mounts](bind-mounts.md) let you share files @@ -132,4 +133,4 @@ docker run -d \ - Learn about [volumes](volumes.md) - Learn about [bind mounts](bind-mounts.md) -- Learn about [storage drivers](/storage/storagedriver/) +- Learn about [storage drivers](/engine/storage/drivers/) diff --git a/content/storage/volumes.md b/content/engine/storage/volumes.md similarity index 99% rename from content/storage/volumes.md rename to content/engine/storage/volumes.md index eb4f01aae7..5a366b1d88 100644 --- a/content/storage/volumes.md +++ b/content/engine/storage/volumes.md @@ -9,6 +9,7 @@ aliases: - /engine/tutorials/dockervolumes/ - /engine/userguide/dockervolumes/ - /engine/admin/volumes/volumes/ +- /storage/volumes/ --- Volumes are the preferred mechanism for persisting data generated by and used @@ -243,7 +244,7 @@ volumes: ``` For more information about using volumes with Compose, refer to the -[Volumes](../compose/compose-file/07-volumes.md) +[Volumes](/compose/compose-file/07-volumes.md) section in the Compose specification. ### Start a service with volumes @@ -686,5 +687,5 @@ $ docker volume prune - Learn about [bind mounts](bind-mounts.md). - Learn about [tmpfs mounts](tmpfs.md). -- Learn about [storage drivers](/storage/storagedriver/). +- Learn about [storage drivers](/engine/storage/drivers/). - Learn about [third-party volume driver plugins](/engine/extend/legacy_plugins/). diff --git a/content/engine/swarm/manage-nodes.md b/content/engine/swarm/manage-nodes.md index 2bc262fa23..97d6a86728 100644 --- a/content/engine/swarm/manage-nodes.md +++ b/content/engine/swarm/manage-nodes.md @@ -130,9 +130,9 @@ $ docker node update --label-add foo --label-add bar=baz node-1 node-1 ``` -The labels you set for nodes using docker node update apply only to the node -entity within the swarm. Do not confuse them with the docker daemon labels for -[dockerd](../../config/labels-custom-metadata.md). +The labels you set for nodes using `docker node update` apply only to the node +entity within the swarm. Do not confuse them with the Docker daemon labels for +[dockerd](/engine/manage-resources/labels.md). Therefore, node labels can be used to limit critical tasks to nodes that meet certain requirements. For example, schedule only on machines where special diff --git a/content/engine/swarm/networking.md b/content/engine/swarm/networking.md index aef238a2e2..9be92deb6c 100644 --- a/content/engine/swarm/networking.md +++ b/content/engine/swarm/networking.md @@ -51,7 +51,7 @@ The following three network concepts are important to swarm services: > **Tip** > -> See also [Networking overview](../../network/index.md) for more details about Swarm networking in general. +> See also [Networking overview](/engine/network/_index.md) for more details about Swarm networking in general. { .tip } ## Firewall considerations @@ -248,7 +248,7 @@ endpoint mode with an external load balancer, or use multiple smaller overlay ne Management and control plane data related to a swarm is always encrypted. For more details about the encryption mechanisms, see the -[Docker swarm mode overlay network security model](../../network/drivers/overlay.md). +[Docker swarm mode overlay network security model](/engine/network/drivers/overlay.md). Application data among swarm nodes is not encrypted by default. To encrypt this traffic on a given overlay network, use the `--opt encrypted` flag on `docker @@ -479,5 +479,5 @@ preferred because it is somewhat self-documenting. * [Deploy services to a swarm](services.md) * [Swarm administration guide](admin_guide.md) * [Swarm mode tutorial](swarm-tutorial/index.md) -* [Networking overview](../../network/index.md) +* [Networking overview](/engine/network/_index.md) * [Docker CLI reference](../../reference/cli/docker/) diff --git a/content/engine/swarm/services.md b/content/engine/swarm/services.md index ea966c87cb..9236ec0d63 100644 --- a/content/engine/swarm/services.md +++ b/content/engine/swarm/services.md @@ -556,7 +556,7 @@ $ docker service update --network-rm my-network my-web For more information on overlay networking and service discovery, refer to [Attach services to an overlay network](networking.md) and -[Docker swarm mode overlay network security model](../../network/drivers/overlay.md). +[Docker swarm mode overlay network security model](/engine/network/drivers/overlay.md). ### Grant a service access to secrets @@ -688,7 +688,7 @@ 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](../../config/containers/resource_constraints.md#understand-the-risks-of-running-out-of-memory). +[Understand the risks of running out of memory](/engine/containers/resource_constraints.md#understand-the-risks-of-running-out-of-memory). Swarm services allow you to use resource constraints, placement preferences, and labels to ensure that your service is deployed to the appropriate swarm nodes. @@ -951,7 +951,7 @@ $ docker service create \ ``` For more information on how to create data volumes and the use of volume -drivers, see [Use volumes](../../storage/volumes.md). +drivers, see [Use volumes](/engine/storage/volumes.md). #### Bind mounts @@ -1058,4 +1058,4 @@ $ docker inspect --format="{{.Config.Hostname}}" hosttempl.1.wo41w8hg8qanxwjwsg4 * [Swarm administration guide](admin_guide.md) * [Docker Engine command line reference](../../reference/cli/docker/) -* [Swarm mode tutorial](swarm-tutorial/index.md) +* [Swarm mode tutorial](swarm-tutorial/_index.md) diff --git a/content/engine/tutorials/_index.md b/content/engine/tutorials/_index.md index 675a888209..fb48e5b573 100644 --- a/content/engine/tutorials/_index.md +++ b/content/engine/tutorials/_index.md @@ -10,6 +10,6 @@ aliases: Learn by example: * [Network containers](networkingcontainers.md) -* [Manage data in containers](../../storage/volumes.md) +* [Manage data in containers](/engine/storage/volumes.md) * [Samples](../../samples/index.md) * [Get Started](../../guides/getting-started/_index.md) diff --git a/content/engine/tutorials/networkingcontainers.md b/content/engine/tutorials/networkingcontainers.md index 9590f28a09..dc08a0c8b4 100644 --- a/content/engine/tutorials/networkingcontainers.md +++ b/content/engine/tutorials/networkingcontainers.md @@ -211,4 +211,4 @@ The `ping` shows it is contacting a different IP address, the address on the `my ## Next steps -Now that you know how to network containers, see [how to manage data in containers](../../storage/volumes.md). \ No newline at end of file +Now that you know how to network containers, see [how to manage data in containers](/engine/storage/volumes.md). \ No newline at end of file diff --git a/content/guides/docker-concepts/running-containers/overriding-container-defaults.md b/content/guides/docker-concepts/running-containers/overriding-container-defaults.md index bb9ac981b5..a4d996b3f7 100644 --- a/content/guides/docker-concepts/running-containers/overriding-container-defaults.md +++ b/content/guides/docker-concepts/running-containers/overriding-container-defaults.md @@ -125,7 +125,7 @@ Follow the steps to see how to connect a Postgres container to a custom network. > **Key difference between default bridge and custom networks** > - > 1. DNS resolution: By default, containers connected to the default bridge network can communicate with each other, but only by IP address. (unless you use `--link` option which is considered legacy). It is not recommended for production use due to the various [technical shortcomings](/network/drivers/bridge/#differences-between-user-defined-bridges-and-the-default-bridge). On a custom network, containers can resolve each other by name or alias. + > 1. DNS resolution: By default, containers connected to the default bridge network can communicate with each other, but only by IP address. (unless you use `--link` option which is considered legacy). It is not recommended for production use due to the various [technical shortcomings](/engine/network/drivers/bridge/#differences-between-user-defined-bridges-and-the-default-bridge). On a custom network, containers can resolve each other by name or alias. > 2. Isolation: All containers without a `--network` specified are attached to the default bridge network, hence can be a risk, as unrelated containers are then able to communicate. Using a custom network provides a scoped network in which only containers attached to that network are able to communicate, hence providing better isolation. { .tip } diff --git a/content/guides/docker-concepts/running-containers/persisting-container-data.md b/content/guides/docker-concepts/running-containers/persisting-container-data.md index 420080da56..20c79bc3f0 100644 --- a/content/guides/docker-concepts/running-containers/persisting-container-data.md +++ b/content/guides/docker-concepts/running-containers/persisting-container-data.md @@ -165,9 +165,9 @@ There are a few methods to remove volumes, including the following: The following resources will help you learn more about volumes: -- [Manage data in Docker](/storage) -- [Volumes](/storage/volumes) -- [Volume mounts (`docker run` reference)](/engine/reference/run/#volume-mounts) +- [Manage data in Docker](/engine/storage) +- [Volumes](/engine/storage/volumes) +- [Volume mounts](/engine/containers/run/#volume-mounts) ## Next steps diff --git a/content/guides/docker-concepts/running-containers/publishing-ports.md b/content/guides/docker-concepts/running-containers/publishing-ports.md index 003cef5f9e..03e45e88d6 100644 --- a/content/guides/docker-concepts/running-containers/publishing-ports.md +++ b/content/guides/docker-concepts/running-containers/publishing-ports.md @@ -33,7 +33,7 @@ Now, any traffic sent to port `8080` on your host machine will be forwarded to p > **Important** > -> When a port is published, it's published to all network interfaces by default. This means any traffic that reaches your machine can access the published application. Be mindful of publishing databases or any sensitive information. [Learn more about published ports here](https://docs.docker.com/network/#published-ports). +> When a port is published, it's published to all network interfaces by default. This means any traffic that reaches your machine can access the published application. Be mindful of publishing databases or any sensitive information. [Learn more about published ports here](/engine/network/#published-ports). { .important } ### Publishing to ephemeral ports @@ -122,7 +122,7 @@ This example will launch the same application using Docker Compose: If you’d like to dive in deeper on this topic, be sure to check out the following resources: * [`docker container port` CLI reference](/reference/cli/docker/container/port/) -* [Published ports](/network/#published-ports) +* [Published ports](/engine/network/#published-ports) ## Next steps diff --git a/content/guides/docker-concepts/the-basics/what-is-a-container.md b/content/guides/docker-concepts/the-basics/what-is-a-container.md index 3a4498ef99..13b3d07a65 100644 --- a/content/guides/docker-concepts/the-basics/what-is-a-container.md +++ b/content/guides/docker-concepts/the-basics/what-is-a-container.md @@ -184,7 +184,7 @@ The `docker/welcome-to-docker` container continues to run until you stop it. You The following links provide additional guidance into containers: -- [Running a container](/engine/reference/run/) +- [Running a container](/engine/containers/run/) - [Overview of container](https://www.docker.com/resources/what-container/) - [Why Docker?](https://www.docker.com/why-docker/) diff --git a/content/guides/use-case/jupyter.md b/content/guides/use-case/jupyter.md index d80bc3fdda..69af38a0c6 100644 --- a/content/guides/use-case/jupyter.md +++ b/content/guides/use-case/jupyter.md @@ -114,7 +114,7 @@ managed by Docker. ## Save and access notebooks When you remove a container, all data in that container is deleted. To save -notebooks outside of the container, you can use a [volume](/storage/volumes/). +notebooks outside of the container, you can use a [volume](/engine/storage/volumes/). ### Run a JupterLab container with a volume @@ -371,7 +371,7 @@ $ docker run --rm -p 8889:8888 YOUR-USER-NAME/my-jupyer-image start-notebook.py ### Share your volume -This example uses the Docker Desktop [Volumes Backup & Share](https://hub.docker.com/extensions/docker/volumes-backup-extension) extension. Alternatively, in the CLI you can [back up the volume](/storage/volumes/#back-up-a-volume) and then [push it using the ORAS CLI](/docker-hub/oci-artifacts/#push-a-volume). +This example uses the Docker Desktop [Volumes Backup & Share](https://hub.docker.com/extensions/docker/volumes-backup-extension) extension. Alternatively, in the CLI you can [back up the volume](/engine/storage/volumes/#back-up-a-volume) and then [push it using the ORAS CLI](/docker-hub/oci-artifacts/#push-a-volume). 1. Install the Volumes Backup & Share extension. 1. Open the Docker Dashboard and select **Extensions**. diff --git a/content/guides/workshop/04_sharing_app.md b/content/guides/workshop/04_sharing_app.md index c874438c6d..b1b7d33b23 100644 --- a/content/guides/workshop/04_sharing_app.md +++ b/content/guides/workshop/04_sharing_app.md @@ -111,7 +111,7 @@ new instance that has never seen this container image. To do this, you will use > on all interfaces of the host, making it available to the outside world. > > For more information about how port mapping works, see - > [Networking](../../network/_index.md#published-ports). + > [Networking](/engine/network/_index.md#published-ports). { .tip } 6. Select the 3000 badge when it appears. diff --git a/content/guides/workshop/05_persisting_data.md b/content/guides/workshop/05_persisting_data.md index c0bd3d5974..5d57086d0d 100644 --- a/content/guides/workshop/05_persisting_data.md +++ b/content/guides/workshop/05_persisting_data.md @@ -62,7 +62,7 @@ With the previous experiment, you saw that each container starts from the image While containers can create, update, and delete files, those changes are lost when you remove the container and Docker isolates all changes to that container. With volumes, you can change all of this. -[Volumes](../../storage/volumes.md) provide the ability to connect specific filesystem paths of +[Volumes](/engine/storage/volumes.md) provide the ability to connect specific filesystem paths of the container back to the host machine. If you mount a directory in the container, changes in that directory are also seen on the host machine. If you mount that same directory across container restarts, you'd see the same files. @@ -205,7 +205,7 @@ In this section, you learned how to persist container data. Related information: - [docker CLI reference](/reference/cli/docker/) - - [Volumes](../../storage/volumes.md) + - [Volumes](/engine/storage/volumes.md) ## Next steps diff --git a/content/guides/workshop/07_multi_container.md b/content/guides/workshop/07_multi_container.md index cfa7eea8c4..2f06d057b1 100644 --- a/content/guides/workshop/07_multi_container.md +++ b/content/guides/workshop/07_multi_container.md @@ -313,7 +313,7 @@ container. You learned a little bit about container networking and service disco Related information: - [docker CLI reference](/reference/cli/docker/) - - [Networking overview](../../network/_index.md) + - [Networking overview](/engine/network/_index.md) ## Next steps diff --git a/content/language/golang/develop.md b/content/language/golang/develop.md index 254831c3d9..f31d9b6522 100644 --- a/content/language/golang/develop.md +++ b/content/language/golang/develop.md @@ -26,7 +26,7 @@ For more information on the relation between Go and CockroachDB, refer to the [C ### Storage -The point of a database is to have a persistent store of data. [Volumes](../../storage/volumes.md) are the preferred mechanism for persisting data generated by and used by Docker containers. Thus, before you start CockroachDB, create the volume for it. +The point of a database is to have a persistent store of data. [Volumes](/engine/storage/volumes.md) are the preferred mechanism for persisting data generated by and used by Docker containers. Thus, before you start CockroachDB, create the volume for it. To create a managed volume, run : @@ -65,7 +65,7 @@ daed20bbecce host host local 6aee44f40a39 none null local ``` -Your bridge network `mynet` has been created successfully. The other three networks, named `bridge`, `host`, and `none` are the default networks and they had been created by the Docker itself. While it's not relevant to this guide, you can learn more about Docker networking in the [networking overview](../../network/index.md) section. +Your bridge network `mynet` has been created successfully. The other three networks, named `bridge`, `host`, and `none` are the default networks and they had been created by the Docker itself. While it's not relevant to this guide, you can learn more about Docker networking in the [networking overview](/engine/network/_index.md) section. ### Choose good names for volumes and networks @@ -711,7 +711,7 @@ There are some tangential, yet interesting points that were purposefully not cov ### Persistent storage -A managed volume isn't the only way to provide your container with persistent storage. It is highly recommended to get acquainted with available storage options and their use cases, covered in [Manage data in Docker](../../storage/_index.md). +A managed volume isn't the only way to provide your container with persistent storage. It is highly recommended to get acquainted with available storage options and their use cases, covered in [Manage data in Docker](/engine/storage/_index.md). ### CockroachDB clusters diff --git a/content/language/nodejs/develop.md b/content/language/nodejs/develop.md index 91e3be7715..ed538d1e39 100644 --- a/content/language/nodejs/develop.md +++ b/content/language/nodejs/develop.md @@ -271,7 +271,7 @@ have these variables defined yet. ## Configure and run a development container -You can use a bind mount to mount your source code into the container. The container can then see the changes you make to the code immediately, as soon as you save a file. This means that you can run processes, like nodemon, in the container that watch for filesystem changes and respond to them. To learn more about bind mounts, see [Storage overview](../../storage/index.md). +You can use a bind mount to mount your source code into the container. The container can then see the changes you make to the code immediately, as soon as you save a file. This means that you can run processes, like nodemon, in the container that watch for filesystem changes and respond to them. To learn more about bind mounts, see [Storage overview](/engine/storage/index.md). In addition to adding a bind mount, you can configure your Dockerfile and `compose.yaml` file to install development dependencies and run development tools. diff --git a/content/language/rust/develop.md b/content/language/rust/develop.md index 694941ef52..9ffc761406 100644 --- a/content/language/rust/develop.md +++ b/content/language/rust/develop.md @@ -35,7 +35,7 @@ $ docker network create postgresnet ``` Now you can run PostgreSQL in a container and attach to the volume and network that you created previously. Docker pulls the image from Hub and runs it for you locally. -In the following command, option `--mount` is for starting the container with a volume. For more information, see [Docker volumes](../../storage/volumes.md). +In the following command, option `--mount` is for starting the container with a volume. For more information, see [Docker volumes](/engine/storage/volumes.md). ```console $ docker run --rm -d --mount \ @@ -314,7 +314,7 @@ You should receive the following response: In this section, you took a look at setting up your Compose file to run your Rust application and database with a single command. Related information: - - [Docker volumes](../../storage/volumes.md) + - [Docker volumes](/engine/storage/volumes.md) - [Compose overview](../../compose/index.md) ## Next steps diff --git a/data/glossary.yaml b/data/glossary.yaml index 36ba36c059..1b5553b675 100644 --- a/data/glossary.yaml +++ b/data/glossary.yaml @@ -28,7 +28,7 @@ Compose: | *Also known as Docker Compose* copy-on-write: | Docker uses a - [copy-on-write](/storage/storagedriver/#the-copy-on-write-cow-strategy) + [copy-on-write](/engine/storage/drivers/#the-copy-on-write-cow-strategy) technique and a [union file system](#union-file-system) for both images and containers to optimize resources and speed performance. Multiple copies of an entity share the same instance and each one makes only specific changes to its @@ -45,7 +45,7 @@ copy-on-write: | For more about copy-on-write in the context of Docker, see [Understand images, containers, and storage - drivers](/storage/storagedriver/). + drivers](/engine/storage/drivers/). container: | A container is a runtime instance of a [docker image](#image). @@ -176,7 +176,7 @@ member: | namespace: | A [Linux namespace](https://man7.org/linux/man-pages/man7/namespaces.7.html) is a Linux kernel feature that isolates and virtualizes system resources. Processes which are restricted to a namespace can only interact with resources or processes that are part of the same namespace. Namespaces - are an important part of Docker's isolation model. Namespaces exist for each type of resource, including `net` (networking), `mnt` (storage), `pid` (processes), `uts` (hostname control), and `user` (UID mapping). For more information about namespaces, see [Docker run reference](/engine/reference/run/) and [Isolate containers with a user namespace](/engine/security/userns-remap/). + are an important part of Docker's isolation model. Namespaces exist for each type of resource, including `net` (networking), `mnt` (storage), `pid` (processes), `uts` (hostname control), and `user` (UID mapping). For more information about namespaces, see [Docker run reference](/engine/containers/run/) and [Isolate containers with a user namespace](/engine/security/userns-remap/). node: | A [node](/engine/swarm/how-swarm-mode-works/nodes/) is a physical or virtual machine running an instance of the Docker Engine in [swarm mode](#swarm-mode). @@ -229,7 +229,7 @@ service: | service account: | A service account is a Docker ID used for automated management of container images or containerized applications. Service accounts are typically used in automated workflows, and do not share Docker IDs with the members in a Docker Team or Docker Business subscription plan. service discovery: | - Swarm mode [container discovery](/network/drivers/overlay/#container-discovery) is a DNS component internal to the swarm that automatically assigns each service on an overlay network in the swarm a VIP and DNS entry. Containers on the network share DNS mappings for the service through gossip so any container on the network can access the service through its service name. + Swarm mode [container discovery](/engine/network/drivers/overlay/#container-discovery) is a DNS component internal to the swarm that automatically assigns each service on an overlay network in the swarm a VIP and DNS entry. Containers on the network share DNS mappings for the service through gossip so any container on the network can access the service through its service name. You don’t need to expose service-specific ports to make the service available to other services on the same overlay network. The swarm’s internal load balancer automatically distributes requests to the service VIP among the active tasks. swarm: | diff --git a/data/redirects.yml b/data/redirects.yml index 868f3732cd..52e0243e0a 100644 --- a/data/redirects.yml +++ b/data/redirects.yml @@ -148,7 +148,7 @@ - /go/compose-ecs-eol/ "/compose/migrate/": - /go/compose-v1-eol/ -"/config/formatting/": +"/engine/cli/formatting/": # Instructions on using Go templates to format CLI output with --format - /go/formatting/ "/?utm_source=docker&utm_medium=inproductad&utm_campaign=20-11nurturecli_docs": @@ -164,7 +164,7 @@ # Instructions on running docker in rootless mode. This redirect is currently # used in the installation script at "get.docker.com" - /go/rootless/ -"/storage/storagedriver/select-storage-driver/": +"/engine/storage/drivers/select-storage-driver/": - /go/storage-driver/ "/docker-hub/vulnerability-scanning/": - /go/tip-scanning/ @@ -706,7 +706,7 @@ - /go/build-ssh/ "/reference/cli/docker/buildx/build/#build-context": - /go/build-additional-context/ -"/config/labels-custom-metadata/": +"/engine/manage-resources/labels/": - /go/labels/ "/build/ci/github-actions/build-summary/": - /go/build-summary/ @@ -726,7 +726,7 @@ - /go/run-cloud-eap/ # CLI backlinks -"/config/filter/": +"/engine/cli/filter/": - /go/filter/ # Docker Init diff --git a/data/toc.yaml b/data/toc.yaml index ada0ccdb6d..4066a1f80e 100644 --- a/data/toc.yaml +++ b/data/toc.yaml @@ -1574,178 +1574,178 @@ Manuals: title: Post-installation steps - sectiontitle: Storage section: - - path: /storage/ + - path: /engine/storage/ title: Overview - - path: /storage/volumes/ + - path: /engine/storage/volumes/ title: Volumes - - path: /storage/bind-mounts/ + - path: /engine/storage/bind-mounts/ title: Bind mounts - - path: /storage/tmpfs/ + - path: /engine/storage/tmpfs/ title: tmpfs mounts - sectiontitle: Storage drivers section: - - path: /storage/storagedriver/ + - path: /engine/storage/drivers/ title: Overview - - path: /storage/storagedriver/select-storage-driver/ + - path: /engine/storage/drivers/select-storage-driver/ title: Select a storage driver - - path: /storage/storagedriver/btrfs-driver/ + - path: /engine/storage/drivers/btrfs-driver/ title: Use the Btrfs storage driver - - path: /storage/storagedriver/device-mapper-driver/ + - path: /engine/storage/drivers/device-mapper-driver/ title: Use the Device mapper storage driver - - path: /storage/storagedriver/overlayfs-driver/ + - path: /engine/storage/drivers/overlayfs-driver/ title: Use the OverlayFS storage driver - - path: /storage/storagedriver/zfs-driver/ + - path: /engine/storage/drivers/zfs-driver/ title: Use the ZFS storage driver - - path: /storage/storagedriver/vfs-driver/ + - path: /engine/storage/drivers/vfs-driver/ title: Use the VFS storage driver - - path: /storage/storagedriver/aufs-driver/ + - path: /engine/storage/drivers/aufs-driver/ title: Use the AUFS storage driver (deprecated) - - path: /storage/containerd/ - title: containerd snapshotters + - path: /engine/storage/containerd/ + title: containerd snapshotters - sectiontitle: Networking section: - - path: /network/ + - path: /engine/network/ title: Overview - sectiontitle: Network drivers section: - - path: /network/drivers/ + - path: /engine/network/drivers/ title: Overview - - path: /network/drivers/bridge/ + - path: /engine/network/drivers/bridge/ title: Bridge - - path: /network/drivers/overlay/ + - path: /engine/network/drivers/overlay/ title: Overlay - - path: /network/drivers/host/ + - path: /engine/network/drivers/host/ title: Host - - path: /network/drivers/ipvlan/ + - path: /engine/network/drivers/ipvlan/ title: IPvlan - - path: /network/drivers/macvlan/ + - path: /engine/network/drivers/macvlan/ title: Macvlan - - path: /network/drivers/none/ + - path: /engine/network/drivers/none/ title: None (no networking) - - path: /network/proxy/ - title: Configure Docker to use a proxy server - - path: /network/packet-filtering-firewalls/ + - path: /engine/network/packet-filtering-firewalls/ title: Packet filtering and firewalls - - path: /config/daemon/ipv6/ - title: Use IPv6 - sectiontitle: Networking tutorials section: - - path: /network/network-tutorial-standalone/ + - path: /engine/network/tutorials/standalone/ title: Bridge network tutorial - - path: /network/network-tutorial-host/ + - path: /engine/network/tutorials/host/ title: Host networking tutorial - - path: /network/network-tutorial-overlay/ + - path: /engine/network/tutorials/overlay/ title: Overlay networking tutorial - - path: /network/network-tutorial-macvlan/ + - path: /engine/network/tutorials/macvlan/ title: Macvlan network tutorial - sectiontitle: Legacy networking content section: - - path: /network/links/ + - path: /engine/network/links/ title: (Legacy) Container links - sectiontitle: Containers section: - - path: /engine/reference/run/ + - path: /engine/containers/run/ title: Running containers - - path: /config/containers/resource_constraints/ + - path: /engine/containers/resource_constraints/ title: Configure resource constraints - - path: /config/containers/multi-service_container/ + - path: /engine/containers/multi-service_container/ title: Run multiple processes in a container - - path: /config/containers/start-containers-automatically/ + - path: /engine/containers/start-containers-automatically/ title: Start containers automatically + - path: /engine/containers/runmetrics/ + title: Runtime metrics - sectiontitle: CLI section: - - path: /config/completion/ + - path: /engine/cli/completion/ title: Completion - - path: /config/filter/ + - path: /engine/cli/proxy/ + title: Client proxy configuration + - path: /engine/cli/filter/ title: Filter commands - - path: /config/formatting/ + - path: /engine/cli/formatting/ title: Format command and log output - - path: /config/otel/ + - path: /engine/cli/otel/ title: OpenTelemetry - sectiontitle: Manage resources section: - - path: /config/pruning/ + - path: /engine/manage-resources/pruning/ title: Prune unused objects - - path: /config/labels-custom-metadata/ + - path: /engine/manage-resources/labels/ title: Labels - - path: /engine/context/working-with-contexts/ + - path: /engine/manage-resources/contexts/ title: Contexts - sectiontitle: Daemon section: - - path: /config/daemon/start/ + - path: /engine/daemon/start/ title: Start the daemon - - path: /config/daemon/ + - path: /engine/daemon/ title: Configure the daemon - - path: /config/daemon/proxy/ - title: HTTP proxy - - path: /config/containers/live-restore/ + - path: /engine/daemon/ipv6/ + title: Use IPv6 + - path: /engine/daemon/proxy/ + title: Daemon proxy configuration + - path: /engine/containers/live-restore/ title: Live restore - - path: /config/daemon/troubleshoot/ + - path: /engine/daemon/troubleshoot/ title: Troubleshoot - - path: /config/daemon/remote-access/ + - path: /engine/daemon/remote-access/ title: Remote access - - path: /engine/alternative-runtimes/ + - path: /engine/daemon/alternative-runtimes/ title: Alternative container runtimes - - sectiontitle: Engine plugins - section: - - path: /engine/extend/ - title: Managed plugin system - - path: /engine/extend/plugins_authorization/ - title: Access authorization plugin - - path: /engine/extend/legacy_plugins/ - title: Extending Docker with plugins - - path: /engine/extend/plugins_network/ - title: Network plugins - - path: /engine/extend/plugins_logging/ - title: Logging plugins - - path: /engine/extend/plugins_volume/ - title: Volume plugins - - title: Plugin configuration - path: /engine/extend/config/ - - path: /engine/extend/plugin_api/ - title: Plugin API + - path: /engine/daemon/logs/ + title: Daemon logs + - path: /engine/daemon/prometheus/ + title: Collect metrics with Prometheus + - sectiontitle: Engine plugins + section: + - path: /engine/extend/ + title: Managed plugin system + - path: /engine/extend/plugins_authorization/ + title: Access authorization plugin + - path: /engine/extend/legacy_plugins/ + title: Extending Docker with plugins + - path: /engine/extend/plugins_network/ + title: Network plugins + - path: /engine/extend/plugins_logging/ + title: Logging plugins + - path: /engine/extend/plugins_volume/ + title: Volume plugins + - title: Plugin configuration + path: /engine/extend/config/ + - path: /engine/extend/plugin_api/ + title: Plugin API - sectiontitle: Logs and metrics section: - sectiontitle: Container logs section: - - path: /config/containers/logging/ + - path: /engine/logging/ title: View container logs - - path: /config/containers/logging/configure/ + - path: /engine/logging/configure/ title: Configure logging drivers - - path: /config/containers/logging/dual-logging/ + - path: /engine/logging/dual-logging/ title: Use a remote logging driver - - path: /config/containers/logging/plugins/ + - path: /engine/logging/plugins/ title: Use a logging driver plugin - - path: /config/containers/logging/log_tags/ + - path: /engine/logging/log_tags/ title: Customize log driver output - sectiontitle: Logging drivers section: - - path: /config/containers/logging/local/ + - path: /engine/logging/drivers/local/ title: Local file logging driver - - path: /config/containers/logging/json-file/ + - path: /engine/logging/drivers/json-file/ title: JSON File logging driver - - path: /config/containers/logging/gelf/ + - path: /engine/logging/drivers/gelf/ title: Graylog Extended Format (GELF) logging driver - - path: /config/containers/logging/syslog/ + - path: /engine/logging/drivers/syslog/ title: Syslog logging driver - - path: /config/containers/logging/awslogs/ + - path: /engine/logging/drivers/awslogs/ title: Amazon CloudWatch logs logging driver - - path: /config/containers/logging/etwlogs/ + - path: /engine/logging/drivers/etwlogs/ title: ETW logging driver - - path: /config/containers/logging/fluentd/ + - path: /engine/logging/drivers/fluentd/ title: Fluentd logging driver - - path: /config/containers/logging/gcplogs/ + - path: /engine/logging/drivers/gcplogs/ title: Google Cloud logging driver - - path: /config/containers/logging/journald/ + - path: /engine/logging/drivers/journald/ title: Journald logging driver - - path: /config/containers/logging/splunk/ + - path: /engine/logging/drivers/splunk/ title: Splunk logging driver - - path: /config/daemon/logs/ - title: Daemon logs - - path: /config/containers/runmetrics/ - title: Runtime metrics - - path: /config/daemon/prometheus/ - title: Collect metrics with Prometheus - sectiontitle: Security section: - path: /engine/security/ diff --git a/hugo.yaml b/hugo.yaml index 847527041e..4c5f5ba422 100644 --- a/hugo.yaml +++ b/hugo.yaml @@ -282,7 +282,7 @@ module: - source: docs/deprecated.md target: content/engine/deprecated.md - source: docs/reference/run.md - target: content/engine/reference/run.md + target: content/engine/containers/run.md - source: docs/reference/dockerd.md target: content/reference/cli/dockerd.md