elasticsearch

ElasticSearch 6.4.2

# 最新版本
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.4.2
# 运行容器
docker run \
  --name es
  -p 9200:9200 -p 9300:9300 \
  -e "discovery.type=single-node" \
  docker.elastic.co/elasticsearch/elasticsearch:6.4.2

ElasticSearch 5.3.3

ElasticSearch 5.3.3 docker 运行

# 下载老版本
docker pull docker.elastic.co/elasticsearch/elasticsearch:5.3.3
# 运行容器
docker run \
  --name es \
  -p 9200:9200 \
  -e "http.host=0.0.0.0" \
  -e "transport.host=127.0.0.1" \
  -d docker.elastic.co/elasticsearch/elasticsearch:5.3.3

Linux

⚠️注意:vm_max_map_count 内核设置需要设置为至少262144以供生产使用。

应在 /etc/sysctl.conf 中永久设置 vm_map_max_count 设置:

通过 docker-compose 安装使用

新建 docker-compose.yml 文件

示例显示包含两个 Elasticsearch 节点的集群。 要打开群集,请使用 docker-compose.yml 并输入:

elasticsearch1 监听 localhost:9200,而 elasticsearch2 通过 Docker 网络与 elasticsearch1 进行通信。

此示例还使用名为 esdata1esdata2Docker named volumes,如果尚未存在,将创建它们。

检查集群的状态

用户名密码

默认用户名密码 elastic/changeme

挂载配置

创建自定义配置文件并将其挂载到映像的相应文件上。 例如,可以使用以下参数来完成使用 docker run 绑定安装custom_elasticsearch.yml:

其它配置修改项

定义镜像

然后,您可以使用以下内容构建和尝试运行镜像:

生产的一些经验

  • 镜像公开 TCP 端口 92009300。对于群集,建议使用 --publish-all 随机化已发布的端口,除非您为每个主机固定一个容器。

  • 使用 ES_JAVA_OPTS 环境变量来设置堆大小,例如使用 16GB 通过使用 -e ES_JAVA_OPTS=-Xms16g -Xms16g"dcker run 来运行。 还建议为容器设置内存限制。

其它

Last updated

Was this helpful?