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.2ElasticSearch 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.3Linux
⚠️注意: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 进行通信。
此示例还使用名为 esdata1 和 esdata2 的 Docker named volumes,如果尚未存在,将创建它们。
检查集群的状态
用户名密码
默认用户名密码 elastic/changeme
挂载配置
创建自定义配置文件并将其挂载到映像的相应文件上。 例如,可以使用以下参数来完成使用 docker run 绑定安装custom_elasticsearch.yml:
其它配置修改项
定义镜像
然后,您可以使用以下内容构建和尝试运行镜像:
生产的一些经验
镜像公开
TCP端口9200和9300。对于群集,建议使用--publish-all随机化已发布的端口,除非您为每个主机固定一个容器。使用
ES_JAVA_OPTS环境变量来设置堆大小,例如使用16GB通过使用-e ES_JAVA_OPTS=-Xms16g -Xms16g"和dcker run来运行。 还建议为容器设置内存限制。
其它
Last updated
Was this helpful?