docker-compose部署ELK(親測)


具體的配置可以參考上面一篇:docker部署ELK

以下是做了一些修改的地方:

kibana.yml

[root@topcheer config]# cat kibana.yml
server.host: "0.0.0.0"
elasticsearch.url: http://elasticsearch01:9200
xpack:
  apm.ui.enabled: false
  graph.enabled: false
  ml.enabled: false
  monitoring.enabled: false
  reporting.enabled: false
  security.enabled: false
  grokdebugger.enabled: false
  searchprofiler.enabled: false
[root@topcheer config]#

logstash的conf

[root@topcheer pipeline]# cat logstash-test.conf
input {
    file {
        path => ["/usr/share/logstash/pipeline/logs/test.log"]
        start_position => "beginning"
    }
}
output {
   elasticsearch { hosts => ["elasticsearch01:9200"] }
}
[root@topcheer pipeline]#

別的配置都沒有變,然后新增docker-compose.yml

[root@topcheer config]# cat docker-compose.yml
version: '2'
services:
  elasticsearch01: #服務名稱(不是容器名,名稱最好不要含有特殊字符,碰到過用下划線時運行出錯)
    image: docker.elastic.co/elasticsearch/elasticsearch:6.4.3
    container_name: elasticsearch01 #容器名稱 
    volumes: #掛載文件
      - ./elasticsearch/logs/:/usr/share/logs/
      - /elk/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro
    ports:
      - "9200:9200" #暴露的端口信息和docker run -d -p 80:80一樣
      - "9300:9300"
    environment: #設置鏡像變量,它可以保存變量到鏡像里面
      ES_JAVA_OPTS: "-Xmx512m -Xms512m"
    networks: #加入指定網絡
      - elk
  logstash_test:
    image: docker.elastic.co/logstash/logstash:6.4.3
    container_name: logstash01
    volumes:
      - /elk/config/logstash/config/:/usr/share/logstash/config/:ro
      - /elk/config/logstash/pipeline/:/usr/share/logstash/pipeline/
    ports:
      - "5044:5044"
      - "9600:9600"
    environment:
      LS_JAVA_OPTS: "-Xmx512m -Xms512m"
    networks:
      - elk
    depends_on: #標簽解決了容器的依賴、啟動先后的問題
      - elasticsearch01
  kibana_test:
    image: docker.elastic.co/kibana/kibana:6.4.3
    container_name: kibana01
    volumes:
      - /elk/config/kibana.yml:/usr/share/kibana/config/kibana.yml
    ports:
      - "5601:5601"
    networks:
      - elk
    depends_on:
      - elasticsearch01
networks:
  elk:
    driver: bridge

[root@topcheer config]#

然后執行docker-compose up -d

[root@topcheer config]# docker-compose ps
     Name                    Command               State                       Ports
---------------------------------------------------------------------------------------------------------
elasticsearch01   /usr/local/bin/docker-entr ...   Up      0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp
kibana01          /usr/local/bin/kibana-docker     Up      0.0.0.0:5601->5601/tcp
logstash01        /usr/local/bin/docker-entr ...   Up      0.0.0.0:5044->5044/tcp, 0.0.0.0:9600->9600/tcp
[root@topcheer config]#

發現都很快的起起來了,docker的kibana真的很慢,但是更推薦k8s去部署,后面再寫。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM