Merge pull request #7733 from thaJeztah/improve_log_opt_description

Add notes that log-opts in  daemon.json must be a string
This commit is contained in:
L-Hudson 2018-12-08 08:50:50 -05:00 committed by GitHub
commit 3ad2acdc18
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 36 additions and 10 deletions

View File

@ -18,7 +18,6 @@ unless you configure it to use a different logging driver.
In addition to using the logging drivers included with Docker, you can also In addition to using the logging drivers included with Docker, you can also
implement and use [logging driver plugins](/engine/admin/logging/plugins.md). implement and use [logging driver plugins](/engine/admin/logging/plugins.md).
Logging driver plugins are available in Docker 17.05 and higher.
## Configure the default logging driver ## Configure the default logging driver
@ -44,24 +43,29 @@ example sets two configurable options on the `json-file` logging driver:
{ {
"log-driver": "json-file", "log-driver": "json-file",
"log-opts": { "log-opts": {
"max-size": "10m",
"max-file": "3",
"labels": "production_status", "labels": "production_status",
"env": "os,customer" "env": "os,customer"
} }
} }
``` ```
> **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Boolean and numeric values (such as the value
> for `max-file` in the example above) must therefore be enclosed in quotes (`"`).
If you do not specify a logging driver, the default is `json-file`. Thus, If you do not specify a logging driver, the default is `json-file`. Thus,
the default output for commands such as `docker inspect <CONTAINER>` is JSON. the default output for commands such as `docker inspect <CONTAINER>` is JSON.
To find the current default logging driver for the Docker daemon, run To find the current default logging driver for the Docker daemon, run
`docker info` and search for `Logging Driver`. You can use the following `docker info` and search for `Logging Driver`. You can use the following
command on Linux, macOS, or PowerShell on Windows: command:
```bash ```bash
$ docker info | grep 'Logging Driver' $ docker info --format '{{.LoggingDriver}}'
Logging Driver: json-file json-file
``` ```
## Configure the logging driver for a container ## Configure the logging driver for a container

View File

@ -53,7 +53,12 @@ The following example sets the log driver to `fluentd` and sets the
} }
``` ```
Restart Docker for the changes to take effect. Restart Docker for the changes to take effect.
> **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Boolean and numeric values (such as the value
> for `fluentd-async-connect` or `fluentd-max-retries`) must therefore be enclosed
> in quotes (`"`).
To set the logging driver for a specific container, pass the To set the logging driver for a specific container, pass the
`--log-driver` option to `docker run`: `--log-driver` option to `docker run`:

View File

@ -60,6 +60,10 @@ To make the configuration permanent, you can configure it in `/etc/docker/daemon
} }
``` ```
> **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Boolean and numeric values (such as the value
> for `gelf-tcp-max-reconnect`) must therefore be enclosed in quotes (`"`).
You can set the logging driver for a specific container by setting the You can set the logging driver for a specific container by setting the
`--log-driver` flag when using `docker container create` or `docker run`: `--log-driver` flag when using `docker container create` or `docker run`:

View File

@ -23,17 +23,22 @@ configuring Docker using `daemon.json`, see
[daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file). [daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file).
The following example sets the log driver to `json-file` and sets the `max-size` The following example sets the log driver to `json-file` and sets the `max-size`
option. and `max-file` options.
```json ```json
{ {
"log-driver": "json-file", "log-driver": "json-file",
"log-opts": { "log-opts": {
"max-size": "10m" "max-size": "10m",
"max-file": "3"
} }
} }
``` ```
> **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Boolean and numeric values (such as the value
> for `max-file` in the example above) must therefore be enclosed in quotes (`"`).
Restart Docker for the changes to take effect for newly created containers. Existing containers do not use the new logging configuration. Restart Docker for the changes to take effect for newly created containers. Existing containers do not use the new logging configuration.
You can set the logging driver for a specific container by using the You can set the logging driver for a specific container by using the

View File

