Skip to content

Commit

Permalink
Merge pull request docker#19082 from dvdksn/dockerd-config-location
Browse files Browse the repository at this point in the history
dockerd config location
  • Loading branch information
thaJeztah authored Jan 11, 2024
2 parents 99a6f04 + 553f5b7 commit 9a55d59
Showing 1 changed file with 34 additions and 22 deletions.
56 changes: 34 additions & 22 deletions content/config/daemon/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,17 +48,31 @@ You can use both of these options together as long as you don't specify the same
option both as a flag and in the JSON file. If that happens, the Docker daemon
won't start and prints an error message.

To configure the Docker daemon using a JSON file, create a file at
`/etc/docker/daemon.json` on Linux systems, or
`C:\ProgramData\docker\config\daemon.json` on Windows.
### Configuration file

Using this configuration file, run the Docker daemon in debug mode, using TLS, and
listen for traffic routed to `192.168.59.3` on port `2376`. You can learn what
configuration options are available in the
The following table shows the location where the Docker daemon expects to find
the configuration file by default, depending on your system and how you're
running the daemon.

| OS and configuration | File location |
| -------------------- | ------------------------------------------ |
| Linux, regular setup | `/etc/docker/daemon.json` |
| Linux, rootless mode | `~/.config/docker/daemon.json` |
| Windows | `C:\ProgramData\docker\config\daemon.json` |

For rootless mode, the daemon respects the `XDG_CONFIG_HOME` variable. If set,
the expected file location is `$XDG_CONFIG_HOME/docker/daemon.json`.

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](../../engine/reference/commandline/dockerd.md#daemon-configuration-file)

You can also start the Docker daemon manually and configure it using flags. This
can be useful for troubleshooting problems.
### Configuration using flags

You can also start the Docker daemon manually and configure it using flags.
This can be useful for troubleshooting problems.

Here's an example of how to manually start the Docker daemon, using the same
configurations as shown in the previous JSON configuration:
Expand All @@ -71,27 +85,14 @@ $ dockerd --debug \
--host tcp://192.168.59.3:2376
```

You can learn what configuration options are available in the
Learn about the available configuration options in the
[dockerd reference docs](../../engine/reference/commandline/dockerd.md), or by
running:

```console
$ dockerd --help
```

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)

You can configure most daemon options using the `daemon.json` file. One thing
you can't configure using daemon.json mechanism is an HTTP proxy. For
instructions on using a proxy, see
[Configure Docker to use a proxy server](../../network/proxy.md).

## Daemon data directory

The Docker daemon persists all data in a single directory. This tracks
Expand All @@ -116,3 +117,14 @@ Since the state of a Docker daemon is kept on this directory, make sure you use
a dedicated directory for each daemon. If two daemons share the same directory,
for example, an NFS share, you are going to experience errors that are difficult
to troubleshoot.

## Next steps

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)
- [Configure the Docker daemon to use a proxy](./systemd.md#httphttps-proxy)

0 comments on commit 9a55d59

Please sign in to comment.