docker中的logstash7.6.2离线安装插件logstash-codec-json_lines

3,591 阅读1分钟

环境 CentOS系统

  • docker拉取镜像 Logstash7.6.2
docker pull logstash:7.6.2
  • 创建/mydata/logstash目录,并将 Logstash 的配置文件logstash.conf拷贝到该目录

    待会儿用来挂载Logstash容器里文件

    存放我们离线安装的logstash-codec-json_lines插件文件

mkdir /mydata/logstash
# 存放插件离线安装相关文件
mkdir /mydata/logstash/offlinePlugin
  • 下载离线插件

    github插件下载地址

    搜索logstash-codec-json_lines插件,下载最新版tar.gz文件

    上传至 /mydata/logstash/OfflinePlugin下,使用命令解压

    tar -zxvf logstash-codec-json_lines-3.0.6.tar.gz
    

    image

  • 使用如下命令启动 Logstash 服务

docker run --name logstash -p 4560:4560 -p 4561:4561 -p 4562:4562 -p 4563:4563 \
-v /mydata/logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf \
-v /mydata/logstash/offlinePlugin:/usr/share/logstash/offlinePlugin \
-d logstash:7.6.2
  • -v /mydata/logstash/offlinePlugin:/usr/share/logstash/offlinePlugin命令为挂载本地同容器目录

  • 进入容器内部,安装json_lines插件

# 进入logstash容器内
docker exec -it logstash /bin/bash
cd
# 查看文件
ls

可以查看到我们的offlinePlugin文件夹

image

vi /usr/share/logstash/Gemfile
  • 指定我们的离线插件地址

    gem "logstash-codec-json_lines" 修改为 gem "logstash-codec-json_lines", :path => "/usr/share/logstash/offlinePlugin/logstash-codec-json_lines-3.0.6"

  • 修改为国内的镜像地址

    更改默认的 rubygems.orggems.ruby-china.com

  • 保存退出

image

  • 执行安装命令
logstash-plugin install --no-verify

image-20210312162438803

ok ,enjoy it . !