繁体   English   中英

使用'docker-compose'命令运行Elasticsearch,Logstash和Kibana

[英]Run Elasticsearch, Logstash and Kibana with 'docker-compose' command

我将使用带有以下docker-compose.yml文件docker-compose.yml docker-compose命令运行ELK:

---
version: '2'
services:
  kibana:
    image: docker.elastic.co/kibana/kibana
    links:
      - elasticsearch
    ports:
      - 5601:5601

  kibana:
    image: docker.elastic.co/logstash/logstash
    links:
      - elasticsearch
    ports:
      - 5044:5044

  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch
    cap_add:
      - IPC_LOCK
    volumes:
      - esdata1:/usr/share/elasticsearch/data
    ports:
      - 9200:9200

volumes:
  esdata1:
    driver: local

但是我有几个问题:

1)我指定了links参数来链接容器,但我也应该指定networks参数吗? 这有什么用途?

2)如何更改Elasticsearch,Logstash和Kibana的默认用户名和密码?

3)Elasticsearch配置参数存储在elasticsearch.yml文件中,但是在哪里可以找到该文件? 是否可以直接在docker-compose.yml文件中定义Elasticsearch参数,例如path.datapath.logscluster.namenode.name

1) links参数允许通过其服务名称或别名访问链接的容器。 这对于两个服务都已加入的任何docker网络都是可能的。

如果您未在服务的网络密钥下指定任何网络,则服务将加入docker默认网络(我认为是网桥)。

如果您希望服务加入(一定数量)特定的Docker网络,则只需指定网络名称。 然后,您可以在顶级网络密钥下定义这些内容(通过docker-compose创建网络),也可以在docker外部进行准备,按docker network create

2)您正在使用的映像是X-Pack内置的,此处介绍了如何更改密码。X-Pack安全示例摘自文档:

curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/elastic/_password' -H "Content-Type: application/json" -d '{
  "password" : "elasticpassword"
}'

curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/kibana/_password' -H "Content-Type: application/json" -d '{
  "password" : "kibanapassword"
}'

curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/logstash_system/_password' -H "Content-Type: application/json" -d '{
  "password" : "logstashpassword"
}'

如果您不希望在手动设置后执行此操作,则必须创建自己的派生Docker映像。

3)您可以使用环境变量来设置您要使用elasticsearch.yml配置的配置参数,如Elastic search docker文档中所述 来自文档的示例:

...
services:
  elasticsearch1:
    image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0
    container_name: elasticsearch1
    environment:
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM