{
  "jsonSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "Docker collector configuration.",
    "type": "object",
    "properties": {
      "update_every": {
        "title": "Update every",
        "description": "Data collection interval, measured in seconds.",
        "type": "integer",
        "minimum": 1,
        "default": 1
      },
      "address": {
        "title": "Address",
        "description": "Docker daemon's Unix or TCP (listening address) socket.",
        "type": "string",
        "default": "unix:///var/run/docker.sock"
      },
      "timeout": {
        "title": "Timeout",
        "description": "Timeout for establishing a connection and communication (reading and writing) in seconds.",
        "type": "number",
        "default": 2
      },
      "container_selector": {
        "title": "Container Selector",
        "description": "[Pattern](https://github.com/netdata/netdata/tree/master/src/libnetdata/simple_pattern#readme) to specify which containers to monitor. Leave empty to collect metrics for all containers.",
        "type": "string",
        "default": "*"
      },
      "collect_container_size": {
        "title": "Collect container size",
        "description": "Collect container writable layer size.",
        "type": "boolean",
        "default": false
      },
      "vnode": {
        "title": "Vnode",
        "description": "Associates this data collection job with a [Virtual Node](https://learn.netdata.cloud/docs/netdata-agent/configuration/organize-systems-metrics-and-alerts#virtual-nodes).",
        "type": "string"
      }
    },
    "required": [
      "address"
    ],
    "patternProperties": {
      "^name$": {}
    }
  },
  "uiSchema": {
    "uiOptions": {
      "fullPage": true
    },
    "vnode": {
      "ui:placeholder": "To use this option, first create a Virtual Node and then reference its name here."
    },
    "address": {
      "ui:help": "Use `unix://{path_to_socket}` for Unix socket or `tcp://{ip}:{port}` for TCP socket."
    },
    "timeout": {
      "ui:help": "Accepts decimals for precise control (e.g., type 1.5 for 1.5 seconds)."
    }
  }
}
