小编nda*_*ess的帖子

如何将 Docker 容器日志转发到 ELK?

我想知道将我的 docker 容器日志转发到 ELK 服务器的最简单方法是什么,到目前为止,我在搜索互联网后尝试的解决方案根本不起作用。

基本上,我有一个使用 docker-compose 运行的 docker 映像,该容器不会在本地记录任何内容(它由不同的服务组成,但没有一个是 logstash 或其他任何服务),但我看到通过docker logs -tf imageNamedocker-compose logs. 由于我使用 compose 启动容器,因此我无法使用(或至少我不知道如何使用)--logs-driverdocker 选项。

因此,我想知道是否有人可以启发我,例如如何将该日志转发到 ELK 容器。

提前致谢,

问候

解决方案

感谢 madeddie,我可以通过以下方式解决我的问题,提到我使用了 madeddie 在他的帖子中建议的基本 ELK-stack-in-containers。

首先,我更新了docker-compose.yml我的容器文件,以按照 madeddie 告诉我的那样为日志记录引用添加条目,我为每个服务添加了一个条目,我的 docker-compose 片段如下所示

   version: '2'
    services:
      mosquitto:
        image: ansi/mosquitto
        ports:
          - "1883:1883" # Public access to MQTT
          - "12202:12202"  #mapping logs
        logging: 
           driver: gelf
           options: 
             gelf-address: udp://localhost:12202
    redis:
     image: redis
     command: redis-server --appendonly yes
     ports:
       - "6379:6379" # …
Run Code Online (Sandbox Code Playgroud)

logging syslog docker elk docker-compose

8
推荐指数
1
解决办法
8198
查看次数

标签 统计

docker ×1

docker-compose ×1

elk ×1

logging ×1

syslog ×1