Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将/var/lib/docker装载为macOS上FileBeat的卷_Docker_Filebeat - Fatal编程技术网

将/var/lib/docker装载为macOS上FileBeat的卷

将/var/lib/docker装载为macOS上FileBeat的卷,docker,filebeat,Docker,Filebeat,我正在尝试将/var/lib/docker装载为FileBeat的卷。我遵循了,但它似乎不起作用,因为Elasticsearch没有收到日志数据。 我正在使用macOS 11.2.3和Docker Desktop 3.3.0。我知道,/var/lib/docker在macOS上并不实际存在,但可以通过~/Library/Containers/com.docker.docker/Data/vms/0/tty访问。但是我怎样才能挂载这个目录呢 这是我的docker compose.yml: vers

我正在尝试将
/var/lib/docker
装载为FileBeat的卷。我遵循了,但它似乎不起作用,因为Elasticsearch没有收到日志数据。 我正在使用macOS 11.2.3和Docker Desktop 3.3.0。我知道,
/var/lib/docker
在macOS上并不实际存在,但可以通过
~/Library/Containers/com.docker.docker/Data/vms/0/tty
访问。但是我怎样才能挂载这个目录呢

这是我的
docker compose.yml

version: '3.7'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0
    environment:
      discovery.type: single-node
    volumes:
      - elasticsearch_data:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
      - 9300:9300
    networks:
      - default

  kibana:
    image: docker.elastic.co/kibana/kibana:7.12.0
    ports:
      - 5601:5601
    environment:
      ELASTICSEARCH_HOSTS: '["http://elasticsearch:9200"]'
    depends_on:
      - elasticsearch
    networks:
      - default

  filebeat:
    image: docker.elastic.co/beats/filebeat:7.12.0
    depends_on:
      - elasticsearch
      - kibana
    networks:
      - default
    volumes:
      - ./filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
      - /var/lib/docker:/var/lib/docker:ro
      - /var/run/docker.sock:/var/run/docker.sock
  


  

volumes:
  elasticsearch_data:
    driver: local
filebeat.inputs:
- type: container
  paths: 
    - '/var/lib/docker/containers/*/*.log'

processors:
- add_docker_metadata:
    host: "unix:///var/run/docker.sock"

- decode_json_fields:
    fields: ["message"]
    target: "json"
    overwrite_keys: true

output.elasticsearch:
  hosts: ["elasticsearch:9200"]
  indices:
    - index: "filebeat-%{[agent.version]}-%{+yyyy.MM}"

logging.json: true
logging.metrics.enabled: false
以及FileBeat
FileBeat.yml的配置文件:

version: '3.7'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0
    environment:
      discovery.type: single-node
    volumes:
      - elasticsearch_data:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
      - 9300:9300
    networks:
      - default

  kibana:
    image: docker.elastic.co/kibana/kibana:7.12.0
    ports:
      - 5601:5601
    environment:
      ELASTICSEARCH_HOSTS: '["http://elasticsearch:9200"]'
    depends_on:
      - elasticsearch
    networks:
      - default

  filebeat:
    image: docker.elastic.co/beats/filebeat:7.12.0
    depends_on:
      - elasticsearch
      - kibana
    networks:
      - default
    volumes:
      - ./filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
      - /var/lib/docker:/var/lib/docker:ro
      - /var/run/docker.sock:/var/run/docker.sock
  


  

volumes:
  elasticsearch_data:
    driver: local
filebeat.inputs:
- type: container
  paths: 
    - '/var/lib/docker/containers/*/*.log'

processors:
- add_docker_metadata:
    host: "unix:///var/run/docker.sock"

- decode_json_fields:
    fields: ["message"]
    target: "json"
    overwrite_keys: true

output.elasticsearch:
  hosts: ["elasticsearch:9200"]
  indices:
    - index: "filebeat-%{[agent.version]}-%{+yyyy.MM}"

logging.json: true
logging.metrics.enabled: false