@ -36,6 +36,11 @@ The daemon.json file is located in `/etc/docker/` on Linux hosts or
configuring Docker using `daemon.json`, see configuring Docker using `daemon.json`, see
[daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file). [daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file).
> **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Boolean and numeric values (such as the value
> for `splunk-gzip` or `splunk-gzip-level`) must therefore be enclosed in quotes
> (`"`).
To use the `splunk` driver for a specific container, use the commandline flags To use the `splunk` driver for a specific container, use the commandline flags
`--log-driver` and `log-opt` with `docker run`: `--log-driver` and `log-opt` with `docker run`:

View File

@ -41,7 +41,8 @@ configuring Docker using `daemon.json`, see
[daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file). [daemon.json](/engine/reference/commandline/dockerd.md#daemon-configuration-file).
The following example sets the log driver to `syslog` and sets the The following example sets the log driver to `syslog` and sets the
`syslog-address` option. `syslog-address` option. The `syslog-address` options supports both UDP and TCP;
this example uses UDP.
```json ```json
{ {
@ -54,7 +55,9 @@ The following example sets the log driver to `syslog` and sets the
Restart Docker for the changes to take effect. Restart Docker for the changes to take effect.
> **Note**: The syslog-address supports both UDP and TCP. > **Note**: `log-opt` configuration options in the `daemon.json` configuration
> file must be provided as strings. Numeric and boolean values (such as the value
> for `syslog-tls-skip-verify`) must therefore be enclosed in quotes (`"`).
You can set the logging driver for a specific container by using the You can set the logging driver for a specific container by using the
`--log-driver` flag to `docker container create` or `docker run`: `--log-driver` flag to `docker container create` or `docker run`:
@ -75,7 +78,7 @@ starting the container.
| Option | Description | Example value | | Option | Description | Example value |
|:-------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |:-------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `syslog-address` | The address of an external `syslog` server. The URI specifier may be `[tcp | udp|tcp+tls]://host:port`, `unix://path`, or `unixgram://path`. If the transport is `tcp`, `udp`, or `tcp+tls`, the default port is `514`.| `--log-opt syslog-address=tcp+tls://192.168.1.3:514`, `--log-opt syslog-address=unix:///tmp/syslog.sock` | | `syslog-address` | The address of an external `syslog` server. The URI specifier may be `[tcp|udp|tcp+tls]://host:port`, `unix://path`, or `unixgram://path`. If the transport is `tcp`, `udp`, or `tcp+tls`, the default port is `514`. | `--log-opt syslog-address=tcp+tls://192.168.1.3:514`, `--log-opt syslog-address=unix:///tmp/syslog.sock` |
| `syslog-facility` | The `syslog` facility to use. Can be the number or name for any valid `syslog` facility. See the [syslog documentation](https://tools.ietf.org/html/rfc5424#section-6.2.1). | `--log-opt syslog-facility=daemon` | | `syslog-facility` | The `syslog` facility to use. Can be the number or name for any valid `syslog` facility. See the [syslog documentation](https://tools.ietf.org/html/rfc5424#section-6.2.1). | `--log-opt syslog-facility=daemon` |
| `syslog-tls-ca-cert` | The absolute path to the trust certificates signed by the CA. **Ignored if the address protocol is not `tcp+tls`.** | `--log-opt syslog-tls-ca-cert=/etc/ca-certificates/custom/ca.pem` | | `syslog-tls-ca-cert` | The absolute path to the trust certificates signed by the CA. **Ignored if the address protocol is not `tcp+tls`.** | `--log-opt syslog-tls-ca-cert=/etc/ca-certificates/custom/ca.pem` |
| `syslog-tls-cert` | The absolute path to the TLS certificate file. **Ignored if the address protocol is not `tcp+tls`**. | `--log-opt syslog-tls-cert=/etc/ca-certificates/custom/cert.pem` | | `syslog-tls-cert` | The absolute path to the TLS certificate file. **Ignored if the address protocol is not `tcp+tls`**. | `--log-opt syslog-tls-cert=/etc/ca-certificates/custom/cert.pem` |