使用docker compose搭建一個elk系統(tǒng)的方法
找了不少使用 docker-elk 搭建的博客, 英文的閱讀吃力不說, 鏡像源也是慢的讓人頭皮發(fā)麻, 因此重新編排了一個docker-compose,源都是從 https://hub.docker.com/ 上找的, 即使拉的國內(nèi)鏡像源應(yīng)該也能很好的支持了吧?
環(huán)境
- Docker 18.06.0-ce
- docker-compose 1.22.0
給每個容器最少分配 1G 的內(nèi)存
軟件版本
- logstash: 5.*
- elasticsearch: 5.*
- kibana: 5.*
啟動前的配置
在各個目錄下都有對應(yīng)的 config 配置, 根據(jù)各自的情況自行處理
拿默認的 logstash/confg/test.conf 中的配置舉例:
input { file { #這里的路徑指的是 logstash 容器中的路徑, 外部接入需要使用 volume 進行目錄映射 path => "/logs/input/*" } # 在 logstash 容器中的輸入 stdin {} # 因為做了本地5000端口和容器5000端口進行綁定, 所以可以用 nc 工具測試一下 # echo "Test Logstash TCP Input Plugin" | nc localhost 5000 tcp { type => "tcp" port => 5000 mode => "server" } } output { file { #這里的路徑指的是 logstash 容器中的路徑, 外部接入需要使用 volume 進行目錄映射 path => "/logs/output/%{+yyyy-MM-dd-HH}/%{host}.log" } stdout { codec => rubydebug } elasticsearch { hosts => "elasticsearch:9200" # 這里設(shè)置的 index 在 kibana 中會用到 index => "file-log-%{+YYYY.MM}" } }
啟動容器
執(zhí)行
git clone https://github.com/gaopengfei123123/docker-elk.git && cd docker-elk docker-compose up -d --build
等一會看到執(zhí)行成功的提示
Creating docker-elk_elasticsearch_1 ... done Creating docker-elk_logstash_1 ... done Creating docker-elk_kibana_1 ... done
在本地瀏覽器輸入 http://localhost:5601/
進入 kibana 界面
注意, 第一次啟動時有可能會出現(xiàn)提示 elasticsearch not found
這類的問題, 可以先等個一兩分鐘刷新一下就好了, 如果還是不行就谷歌或者提 issue 解決一下
同目錄下輸入
docker-compose stop
則停止所有服務(wù)
測試一下
在 logs/input/
目錄下新增個 test.log 文件, 然后輸入點東西驗證一下, 或者命令行執(zhí)行echo "Test Logstash TCP Input Plugin" | nc localhost 5000
通過 tcp 發(fā)送日志
docker-compose logs -f
查看各容器日志輸出
TODO
- 引入 kafka 做緩沖
- 搭建 es 集群
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解ASP.NET Core 網(wǎng)站在Docker中運行
本篇文章主要介紹了詳解ASP.NET Core 網(wǎng)站在Docker中運行,非常具有實用價值,需要的朋友可以參考下2017-05-05Docker搭建并啟動Logstash的實現(xiàn)方式
這篇文章主要介紹了Docker搭建并啟動Logstash的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08Docker?部署?Minio?對象存儲服務(wù)器的過程詳解
Minio是一個輕量級的應(yīng)用程序,可以在各種環(huán)境中運行,包括公共云、私有云和混合云,這篇文章主要介紹了Docker?部署?Minio?對象存儲服務(wù)器的過程詳解,需要的朋友可以參考下2024-07-07Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時控制臺日志出現(xiàn)中文亂碼的問題
這篇文章主要介紹了Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時控制臺日志出現(xiàn)中文亂碼的問題,本文通過圖文并茂的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-02