diff --git a/_vendor/github.com/docker/cli/docs/extend/index.md b/_vendor/github.com/docker/cli/docs/extend/index.md index c90a42cb4f..7264d59bae 100644 --- a/_vendor/github.com/docker/cli/docs/extend/index.md +++ b/_vendor/github.com/docker/cli/docs/extend/index.md @@ -117,7 +117,7 @@ enabled, and use it to create a volume. To disable a plugin, use the `docker plugin disable` command. To completely remove it, use the `docker plugin remove` command. For other available commands and options, see the -[command line reference](https://docs.docker.com/engine/reference/commandline/cli/). +[command line reference](https://docs.docker.com/reference/cli/docker/). ## Developing a plugin diff --git a/_vendor/github.com/docker/cli/docs/reference/commandline/cli.md b/_vendor/github.com/docker/cli/docs/reference/commandline/cli.md deleted file mode 100644 index c6bd54337a..0000000000 --- a/_vendor/github.com/docker/cli/docs/reference/commandline/cli.md +++ /dev/null @@ -1,408 +0,0 @@ ---- -title: "Use the Docker command line" -description: "Docker's CLI command description and usage" -keywords: "Docker, Docker documentation, CLI, command line, config.json, CLI configuration file" -aliases: - - /reference/commandline/cli/ - - /engine/reference/commandline/engine/ - - /engine/reference/commandline/engine_activate/ - - /engine/reference/commandline/engine_check/ - - /engine/reference/commandline/engine_update/ ---- - -The base command for the Docker CLI is `docker`. For information about the -available flags and subcommands, refer to the [CLI reference](https://docs.docker.com/reference/cli/docker/) - -Depending on your Docker system configuration, you may be required to preface -each `docker` command with `sudo`. To avoid having to use `sudo` with the -`docker` command, your system administrator can create a Unix group called -`docker` and add users to it. - -For more information about installing Docker or `sudo` configuration, refer to -the [installation](https://docs.docker.com/install/) instructions for your operating system. - -## Environment variables - -The following list of environment variables are supported by the `docker` command -line: - -| Variable | Description | -| :---------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DOCKER_API_VERSION` | Override the negotiated API version to use for debugging (e.g. `1.19`) | -| `DOCKER_CERT_PATH` | Location of your authentication keys. This variable is used both by the `docker` CLI and the [`dockerd` daemon](https://docs.docker.com/reference/cli/dockerd/) | -| `DOCKER_CONFIG` | The location of your client configuration files. | -| `DOCKER_CONTENT_TRUST_SERVER` | The URL of the Notary server to use. Defaults to the same URL as the registry. | -| `DOCKER_CONTENT_TRUST` | When set Docker uses notary to sign and verify images. Equates to `--disable-content-trust=false` for build, create, pull, push, run. | -| `DOCKER_CONTEXT` | Name of the `docker context` to use (overrides `DOCKER_HOST` env var and default context set with `docker context use`) | -| `DOCKER_DEFAULT_PLATFORM` | Default platform for commands that take the `--platform` flag. | -| `DOCKER_HIDE_LEGACY_COMMANDS` | When set, Docker hides "legacy" top-level commands (such as `docker rm`, and `docker pull`) in `docker help` output, and only `Management commands` per object-type (e.g., `docker container`) are printed. This may become the default in a future release. | -| `DOCKER_HOST` | Daemon socket to connect to. | -| `DOCKER_TLS` | Enable TLS for connections made by the `docker` CLI (equivalent of the `--tls` command-line option). Set to a non-empty value to enable TLS. Note that TLS is enabled automatically if any of the other TLS options are set. | -| `DOCKER_TLS_VERIFY` | When set Docker uses TLS and verifies the remote. This variable is used both by the `docker` CLI and the [`dockerd` daemon](https://docs.docker.com/reference/cli/dockerd/) | -| `BUILDKIT_PROGRESS` | Set type of progress output (`auto`, `plain`, `tty`, `rawjson`) when [building](https://docs.docker.com/reference/cli/docker/image/build/) with [BuildKit backend](https://docs.docker.com/build/buildkit/). Use plain to show container output (default `auto`). | - -Because Docker is developed using Go, you can also use any environment -variables used by the Go runtime. In particular, you may find these useful: - -| Variable | Description | -|:--------------|:-------------------------------------------------------------------------------| -| `HTTP_PROXY` | Proxy URL for HTTP requests unless overridden by NoProxy. | -| `HTTPS_PROXY` | Proxy URL for HTTPS requests unless overridden by NoProxy. | -| `NO_PROXY` | Comma-separated values specifying hosts that should be excluded from proxying. | - -See the [Go specification](https://pkg.go.dev/golang.org/x/net/http/httpproxy#Config) -for details on these variables. - -## Configuration files - -By default, the Docker command line stores its configuration files in a -directory called `.docker` within your `$HOME` directory. - -Docker manages most of the files in the configuration directory -and you shouldn't modify them. However, you can modify the -`config.json` file to control certain aspects of how the `docker` -command behaves. - -You can modify the `docker` command behavior using environment -variables or command-line options. You can also use options within -`config.json` to modify some of the same behavior. If an environment variable -and the `--config` flag are set, the flag takes precedent over the environment -variable. Command line options override environment variables and environment -variables override properties you specify in a `config.json` file. - -### Change the `.docker` directory - -To specify a different directory, use the `DOCKER_CONFIG` -environment variable or the `--config` command line option. If both are -specified, then the `--config` option overrides the `DOCKER_CONFIG` environment -variable. The example below overrides the `docker ps` command using a -`config.json` file located in the `~/testconfigs/` directory. - -```console -$ docker --config ~/testconfigs/ ps -``` - -This flag only applies to whatever command is being ran. For persistent -configuration, you can set the `DOCKER_CONFIG` environment variable in your -shell (e.g. `~/.profile` or `~/.bashrc`). The example below sets the new -directory to be `HOME/newdir/.docker`. - -```console -$ echo export DOCKER_CONFIG=$HOME/newdir/.docker > ~/.profile -``` - -## Docker CLI configuration file (`config.json`) properties - - - -Use the Docker CLI configuration to customize settings for the `docker` CLI. The -configuration file uses JSON formatting, and properties: - -By default, configuration file is stored in `~/.docker/config.json`. Refer to the -[change the `.docker` directory](#change-the-docker-directory) section to use a -different location. - -> **Warning** -> -> The configuration file and other files inside the `~/.docker` configuration -> directory may contain sensitive information, such as authentication information -> for proxies or, depending on your credential store, credentials for your image -> registries. Review your configuration file's content before sharing with others, -> and prevent committing the file to version control. - -### Customize the default output format for commands - -These fields lets you customize the default output format for some commands -if no `--format` flag is provided. - -| Property | Description | -| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `configFormat` | Custom default format for `docker config ls` output. See [`docker config ls`](https://docs.docker.com/reference/cli/docker/config/ls/#format) for a list of supported formatting directives. | -| `imagesFormat` | Custom default format for `docker images` / `docker image ls` output. See [`docker images`](https://docs.docker.com/reference/cli/docker/image/ls/#format) for a list of supported formatting directives. | -| `networksFormat` | Custom default format for `docker network ls` output. See [`docker network ls`](https://docs.docker.com/reference/cli/docker/network/ls/#format) for a list of supported formatting directives. | -| `nodesFormat` | Custom default format for `docker node ls` output. See [`docker node ls`](https://docs.docker.com/reference/cli/docker/node/ls/#format) for a list of supported formatting directives. | -| `pluginsFormat` | Custom default format for `docker plugin ls` output. See [`docker plugin ls`](https://docs.docker.com/reference/cli/docker/plugin/ls/#format) for a list of supported formatting directives. | -| `psFormat` | Custom default format for `docker ps` / `docker container ps` output. See [`docker ps`](https://docs.docker.com/reference/cli/docker/container/ls/#format) for a list of supported formatting directives. | -| `secretFormat` | Custom default format for `docker secret ls` output. See [`docker secret ls`](https://docs.docker.com/reference/cli/docker/secret/ls/#format) for a list of supported formatting directives. | -| `serviceInspectFormat` | Custom default format for `docker service inspect` output. See [`docker service inspect`](https://docs.docker.com/reference/cli/docker/service/inspect/#format) for a list of supported formatting directives. | -| `servicesFormat` | Custom default format for `docker service ls` output. See [`docker service ls`](https://docs.docker.com/reference/cli/docker/service/ls/#format) for a list of supported formatting directives. | -| `statsFormat` | Custom default format for `docker stats` output. See [`docker stats`](https://docs.docker.com/reference/cli/docker/container/stats/#format) for a list of supported formatting directives. | -| `tasksFormat` | Custom default format for `docker stack ps` output. See [`docker stack ps`](https://docs.docker.com/reference/cli/docker/stack/ps/#format) for a list of supported formatting directives. | -| `volumesFormat` | Custom default format for `docker volume ls` output. See [`docker volume ls`](https://docs.docker.com/reference/cli/docker/volume/ls/#format) for a list of supported formatting directives. | - -### Custom HTTP headers - -The property `HttpHeaders` specifies a set of headers to include in all messages -sent from the Docker client to the daemon. Docker doesn't try to interpret or -understand these headers; it simply puts them into the messages. Docker does -not allow these headers to change any headers it sets for itself. - -### Credential store options - -The property `credsStore` specifies an external binary to serve as the default -credential store. When this property is set, `docker login` will attempt to -store credentials in the binary specified by `docker-credential-` which -is visible on `$PATH`. If this property isn't set, credentials are stored -in the `auths` property of the CLI configuration file. For more information, -see the [**Credential stores** section in the `docker login` documentation](https://docs.docker.com/reference/cli/docker/login/#credential-stores) - -The property `credHelpers` specifies a set of credential helpers to use -preferentially over `credsStore` or `auths` when storing and retrieving -credentials for specific registries. If this property is set, the binary -`docker-credential-` will be used when storing or retrieving credentials -for a specific registry. For more information, see the -[**Credential helpers** section in the `docker login` documentation](https://docs.docker.com/reference/cli/docker/login/#credential-helpers) - -### Automatic proxy configuration for containers - -The property `proxies` specifies proxy environment variables to be automatically -set on containers, and set as `--build-arg` on containers used during `docker build`. -A `"default"` set of proxies can be configured, and will be used for any Docker -daemon that the client connects to, or a configuration per host (Docker daemon), -for example, `https://docker-daemon1.example.com`. The following properties can -be set for each environment: - -| Property | Description | -|:---------------|:--------------------------------------------------------------------------------------------------------| -| `httpProxy` | Default value of `HTTP_PROXY` and `http_proxy` for containers, and as `--build-arg` on `docker build` | -| `httpsProxy` | Default value of `HTTPS_PROXY` and `https_proxy` for containers, and as `--build-arg` on `docker build` | -| `ftpProxy` | Default value of `FTP_PROXY` and `ftp_proxy` for containers, and as `--build-arg` on `docker build` | -| `noProxy` | Default value of `NO_PROXY` and `no_proxy` for containers, and as `--build-arg` on `docker build` | -| `allProxy` | Default value of `ALL_PROXY` and `all_proxy` for containers, and as `--build-arg` on `docker build` | - -These settings are used to configure proxy settings for containers only, and not -used as proxy settings for the `docker` CLI or the `dockerd` daemon. Refer to the -[environment variables](#environment-variables) and [HTTP/HTTPS proxy](https://docs.docker.com/config/daemon/systemd/#httphttps-proxy) -sections for configuring proxy settings for the cli and daemon. - -> **Warning** -> -> Proxy settings may contain sensitive information (for example, if the proxy -> requires authentication). Environment variables are stored as plain text in -> the container's configuration, and as such can be inspected through the remote -> API or committed to an image when using `docker commit`. -{ .warning } - -### Default key-sequence to detach from containers - -Once attached to a container, users detach from it and leave it running using -the using `CTRL-p CTRL-q` key sequence. This detach key sequence is customizable -using the `detachKeys` property. Specify a `` value for the -property. The format of the `` is a comma-separated list of either -a letter [a-Z], or the `ctrl-` combined with any of the following: - -* `a-z` (a single lowercase alpha character ) -* `@` (at sign) -* `[` (left bracket) -* `\\` (two backward slashes) -* `_` (underscore) -* `^` (caret) - -Your customization applies to all containers started in with your Docker client. -Users can override your custom or the default key sequence on a per-container -basis. To do this, the user specifies the `--detach-keys` flag with the `docker -attach`, `docker exec`, `docker run` or `docker start` command. - -### CLI plugin options - -The property `plugins` contains settings specific to CLI plugins. The -key is the plugin name, while the value is a further map of options, -which are specific to that plugin. - -### Sample configuration file - -Following is a sample `config.json` file to illustrate the format used for -various fields: - -```json -{ - "HttpHeaders": { - "MyHeader": "MyValue" - }, - "psFormat": "table {{.ID}}\\t{{.Image}}\\t{{.Command}}\\t{{.Labels}}", - "imagesFormat": "table {{.ID}}\\t{{.Repository}}\\t{{.Tag}}\\t{{.CreatedAt}}", - "pluginsFormat": "table {{.ID}}\t{{.Name}}\t{{.Enabled}}", - "statsFormat": "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}", - "servicesFormat": "table {{.ID}}\t{{.Name}}\t{{.Mode}}", - "secretFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", - "configFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", - "serviceInspectFormat": "pretty", - "nodesFormat": "table {{.ID}}\t{{.Hostname}}\t{{.Availability}}", - "detachKeys": "ctrl-e,e", - "credsStore": "secretservice", - "credHelpers": { - "awesomereg.example.org": "hip-star", - "unicorn.example.com": "vcbait" - }, - "plugins": { - "plugin1": { - "option": "value" - }, - "plugin2": { - "anotheroption": "anothervalue", - "athirdoption": "athirdvalue" - } - }, - "proxies": { - "default": { - "httpProxy": "http://user:pass@example.com:3128", - "httpsProxy": "https://my-proxy.example.com:3129", - "noProxy": "intra.mycorp.example.com", - "ftpProxy": "http://user:pass@example.com:3128", - "allProxy": "socks://example.com:1234" - }, - "https://manager1.mycorp.example.com:2377": { - "httpProxy": "http://user:pass@example.com:3128", - "httpsProxy": "https://my-proxy.example.com:3129" - } - } -} -``` - -### Experimental features - -Experimental features provide early access to future product functionality. -These features are intended for testing and feedback, and they may change -between releases without warning or can be removed from a future release. - -Starting with Docker 20.10, experimental CLI features are enabled by default, -and require no configuration to enable them. - -### Notary - -If using your own notary server and a self-signed certificate or an internal -Certificate Authority, you need to place the certificate at -`tls//ca.crt` in your Docker config directory. - -Alternatively you can trust the certificate globally by adding it to your system's -list of root Certificate Authorities. - -## Examples - -### Specify daemon host (-H, --host) - -You can use the `-H`, `--host` flag to specify a socket to use when you invoke -a `docker` command. You can use the following protocols: - -| Scheme | Description | Example | -|----------------------------------------|---------------------------|----------------------------------| -| `unix://[]` | Unix socket (Linux only) | `unix:///var/run/docker.sock` | -| `tcp://[[:port]]` | TCP connection | `tcp://174.17.0.1:2376` | -| `ssh://[username@][:port]` | SSH connection | `ssh://user@192.168.64.5` | -| `npipe://[]` | Named pipe (Windows only) | `npipe:////./pipe/docker_engine` | - -If you don't specify the `-H` flag, and you're not using a custom -[context](https://docs.docker.com/engine/context/working-with-contexts), -commands use the following default sockets: - -- `unix:///var/run/docker.sock` on macOS and Linux -- `npipe:////./pipe/docker_engine` on Windows - -To achieve a similar effect without having to specify the `-H` flag for every -command, you could also [create a context](https://docs.docker.com/reference/cli/docker/context/create/), -or alternatively, use the -[`DOCKER_HOST` environment variable](#environment-variables). - -For more information about the `-H` flag, see -[Daemon socket option](https://docs.docker.com/reference/cli/dockerd/#daemon-socket-option). - -#### Using TCP sockets - -The following example shows how to invoke `docker ps` over TCP, to a remote -daemon with IP address `174.17.0.1`, listening on port `2376`: - -```console -$ docker -H tcp://174.17.0.1:2376 ps -``` - -> **Note** -> -> By convention, the Docker daemon uses port `2376` for secure TLS connections, -> and port `2375` for insecure, non-TLS connections. - -#### Using SSH sockets - -When you use SSH invoke a command on a remote daemon, the request gets forwarded -to the `/var/run/docker.sock` Unix socket on the SSH host. - -```console -$ docker -H ssh://user@192.168.64.5 ps -``` - -You can optionally specify the location of the socket by appending a path -component to the end of the SSH address. - -```console -$ docker -H ssh://user@192.168.64.5/var/run/docker.sock ps -``` - -### Display help text - -To list the help on any command just execute the command, followed by the -`--help` option. - -```console -$ docker run --help - -Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] - -Create and run a new container from an image - -Options: - --add-host value Add a custom host-to-IP mapping (host:ip) (default []) - -a, --attach value Attach to STDIN, STDOUT or STDERR (default []) -<...> -``` - -### Option types - -Single character command line options can be combined, so rather than -typing `docker run -i -t --name test busybox sh`, -you can write `docker run -it --name test busybox sh`. - -#### Boolean - -Boolean options take the form `-d=false`. The value you see in the help text is -the default value which is set if you do **not** specify that flag. If you -specify a Boolean flag without a value, this will set the flag to `true`, -irrespective of the default value. - -For example, running `docker run -d` will set the value to `true`, so your -container **will** run in "detached" mode, in the background. - -Options which default to `true` (e.g., `docker build --rm=true`) can only be -set to the non-default value by explicitly setting them to `false`: - -```console -$ docker build --rm=false . -``` - -#### Multi - -You can specify options like `-a=[]` multiple times in a single command line, -for example in these commands: - -```console -$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash - -$ docker run -a stdin -a stdout -a stderr ubuntu /bin/ls -``` - -Sometimes, multiple options can call for a more complex value string as for -`-v`: - -```console -$ docker run -v /host:/container example/mysql -``` - -> **Note** -> -> Do not use the `-t` and `-a stderr` options together due to -> limitations in the `pty` implementation. All `stderr` in `pty` mode -> simply goes to `stdout`. - -#### Strings and Integers - -Options like `--name=""` expect a string, and they -can only be specified once. Options like `-c=0` -expect an integer, and they can only be specified once. diff --git a/_vendor/github.com/docker/cli/docs/reference/dockerd.md b/_vendor/github.com/docker/cli/docs/reference/dockerd.md index f8bf348d54..8b472c67f1 100644 --- a/_vendor/github.com/docker/cli/docs/reference/dockerd.md +++ b/_vendor/github.com/docker/cli/docs/reference/dockerd.md @@ -133,16 +133,15 @@ to [the `daemon.json` file](#daemon-configuration-file). The following list of environment variables are supported by the `dockerd` daemon. Some of these environment variables are supported both by the Docker Daemon and -the `docker` CLI. Refer to [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) -in the CLI section to learn about environment variables supported by the -`docker` CLI. +the `docker` CLI. Refer to [Environment variables](https://docs.docker.com/reference/cli/docker/#environment-variables) +to learn about environment variables supported by the `docker` CLI. | Variable | Description | | :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DOCKER_CERT_PATH` | Location of your authentication keys. This variable is used both by the [`docker` CLI](https://docs.docker.com/engine/reference/commandline/cli/) and the `dockerd` daemon. | +| `DOCKER_CERT_PATH` | Location of your authentication keys. This variable is used both by the [`docker` CLI](https://docs.docker.com/reference/cli/docker/) and the `dockerd` daemon. | | `DOCKER_DRIVER` | The storage driver to use. | | `DOCKER_RAMDISK` | If set this disables `pivot_root`. | -| `DOCKER_TLS_VERIFY` | When set Docker uses TLS and verifies the remote. This variable is used both by the [`docker` CLI](https://docs.docker.com/engine/reference/commandline/cli/) and the `dockerd` daemon. | +| `DOCKER_TLS_VERIFY` | When set Docker uses TLS and verifies the remote. This variable is used both by the [`docker` CLI](https://docs.docker.com/reference/cli/docker/) and the `dockerd` daemon. | | `DOCKER_TMPDIR` | Location for temporary files created by the daemon. | | `HTTP_PROXY` | Proxy URL for HTTP requests unless overridden by NoProxy. See the [Go specification](https://pkg.go.dev/golang.org/x/net/http/httpproxy#Config) for details. | | `HTTPS_PROXY` | Proxy URL for HTTPS requests unless overridden by NoProxy. See the [Go specification](https://pkg.go.dev/golang.org/x/net/http/httpproxy#Config) for details. | @@ -170,7 +169,7 @@ in three ways: options. (Docker Engine version 23.0 or later). The command-line and configuration file options take precedence over environment -variables. Refer to [control and configure Docker with systemd](https://docs.docker.com/config/daemon/systemd/#httphttps-proxy) +variables. Refer to [control and configure Docker with systemd](https://docs.docker.com/engine/daemon/proxy/) to set these environment variables on a host using `systemd`. ### Daemon socket option @@ -333,7 +332,7 @@ drivers: `overlay2`, `fuse-overlayfs`, `btrfs`, and `zfs`. and is selected by default. Unless users have a strong reason to prefer another storage driver, `overlay2` should be used. -You can find out more about storage drivers and how to select one in [Select a storage driver](https://docs.docker.com/storage/storagedriver/select-storage-driver/). +You can find out more about storage drivers and how to select one in [Select a storage driver](https://docs.docker.com/engine/storage/drivers/select-storage-driver/). On Windows, the Docker daemon only supports the `windowsfilter` storage driver. @@ -425,7 +424,7 @@ installed outside of `PATH`, must be registered with the daemon, either via the configuration file or using the `--add-runtime` command line flag. For examples on how to use other container runtimes, see -[Alternative container runtimes](https://docs.docker.com/engine/alternative-runtimes/) +[Alternative container runtimes](https://docs.docker.com/engine/daemon/alternative-runtimes/) ##### Configure runtimes using `daemon.json` @@ -610,7 +609,7 @@ $ sudo dockerd --add-runtime = Defining runtime arguments via the command line is not supported. For an example configuration for a runc drop-in replacment, see -[Alternative container runtimes > youki](https://docs.docker.com/engine/alternative-runtimes/#youki) +[Alternative container runtimes > youki](https://docs.docker.com/engine/daemon/alternative-runtimes/#youki) ##### Configure the default container runtime @@ -784,7 +783,7 @@ Docker host's configuration: This only adds the proxy and authentication to the Docker daemon's requests. To use the proxy when building images and running containers, see -[Configure Docker to use a proxy server](https://docs.docker.com/network/proxy/) +[Configure Docker to use a proxy server](https://docs.docker.com/engine/cli/proxy/) ### Default `ulimit` settings @@ -953,7 +952,7 @@ to avoid collisions with other Prometheus exporters and services. If you are running a Prometheus server you can add this address to your scrape configs to have Prometheus collect metrics on Docker. For more information, see -[Collect Docker metrics with Prometheus](https://docs.docker.com/config/daemon/prometheus/). +[Collect Docker metrics with Prometheus](https://docs.docker.com/engine/daemon/prometheus/). #### Node generic resources @@ -1152,7 +1151,7 @@ The following is a full example of the allowed configuration options on Linux: > daemon startup as a flag. > On systems that use systemd to start the Docker daemon, `-H` is already set, so > you can't use the `hosts` key in `daemon.json` to add listening addresses. -> See [custom Docker daemon options](https://docs.docker.com/config/daemon/systemd/#custom-docker-daemon-options) +> See [custom Docker daemon options](https://docs.docker.com/engine/daemon/proxy/#systemd-unit-file) > for an example on how to configure the daemon using systemd drop-in files. ##### On Windows @@ -1235,7 +1234,7 @@ The list of feature options include: - `containerd-snapshotter`: when set to `true`, the daemon uses containerd snapshotters instead of the classic storage drivers for storing image and container data. For more information, see - [containerd storage](https://docs.docker.com/storage/containerd/). + [containerd storage](https://docs.docker.com/engine/storage/containerd/). - `windows-dns-proxy`: when set to `true`, the daemon's internal DNS resolver will forward requests to external servers. Without this, most applications running in the container will still be able to use secondary DNS servers @@ -1261,7 +1260,7 @@ The list of currently supported options that can be reconfigured is this: | ---------------------------------- | ----------------------------------------------------------------------------------------------------------- | | `debug` | Toggles debug mode of the daemon. | | `labels` | Replaces the daemon labels with a new set of labels. | -| `live-restore` | Toggles [live restore](https://docs.docker.com/config/containers/live-restore/). | +| `live-restore` | Toggles [live restore](https://docs.docker.com/engine/containers/live-restore/). | | `max-concurrent-downloads` | Configures the max concurrent downloads for each pull. | | `max-concurrent-uploads` | Configures the max concurrent uploads for each push. | | `max-download-attempts` | Configures the max download attempts for each pull. | @@ -1363,7 +1362,7 @@ using the `daemon.json` file. ``` This example uses the `bridge` network driver. Refer to the -[bridge network driver page](https://docs.docker.com/network/drivers/bridge/#options) +[bridge network driver page](https://docs.docker.com/engine/network/drivers/bridge/#options) for an overview of available driver options. After changing the configuration and restarting the daemon, new networks that diff --git a/_vendor/modules.txt b/_vendor/modules.txt index d7d90aa9a9..bea08f42fe 100644 --- a/_vendor/modules.txt +++ b/_vendor/modules.txt @@ -1,6 +1,6 @@ # github.com/moby/moby v27.0.3+incompatible # github.com/moby/buildkit v0.15.1 # github.com/docker/buildx v0.16.2 -# github.com/docker/cli v27.0.3+incompatible +# github.com/docker/cli v27.1.1+incompatible # github.com/docker/compose/v2 v2.29.1 # github.com/docker/scout-cli v1.13.0 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/environment-variables/envvars.md b/content/compose/environment-variables/envvars.md index f01ae8b8fe..b2bc90a9a1 100644 --- a/content/compose/environment-variables/envvars.md +++ b/content/compose/environment-variables/envvars.md @@ -6,7 +6,7 @@ aliases: - /compose/reference/envvars/ --- -Compose already comes with pre-defined environment variables. It also inherits common Docker CLI environment variables, such as `DOCKER_HOST` and `DOCKER_CONTEXT`. See [Docker CLI environment variable reference](/engine/reference/commandline/cli/#environment-variables) for details. +Compose already comes with pre-defined environment variables. It also inherits common Docker CLI environment variables, such as `DOCKER_HOST` and `DOCKER_CONTEXT`. See [Docker CLI environment variable reference](/reference/cli/docker/#environment-variables) for details. This page contains information on how you can set or change the following pre-defined environment variables if you need to: @@ -187,7 +187,7 @@ For more information, see [Migrate to Compose V2](../migrate.md). - `COMPOSE_API_VERSION` By default the API version is negotiated with the server. Use `DOCKER_API_VERSION`. - See the [Docker CLI environment variable reference](../../../engine/reference/commandline/cli/#environment-variables) page. + See the [Docker CLI environment variable reference](/reference/cli/docker/#environment-variables) page. - `COMPOSE_HTTP_TIMEOUT` - `COMPOSE_TLS_VERSION` - `COMPOSE_FORCE_WINDOWS_HOST` 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 91% rename from content/network/proxy.md rename to content/engine/cli/proxy.md index 6673e4f956..2619cae6b7 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 @@ -78,8 +80,8 @@ The following table describes the available configuration parameters. 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](/engine/reference/commandline/cli/#environment-variables) -and [configure the Docker daemon to use a proxy server](../config/daemon/proxy.md#httphttps-proxy) +Refer to the [environment variables](/reference/cli/docker/#environment-variables) +and [configure the Docker daemon to use a proxy server](/engine/daemon/proxy.md) 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..9630e860d2 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) > 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) > 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) > 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/engine/security/trust/deploying_notary.md b/content/engine/security/trust/deploying_notary.md index ec14211ede..29d496723c 100644 --- a/content/engine/security/trust/deploying_notary.md +++ b/content/engine/security/trust/deploying_notary.md @@ -22,7 +22,7 @@ The easiest way to deploy Notary Server is by using Docker Compose. To follow th 3. Make sure that your Docker or Notary client trusts Notary Server's certificate before you try to interact with the Notary server. -See the instructions for [Docker](../../../engine/reference/commandline/cli.md#notary) or +See the instructions for [Docker](/reference/cli/docker/#notary) or for [Notary](https://github.com/docker/notary#using-notary) depending on which one you are using. ## If you want to use Notary in production 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/content/reference/cli/docker/_index.md b/content/reference/cli/docker/_index.md index 1d84371c44..6978a66c95 100644 --- a/content/reference/cli/docker/_index.md +++ b/content/reference/cli/docker/_index.md @@ -14,6 +14,7 @@ aliases: - /engine/reference/commandline/registry_ls/ - /engine/reference/commandline/registry_rmi/ - /engine/reference/commandline/docker/ +- /engine/reference/commandline/cli/ layout: cli --- diff --git a/data/engine-cli/docker.yaml b/data/engine-cli/docker.yaml index b108b21b3c..4f2c69e592 100644 --- a/data/engine-cli/docker.yaml +++ b/data/engine-cli/docker.yaml @@ -1,6 +1,345 @@ command: docker short: The base command for the Docker CLI. -long: The base command for the Docker CLI. +long: |- + Depending on your Docker system configuration, you may be required to preface + each `docker` command with `sudo`. To avoid having to use `sudo` with the + `docker` command, your system administrator can create a Unix group called + `docker` and add users to it. + + For more information about installing Docker or `sudo` configuration, refer to + the [installation](/install/) instructions for your operating system. + + ### Display help text + + To list the help on any command just execute the command, followed by the + `--help` option. + + ```console + $ docker run --help + + Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] + + Create and run a new container from an image + + Options: + --add-host value Add a custom host-to-IP mapping (host:ip) (default []) + -a, --attach value Attach to STDIN, STDOUT or STDERR (default []) + <...> + ``` + + ### Environment variables + + The following list of environment variables are supported by the `docker` command + line: + + | Variable | Description | + | :---------------------------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| + | `DOCKER_API_VERSION` | Override the negotiated API version to use for debugging (e.g. `1.19`) | + | `DOCKER_CERT_PATH` | Location of your authentication keys. This variable is used both by the `docker` CLI and the [`dockerd` daemon](/reference/cli/dockerd/) | + | `DOCKER_CONFIG` | The location of your client configuration files. | + | `DOCKER_CONTENT_TRUST_SERVER` | The URL of the Notary server to use. Defaults to the same URL as the registry. | + | `DOCKER_CONTENT_TRUST` | When set Docker uses notary to sign and verify images. Equates to `--disable-content-trust=false` for build, create, pull, push, run. | + | `DOCKER_CONTEXT` | Name of the `docker context` to use (overrides `DOCKER_HOST` env var and default context set with `docker context use`) | + | `DOCKER_CUSTOM_HEADERS` | (Experimental) Configure [custom HTTP headers](#custom-http-headers) to be sent by the client. Headers must be provided as a comma-separated list of `name=value` pairs. This is the equivalent to the `HttpHeaders` field in the configuration file. | + | `DOCKER_DEFAULT_PLATFORM` | Default platform for commands that take the `--platform` flag. | + | `DOCKER_HIDE_LEGACY_COMMANDS` | When set, Docker hides "legacy" top-level commands (such as `docker rm`, and `docker pull`) in `docker help` output, and only `Management commands` per object-type (e.g., `docker container`) are printed. This may become the default in a future release. | + | `DOCKER_HOST` | Daemon socket to connect to. | + | `DOCKER_TLS` | Enable TLS for connections made by the `docker` CLI (equivalent of the `--tls` command-line option). Set to a non-empty value to enable TLS. Note that TLS is enabled automatically if any of the other TLS options are set. | + | `DOCKER_TLS_VERIFY` | When set Docker uses TLS and verifies the remote. This variable is used both by the `docker` CLI and the [`dockerd` daemon](/reference/cli/dockerd/) | + | `BUILDKIT_PROGRESS` | Set type of progress output (`auto`, `plain`, `tty`, `rawjson`) when [building](/reference/cli/docker/image/build/) with [BuildKit backend](/build/buildkit/). Use plain to show container output (default `auto`). | + + Because Docker is developed using Go, you can also use any environment + variables used by the Go runtime. In particular, you may find these useful: + + | Variable | Description | + |:--------------|:-------------------------------------------------------------------------------| + | `HTTP_PROXY` | Proxy URL for HTTP requests unless overridden by NoProxy. | + | `HTTPS_PROXY` | Proxy URL for HTTPS requests unless overridden by NoProxy. | + | `NO_PROXY` | Comma-separated values specifying hosts that should be excluded from proxying. | + + See the [Go specification](https://pkg.go.dev/golang.org/x/net/http/httpproxy#Config) + for details on these variables. + + ### Option types + + Single character command line options can be combined, so rather than + typing `docker run -i -t --name test busybox sh`, + you can write `docker run -it --name test busybox sh`. + + #### Boolean + + Boolean options take the form `-d=false`. The value you see in the help text is + the default value which is set if you do **not** specify that flag. If you + specify a Boolean flag without a value, this will set the flag to `true`, + irrespective of the default value. + + For example, running `docker run -d` will set the value to `true`, so your + container **will** run in "detached" mode, in the background. + + Options which default to `true` (e.g., `docker build --rm=true`) can only be + set to the non-default value by explicitly setting them to `false`: + + ```console + $ docker build --rm=false . + ``` + + #### Multi + + You can specify options like `-a=[]` multiple times in a single command line, + for example in these commands: + + ```console + $ docker run -a stdin -a stdout -i -t ubuntu /bin/bash + + $ docker run -a stdin -a stdout -a stderr ubuntu /bin/ls + ``` + + Sometimes, multiple options can call for a more complex value string as for + `-v`: + + ```console + $ docker run -v /host:/container example/mysql + ``` + + > **Note** + > + > Do not use the `-t` and `-a stderr` options together due to + > limitations in the `pty` implementation. All `stderr` in `pty` mode + > simply goes to `stdout`. + + #### Strings and Integers + + Options like `--name=""` expect a string, and they + can only be specified once. Options like `-c=0` + expect an integer, and they can only be specified once. + + ### Configuration files + + By default, the Docker command line stores its configuration files in a + directory called `.docker` within your `$HOME` directory. + + Docker manages most of the files in the configuration directory + and you shouldn't modify them. However, you can modify the + `config.json` file to control certain aspects of how the `docker` + command behaves. + + You can modify the `docker` command behavior using environment + variables or command-line options. You can also use options within + `config.json` to modify some of the same behavior. If an environment variable + and the `--config` flag are set, the flag takes precedent over the environment + variable. Command line options override environment variables and environment + variables override properties you specify in a `config.json` file. + + #### Change the `.docker` directory + + To specify a different directory, use the `DOCKER_CONFIG` + environment variable or the `--config` command line option. If both are + specified, then the `--config` option overrides the `DOCKER_CONFIG` environment + variable. The example below overrides the `docker ps` command using a + `config.json` file located in the `~/testconfigs/` directory. + + ```console + $ docker --config ~/testconfigs/ ps + ``` + + This flag only applies to whatever command is being ran. For persistent + configuration, you can set the `DOCKER_CONFIG` environment variable in your + shell (e.g. `~/.profile` or `~/.bashrc`). The example below sets the new + directory to be `HOME/newdir/.docker`. + + ```console + $ echo export DOCKER_CONFIG=$HOME/newdir/.docker > ~/.profile + ``` + + ### Docker CLI configuration file (`config.json`) properties + + + + Use the Docker CLI configuration to customize settings for the `docker` CLI. The + configuration file uses JSON formatting, and properties: + + By default, configuration file is stored in `~/.docker/config.json`. Refer to the + [change the `.docker` directory](#change-the-docker-directory) section to use a + different location. + + > **Warning** + > + > The configuration file and other files inside the `~/.docker` configuration + > directory may contain sensitive information, such as authentication information + > for proxies or, depending on your credential store, credentials for your image + > registries. Review your configuration file's content before sharing with others, + > and prevent committing the file to version control. + + #### Customize the default output format for commands + + These fields lets you customize the default output format for some commands + if no `--format` flag is provided. + + | Property | Description | + | :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + | `configFormat` | Custom default format for `docker config ls` output. See [`docker config ls`](/reference/cli/docker/config/ls/#format) for a list of supported formatting directives. | + | `imagesFormat` | Custom default format for `docker images` / `docker image ls` output. See [`docker images`](/reference/cli/docker/image/ls/#format) for a list of supported formatting directives. | + | `networksFormat` | Custom default format for `docker network ls` output. See [`docker network ls`](/reference/cli/docker/network/ls/#format) for a list of supported formatting directives. | + | `nodesFormat` | Custom default format for `docker node ls` output. See [`docker node ls`](/reference/cli/docker/node/ls/#format) for a list of supported formatting directives. | + | `pluginsFormat` | Custom default format for `docker plugin ls` output. See [`docker plugin ls`](/reference/cli/docker/plugin/ls/#format) for a list of supported formatting directives. | + | `psFormat` | Custom default format for `docker ps` / `docker container ps` output. See [`docker ps`](/reference/cli/docker/container/ls/#format) for a list of supported formatting directives. | + | `secretFormat` | Custom default format for `docker secret ls` output. See [`docker secret ls`](/reference/cli/docker/secret/ls/#format) for a list of supported formatting directives. | + | `serviceInspectFormat` | Custom default format for `docker service inspect` output. See [`docker service inspect`](/reference/cli/docker/service/inspect/#format) for a list of supported formatting directives. | + | `servicesFormat` | Custom default format for `docker service ls` output. See [`docker service ls`](/reference/cli/docker/service/ls/#format) for a list of supported formatting directives. | + | `statsFormat` | Custom default format for `docker stats` output. See [`docker stats`](/reference/cli/docker/container/stats/#format) for a list of supported formatting directives. | + | `tasksFormat` | Custom default format for `docker stack ps` output. See [`docker stack ps`](/reference/cli/docker/stack/ps/#format) for a list of supported formatting directives. | + | `volumesFormat` | Custom default format for `docker volume ls` output. See [`docker volume ls`](/reference/cli/docker/volume/ls/#format) for a list of supported formatting directives. | + + #### Custom HTTP headers + + The property `HttpHeaders` specifies a set of headers to include in all messages + sent from the Docker client to the daemon. Docker doesn't try to interpret or + understand these headers; it simply puts them into the messages. Docker does + not allow these headers to change any headers it sets for itself. + + Alternatively, use the `DOCKER_CUSTOM_HEADERS` [environment variable](#environment-variables), + which is available in v27.1 and higher. This environment-variable is experimental, + and its exact behavior may change. + + #### Credential store options + + The property `credsStore` specifies an external binary to serve as the default + credential store. When this property is set, `docker login` will attempt to + store credentials in the binary specified by `docker-credential-` which + is visible on `$PATH`. If this property isn't set, credentials are stored + in the `auths` property of the CLI configuration file. For more information, + see the [**Credential stores** section in the `docker login` documentation](/reference/cli/docker/login/#credential-stores) + + The property `credHelpers` specifies a set of credential helpers to use + preferentially over `credsStore` or `auths` when storing and retrieving + credentials for specific registries. If this property is set, the binary + `docker-credential-` will be used when storing or retrieving credentials + for a specific registry. For more information, see the + [**Credential helpers** section in the `docker login` documentation](/reference/cli/docker/login/#credential-helpers) + + #### Automatic proxy configuration for containers + + The property `proxies` specifies proxy environment variables to be automatically + set on containers, and set as `--build-arg` on containers used during `docker build`. + A `"default"` set of proxies can be configured, and will be used for any Docker + daemon that the client connects to, or a configuration per host (Docker daemon), + for example, `https://docker-daemon1.example.com`. The following properties can + be set for each environment: + + | Property | Description | + |:---------------|:--------------------------------------------------------------------------------------------------------| + | `httpProxy` | Default value of `HTTP_PROXY` and `http_proxy` for containers, and as `--build-arg` on `docker build` | + | `httpsProxy` | Default value of `HTTPS_PROXY` and `https_proxy` for containers, and as `--build-arg` on `docker build` | + | `ftpProxy` | Default value of `FTP_PROXY` and `ftp_proxy` for containers, and as `--build-arg` on `docker build` | + | `noProxy` | Default value of `NO_PROXY` and `no_proxy` for containers, and as `--build-arg` on `docker build` | + | `allProxy` | Default value of `ALL_PROXY` and `all_proxy` for containers, and as `--build-arg` on `docker build` | + + These settings are used to configure proxy settings for containers only, and not + used as proxy settings for the `docker` CLI or the `dockerd` daemon. Refer to the + [environment variables](#environment-variables) and [HTTP/HTTPS proxy](/engine/daemon/proxy/#httphttps-proxy) + sections for configuring proxy settings for the CLI and daemon. + + > **Warning** + > + > Proxy settings may contain sensitive information (for example, if the proxy + > requires authentication). Environment variables are stored as plain text in + > the container's configuration, and as such can be inspected through the remote + > API or committed to an image when using `docker commit`. + { .warning } + + #### Default key-sequence to detach from containers + + Once attached to a container, users detach from it and leave it running using + the using `CTRL-p CTRL-q` key sequence. This detach key sequence is customizable + using the `detachKeys` property. Specify a `` value for the + property. The format of the `` is a comma-separated list of either + a letter [a-Z], or the `ctrl-` combined with any of the following: + + * `a-z` (a single lowercase alpha character ) + * `@` (at sign) + * `[` (left bracket) + * `\\` (two backward slashes) + * `_` (underscore) + * `^` (caret) + + Your customization applies to all containers started in with your Docker client. + Users can override your custom or the default key sequence on a per-container + basis. To do this, the user specifies the `--detach-keys` flag with the `docker + attach`, `docker exec`, `docker run` or `docker start` command. + + #### CLI plugin options + + The property `plugins` contains settings specific to CLI plugins. The + key is the plugin name, while the value is a further map of options, + which are specific to that plugin. + + #### Sample configuration file + + Following is a sample `config.json` file to illustrate the format used for + various fields: + + ```json + { + "HttpHeaders": { + "MyHeader": "MyValue" + }, + "psFormat": "table {{.ID}}\\t{{.Image}}\\t{{.Command}}\\t{{.Labels}}", + "imagesFormat": "table {{.ID}}\\t{{.Repository}}\\t{{.Tag}}\\t{{.CreatedAt}}", + "pluginsFormat": "table {{.ID}}\t{{.Name}}\t{{.Enabled}}", + "statsFormat": "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}", + "servicesFormat": "table {{.ID}}\t{{.Name}}\t{{.Mode}}", + "secretFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", + "configFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", + "serviceInspectFormat": "pretty", + "nodesFormat": "table {{.ID}}\t{{.Hostname}}\t{{.Availability}}", + "detachKeys": "ctrl-e,e", + "credsStore": "secretservice", + "credHelpers": { + "awesomereg.example.org": "hip-star", + "unicorn.example.com": "vcbait" + }, + "plugins": { + "plugin1": { + "option": "value" + }, + "plugin2": { + "anotheroption": "anothervalue", + "athirdoption": "athirdvalue" + } + }, + "proxies": { + "default": { + "httpProxy": "http://user:pass@example.com:3128", + "httpsProxy": "https://my-proxy.example.com:3129", + "noProxy": "intra.mycorp.example.com", + "ftpProxy": "http://user:pass@example.com:3128", + "allProxy": "socks://example.com:1234" + }, + "https://manager1.mycorp.example.com:2377": { + "httpProxy": "http://user:pass@example.com:3128", + "httpsProxy": "https://my-proxy.example.com:3129" + } + } + } + ``` + + #### Experimental features + + Experimental features provide early access to future product functionality. + These features are intended for testing and feedback, and they may change + between releases without warning or can be removed from a future release. + + Starting with Docker 20.10, experimental CLI features are enabled by default, + and require no configuration to enable them. + + #### Notary + + If using your own notary server and a self-signed certificate or an internal + Certificate Authority, you need to place the certificate at + `tls//ca.crt` in your Docker config directory. + + Alternatively you can trust the certificate globally by adding it to your system's + list of root Certificate Authorities. cname: - docker attach - docker build @@ -164,6 +503,7 @@ options: shorthand: H value_type: list description: Daemon socket to connect to + details_url: '#host' deprecated: false hidden: false experimental: false @@ -231,6 +571,63 @@ options: experimentalcli: false kubernetes: false swarm: false +examples: |- + ### Specify daemon host (-H, --host) {#host} + + You can use the `-H`, `--host` flag to specify a socket to use when you invoke + a `docker` command. You can use the following protocols: + + | Scheme | Description | Example | + |----------------------------------------|---------------------------|----------------------------------| + | `unix://[]` | Unix socket (Linux only) | `unix:///var/run/docker.sock` | + | `tcp://[[:port]]` | TCP connection | `tcp://174.17.0.1:2376` | + | `ssh://[username@][:port]` | SSH connection | `ssh://user@192.168.64.5` | + | `npipe://[]` | Named pipe (Windows only) | `npipe:////./pipe/docker_engine` | + + If you don't specify the `-H` flag, and you're not using a custom + [context](/engine/context/working-with-contexts), + commands use the following default sockets: + + - `unix:///var/run/docker.sock` on macOS and Linux + - `npipe:////./pipe/docker_engine` on Windows + + To achieve a similar effect without having to specify the `-H` flag for every + command, you could also [create a context](/reference/cli/docker/context/create/), + or alternatively, use the + [`DOCKER_HOST` environment variable](#environment-variables). + + For more information about the `-H` flag, see + [Daemon socket option](/reference/cli/dockerd/#daemon-socket-option). + + #### Using TCP sockets + + The following example shows how to invoke `docker ps` over TCP, to a remote + daemon with IP address `174.17.0.1`, listening on port `2376`: + + ```console + $ docker -H tcp://174.17.0.1:2376 ps + ``` + + > **Note** + > + > By convention, the Docker daemon uses port `2376` for secure TLS connections, + > and port `2375` for insecure, non-TLS connections. + + #### Using SSH sockets + + When you use SSH invoke a command on a remote daemon, the request gets forwarded + to the `/var/run/docker.sock` Unix socket on the SSH host. + + ```console + $ docker -H ssh://user@192.168.64.5 ps + ``` + + You can optionally specify the location of the socket by appending a path + component to the end of the SSH address. + + ```console + $ docker -H ssh://user@192.168.64.5/var/run/docker.sock ps + ``` deprecated: false hidden: false experimental: false diff --git a/data/engine-cli/docker_container_attach.yaml b/data/engine-cli/docker_container_attach.yaml index 1b3d1ad29e..30dd9d7478 100644 --- a/data/engine-cli/docker_container_attach.yaml +++ b/data/engine-cli/docker_container_attach.yaml @@ -123,7 +123,7 @@ examples: |- Repeating the example above, but this time with the `-i` and `-t` options set; ```console - $ docker run -dit --name topdemo2 ubuntu:22.04 /usr/bin/top -b + $ docker run -dit --name topdemo2 alpine /usr/bin/top -b ``` Now, when attaching to the container, and pressing the `CTRL-p CTRL-q` ("read @@ -190,7 +190,7 @@ examples: |- These `a`, `ctrl-a`, `X`, or `ctrl-\\` values are all examples of valid key sequences. To configure a different configuration default key sequence for all - containers, see [**Configuration file** section](/engine/reference/commandline/cli/#configuration-files). + containers, see [**Configuration file** section](/reference/cli/docker/#configuration-files). deprecated: false hidden: false experimental: false diff --git a/data/engine-cli/docker_container_commit.yaml b/data/engine-cli/docker_container_commit.yaml index 64ca93e957..0f93971877 100644 --- a/data/engine-cli/docker_container_commit.yaml +++ b/data/engine-cli/docker_container_commit.yaml @@ -80,8 +80,8 @@ examples: |- $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - c3f279d17e0a ubuntu:22.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky - 197387f1b436 ubuntu:22.04 /bin/bash 7 days ago Up 25 hours focused_hamilton + c3f279d17e0a ubuntu:24.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky + 197387f1b436 ubuntu:24.04 /bin/bash 7 days ago Up 25 hours focused_hamilton $ docker commit c3f279d17e0a svendowideit/testimage:version3 @@ -99,8 +99,8 @@ examples: |- $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - c3f279d17e0a ubuntu:22.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky - 197387f1b436 ubuntu:22.04 /bin/bash 7 days ago Up 25 hours focused_hamilton + c3f279d17e0a ubuntu:24.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky + 197387f1b436 ubuntu:24.04 /bin/bash 7 days ago Up 25 hours focused_hamilton $ docker inspect -f "{{ .Config.Env }}" c3f279d17e0a @@ -121,8 +121,8 @@ examples: |- $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - c3f279d17e0a ubuntu:22.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky - 197387f1b436 ubuntu:22.04 /bin/bash 7 days ago Up 25 hours focused_hamilton + c3f279d17e0a ubuntu:24.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky + 197387f1b436 ubuntu:24.04 /bin/bash 7 days ago Up 25 hours focused_hamilton $ docker commit --change='CMD ["apachectl", "-DFOREGROUND"]' -c "EXPOSE 80" c3f279d17e0a svendowideit/testimage:version4 @@ -136,8 +136,8 @@ examples: |- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 89373736e2e7 testimage:version4 "apachectl -DFOREGROU" 3 seconds ago Up 2 seconds 80/tcp distracted_fermat - c3f279d17e0a ubuntu:22.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky - 197387f1b436 ubuntu:22.04 /bin/bash 7 days ago Up 25 hours focused_hamilton + c3f279d17e0a ubuntu:24.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky + 197387f1b436 ubuntu:24.04 /bin/bash 7 days ago Up 25 hours focused_hamilton ``` deprecated: false hidden: false diff --git a/data/engine-cli/docker_container_export.yaml b/data/engine-cli/docker_container_export.yaml index 4df94c7dfc..b83b91bbf0 100644 --- a/data/engine-cli/docker_container_export.yaml +++ b/data/engine-cli/docker_container_export.yaml @@ -7,7 +7,7 @@ long: |- the container, `docker export` exports the contents of the underlying directory, not the contents of the volume. - Refer to [Backup, restore, or migrate data volumes](/storage/volumes/#back-up-restore-or-migrate-data-volumes) + Refer to [Backup, restore, or migrate data volumes](/engine/storage/volumes/#back-up-restore-or-migrate-data-volumes) in the user guide for examples on exporting data in a volume. usage: docker container export [OPTIONS] CONTAINER pname: docker container diff --git a/data/engine-cli/docker_container_logs.yaml b/data/engine-cli/docker_container_logs.yaml index 380c50c4c5..a920e72519 100644 --- a/data/engine-cli/docker_container_logs.yaml +++ b/data/engine-cli/docker_container_logs.yaml @@ -5,7 +5,7 @@ long: |- The `docker logs` command batch-retrieves logs present at the time of execution. For more information about selecting and configuring logging drivers, refer to - [Configure logging drivers](/config/containers/logging/configure/). + [Configure logging drivers](/engine/logging/configure/). The `docker logs --follow` command will continue streaming the new output from the container's `STDOUT` and `STDERR`. diff --git a/data/engine-cli/docker_container_ls.yaml b/data/engine-cli/docker_container_ls.yaml index 6505ea2326..e61f3fd395 100644 --- a/data/engine-cli/docker_container_ls.yaml +++ b/data/engine-cli/docker_container_ls.yaml @@ -121,7 +121,7 @@ examples: |- $ docker ps --no-trunc CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - ca5534a51dd04bbcebe9b23ba05f389466cf0c190f1f8f182d7eea92a9671d00 ubuntu:22.04 bash 17 seconds ago Up 16 seconds 3300-3310/tcp webapp + ca5534a51dd04bbcebe9b23ba05f389466cf0c190f1f8f182d7eea92a9671d00 ubuntu:24.04 bash 17 seconds ago Up 16 seconds 3300-3310/tcp webapp 9ca9747b233100676a48cc7806131586213fa5dab86dd1972d6a8732e3a84a4d crosbymichael/redis:latest /redis-server --dir 33 minutes ago Up 33 minutes 6379/tcp redis,webapp/db ``` @@ -152,7 +152,7 @@ examples: |- * The "size" information shows the amount of data (on disk) that is used for the _writable_ layer of each container * The "virtual size" is the total amount of disk-space used for the read-only _image_ data used by the container and the writable layer. - For more information, refer to the [container size on disk](/storage/storagedriver/#container-size-on-disk) section. + For more information, refer to the [container size on disk](/engine/storage/drivers/#container-size-on-disk) section. ### Filtering (--filter) {#filter} @@ -328,13 +328,13 @@ examples: |- 919e1179bdb8 ubuntu-c1 "top" About a minute ago Up About a minute admiring_lovelace ``` - Match containers based on the `ubuntu` version `22.04` image: + Match containers based on the `ubuntu` version `24.04` image: ```console - $ docker ps --filter ancestor=ubuntu:22.04 + $ docker ps --filter ancestor=ubuntu:24.04 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - 82a598284012 ubuntu:22.04 "top" 3 minutes ago Up 3 minutes sleepy_bose + 82a598284012 ubuntu:24.04 "top" 3 minutes ago Up 3 minutes sleepy_bose ``` The following matches containers based on the layer `d0e008c6cf02` or an image @@ -344,7 +344,7 @@ examples: |- $ docker ps --filter ancestor=d0e008c6cf02 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - 82a598284012 ubuntu:22.04 "top" 3 minutes ago Up 3 minutes sleepy_bose + 82a598284012 ubuntu:24.04 "top" 3 minutes ago Up 3 minutes sleepy_bose ``` #### Create time diff --git a/data/engine-cli/docker_container_run.yaml b/data/engine-cli/docker_container_run.yaml index e12ddb4aac..425869c9b8 100644 --- a/data/engine-cli/docker_container_run.yaml +++ b/data/engine-cli/docker_container_run.yaml @@ -1332,7 +1332,7 @@ examples: |- > for example by adding individual kernel capabilities with `--cap-add`. > > For more information, see - > [Runtime privilege and Linux capabilities](/engine/reference/run/#runtime-privilege-and-linux-capabilities) + > [Runtime privilege and Linux capabilities](/engine/containers/run/#runtime-privilege-and-linux-capabilities) { .warning } The following example doesn't work, because by default, Docker drops most @@ -1838,7 +1838,7 @@ examples: |- These `a`, `ctrl-a`, `X`, or `ctrl-\\` values are all examples of valid key sequences. To configure a different configuration default key sequence for all - containers, see [**Configuration file** section](/engine/reference/commandline/cli/#configuration-files). + containers, see [**Configuration file** section](/reference/cli/docker/#configuration-files). ### Add host device to container (--device) {#device} @@ -2291,7 +2291,7 @@ examples: |- container's logging driver. To learn about the supported logging drivers and how to use them, refer to - [Configure logging drivers](/config/containers/logging/configure/). + [Configure logging drivers](/engine/logging/configure/). To disable logging for a container, set the `--log-driver` flag to `none`: diff --git a/data/engine-cli/docker_image_pull.yaml b/data/engine-cli/docker_image_pull.yaml index 90893a49b7..e6642ce13c 100644 --- a/data/engine-cli/docker_image_pull.yaml +++ b/data/engine-cli/docker_image_pull.yaml @@ -136,7 +136,7 @@ examples: |- their layers are stored only once and do not consume extra disk space. For more information about images, layers, and the content-addressable store, - refer to [understand images, containers, and storage drivers](/storage/storagedriver/). + refer to [understand images, containers, and storage drivers](/engine/storage/drivers/). ### Pull an image by digest (immutable identifier) @@ -144,8 +144,8 @@ examples: |- So far, you've pulled images by their name (and "tag"). Using names and tags is a convenient way to work with images. When using tags, you can `docker pull` an image again to make sure you have the most up-to-date version of that image. - For example, `docker pull ubuntu:22.04` pulls the latest version of the Ubuntu - 22.04 image. + For example, `docker pull ubuntu:24.04` pulls the latest version of the Ubuntu + 24.04 image. In some cases you don't want images to be updated to newer versions, but prefer to use a fixed version of an image. Docker enables you to pull an image by its @@ -154,23 +154,23 @@ examples: |- and guarantee that the image you're using is always the same. To know the digest of an image, pull the image first. Let's pull the latest - `ubuntu:22.04` image from Docker Hub: + `ubuntu:24.04` image from Docker Hub: ```console - $ docker pull ubuntu:22.04 + $ docker pull ubuntu:24.04 - 22.04: Pulling from library/ubuntu + 24.04: Pulling from library/ubuntu 125a6e411906: Pull complete - Digest: sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d - Status: Downloaded newer image for ubuntu:22.04 - docker.io/library/ubuntu:22.04 + Digest: sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 + Status: Downloaded newer image for ubuntu:24.04 + docker.io/library/ubuntu:24.04 ``` Docker prints the digest of the image after the pull has finished. In the example above, the digest of the image is: ```console - sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d + sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 ``` Docker also prints the digest of an image when pushing to a registry. This @@ -180,18 +180,18 @@ examples: |- pull the above image by digest, run the following command: ```console - $ docker pull ubuntu@sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d + $ docker pull ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 - docker.io/library/ubuntu@sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d: Pulling from library/ubuntu - Digest: sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d - Status: Image is up to date for ubuntu@sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d - docker.io/library/ubuntu@sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d + docker.io/library/ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30: Pulling from library/ubuntu + Digest: sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 + Status: Image is up to date for ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 + docker.io/library/ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 ``` Digest can also be used in the `FROM` of a Dockerfile, for example: ```dockerfile - FROM ubuntu@sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d + FROM ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 LABEL org.opencontainers.image.authors="some maintainer " ``` @@ -252,13 +252,11 @@ examples: |- ```console $ docker image ls --filter reference=ubuntu REPOSITORY TAG IMAGE ID CREATED SIZE - ubuntu 18.04 c6ad7e71ba7d 5 weeks ago 63.2MB - ubuntu bionic c6ad7e71ba7d 5 weeks ago 63.2MB - ubuntu 22.04 5ccefbfc0416 2 months ago 78MB - ubuntu focal ff0fea8310f3 2 months ago 72.8MB - ubuntu latest ff0fea8310f3 2 months ago 72.8MB - ubuntu jammy 41ba606c8ab9 3 months ago 79MB - ubuntu 20.04 ba6acccedd29 7 months ago 72.8MB + ubuntu 22.04 8a3cdc4d1ad3 3 weeks ago 77.9MB + ubuntu jammy 8a3cdc4d1ad3 3 weeks ago 77.9MB + ubuntu 24.04 35a88802559d 6 weeks ago 78.1MB + ubuntu latest 35a88802559d 6 weeks ago 78.1MB + ubuntu noble 35a88802559d 6 weeks ago 78.1MB ``` ### Cancel a pull diff --git a/data/engine-cli/docker_image_push.yaml b/data/engine-cli/docker_image_push.yaml index 2d4fae01c5..89777eeded 100644 --- a/data/engine-cli/docker_image_push.yaml +++ b/data/engine-cli/docker_image_push.yaml @@ -53,6 +53,7 @@ options: value_type: string description: |- Push a platform-specific manifest as a single-platform image to the registry. + Image index won't be pushed, meaning that other manifests, including attestations won't be preserved. 'os[/arch[/variant]]': Explicit platform (eg. linux/amd64) deprecated: false hidden: false diff --git a/data/engine-cli/docker_push.yaml b/data/engine-cli/docker_push.yaml index 912911f6b5..dcd3095f86 100644 --- a/data/engine-cli/docker_push.yaml +++ b/data/engine-cli/docker_push.yaml @@ -31,6 +31,7 @@ options: value_type: string description: |- Push a platform-specific manifest as a single-platform image to the registry. + Image index won't be pushed, meaning that other manifests, including attestations won't be preserved. 'os[/arch[/variant]]': Explicit platform (eg. linux/amd64) deprecated: false hidden: false diff --git a/data/engine-cli/docker_service_create.yaml b/data/engine-cli/docker_service_create.yaml index 2c2b7d337e..c52b97ec41 100644 --- a/data/engine-cli/docker_service_create.yaml +++ b/data/engine-cli/docker_service_create.yaml @@ -412,6 +412,17 @@ options: experimentalcli: false kubernetes: false swarm: false + - option: oom-score-adj + value_type: int64 + default_value: "0" + description: Tune host's OOM preferences (-1000 to 1000) + deprecated: false + hidden: false + min_api_version: "1.46" + experimental: false + experimentalcli: false + kubernetes: false + swarm: false - option: placement-pref value_type: pref description: Add a placement preference @@ -1376,7 +1387,7 @@ examples: |- | `node.platform.os` | Node operating system | `node.platform.os==windows` | | `node.platform.arch` | Node architecture | `node.platform.arch==x86_64` | | `node.labels` | User-defined node labels | `node.labels.security==high` | - | `engine.labels` | Docker Engine's labels | `engine.labels.operatingsystem==ubuntu-22.04` | + | `engine.labels` | Docker Engine's labels | `engine.labels.operatingsystem==ubuntu-24.04` | `engine.labels` apply to Docker Engine labels like operating system, drivers, etc. Swarm administrators add `node.labels` for operational purposes by using @@ -1618,7 +1629,7 @@ examples: |- The swarm extends my-network to each node running the service. Containers on the same network can access each other using - [service discovery](/network/drivers/overlay/#container-discovery). + [service discovery](/engine/network/drivers/overlay/#container-discovery). Long form syntax of `--network` allows to specify list of aliases and driver options: `--network name=my-network,alias=web1,driver-opt=field1=value1` diff --git a/data/engine-cli/docker_service_logs.yaml b/data/engine-cli/docker_service_logs.yaml index 3a4a703f10..b02b03099f 100644 --- a/data/engine-cli/docker_service_logs.yaml +++ b/data/engine-cli/docker_service_logs.yaml @@ -21,7 +21,7 @@ long: |- > the `json-file` or `journald` logging driver. For more information about selecting and configuring logging drivers, refer to - [Configure logging drivers](/config/containers/logging/configure/). + [Configure logging drivers](/engine/logging/configure/). The `docker service logs --follow` command will continue streaming the new output from the service's `STDOUT` and `STDERR`. diff --git a/data/engine-cli/docker_service_update.yaml b/data/engine-cli/docker_service_update.yaml index ea37a21a34..6f606db6ed 100644 --- a/data/engine-cli/docker_service_update.yaml +++ b/data/engine-cli/docker_service_update.yaml @@ -538,6 +538,17 @@ options: experimentalcli: false kubernetes: false swarm: false + - option: oom-score-adj + value_type: int64 + default_value: "0" + description: Tune host's OOM preferences (-1000 to 1000) + deprecated: false + hidden: false + min_api_version: "1.46" + experimental: false + experimentalcli: false + kubernetes: false + swarm: false - option: placement-pref-add value_type: pref description: Add a placement preference diff --git a/data/engine-cli/docker_system_events.yaml b/data/engine-cli/docker_system_events.yaml index fb8c743c43..0419933544 100644 --- a/data/engine-cli/docker_system_events.yaml +++ b/data/engine-cli/docker_system_events.yaml @@ -374,10 +374,10 @@ examples: |- $ docker events --filter 'container=container_1' --filter 'container=container_2' - 2014-09-03T15:49:29.999999999Z07:00 container die 4386fb97867d (image=ubuntu:22.04) - 2014-05-10T17:42:14.999999999Z07:00 container stop 4386fb97867d (image=ubuntu:22.04) - 2014-05-10T17:42:14.999999999Z07:00 container die 7805c1d35632 (imager=redis:2.8) - 2014-09-03T15:49:29.999999999Z07:00 container stop 7805c1d35632 (image=redis:2.8) + 2014-09-03T15:49:29.999999999Z07:00 container die 4386fb97867d (image=ubuntu:24.04) + 2014-05-10T17:42:14.999999999Z07:00 container stop 4386fb97867d (image=ubuntu:24.04) + 2014-05-10T17:42:14.999999999Z07:00 container die 7805c1d35632 (imager=redis:7.2) + 2014-09-03T15:49:29.999999999Z07:00 container stop 7805c1d35632 (image=redis:7.2) $ docker events --filter 'type=volume' 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 26aa8bc2fa..4066a1f80e 100644 --- a/data/toc.yaml +++ b/data/toc.yaml @@ -1574,180 +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: /engine/reference/commandline/cli/ - title: Use the Docker CLI - - 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/go.mod b/go.mod index d3a0a54da1..c4098cbc14 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ toolchain go1.22.5 require ( github.com/docker/buildx v0.16.2 // indirect - github.com/docker/cli v27.0.3+incompatible // indirect + github.com/docker/cli v27.1.1+incompatible // indirect github.com/docker/compose/v2 v2.29.1 // indirect github.com/docker/scout-cli v1.13.0 // indirect github.com/moby/buildkit v0.15.1 // indirect @@ -15,7 +15,7 @@ require ( replace ( github.com/docker/buildx => github.com/docker/buildx v0.16.2 - github.com/docker/cli => github.com/docker/cli v27.0.3+incompatible + github.com/docker/cli => github.com/docker/cli v27.1.1+incompatible github.com/docker/compose/v2 => github.com/docker/compose/v2 v2.29.0 github.com/docker/scout-cli => github.com/docker/scout-cli v1.13.0 github.com/moby/buildkit => github.com/moby/buildkit v0.15.1 diff --git a/go.sum b/go.sum index dafe4219ac..2995573d4d 100644 --- a/go.sum +++ b/go.sum @@ -114,6 +114,8 @@ github.com/docker/cli v27.0.1+incompatible h1:d/OrlblkOTkhJ1IaAGD1bLgUBtFQC/oP0V github.com/docker/cli v27.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/cli v27.0.3+incompatible h1:usGs0/BoBW8MWxGeEtqPMkzOY56jZ6kYlSN5BLDioCQ= github.com/docker/cli v27.0.3+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/cli v27.1.1+incompatible h1:goaZxOqs4QKxznZjjBWKONQci/MywhtRv2oNn0GkeZE= +github.com/docker/cli v27.1.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/compose-cli v1.0.35 h1:uZyEHLalfqBS2PiTpA1LAULyJmuQ+YtZg7nG4Xl3/Cc= github.com/docker/compose-cli v1.0.35/go.mod h1:mSXI4hFLpRU3EtI8NTo32bNwI0UXSr8jnq+/rYjGAUU= github.com/docker/compose/v2 v2.22.0 h1:3rRz4L7tPU75wRsV8JZh2/aTgerQvPa1cpzZN+tHqUY= diff --git a/hugo.yaml b/hugo.yaml index 98e65cdbc9..4c5f5ba422 100644 --- a/hugo.yaml +++ b/hugo.yaml @@ -282,9 +282,7 @@ module: - source: docs/deprecated.md target: content/engine/deprecated.md - source: docs/reference/run.md - target: content/engine/reference/run.md - - source: docs/reference/commandline/cli.md - target: content/engine/reference/commandline/cli.md + target: content/engine/containers/run.md - source: docs/reference/dockerd.md target: content/reference/cli/dockerd.md