Docker安装Elasticsearch单机
1.拉取Elasticsearch镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.6.0
2.创建文件夹
mkdir -p /data0/elasticsearch/datamkdir
-p /data0/elasticsearch/logsmkdir
-p /data0/elasticsearch/config
3.创建配置文件并且写入配置
cd /data0/elasticsearch/configtouch elasticsearch
.ymlvi elasticsearch
.yml
#集群的名称cluster
.name: es6.6.0#节点名称node
.name: node-1#设置为true来锁住内存。因为内存交换到磁盘对服务器性能来说是致命的,当jvm开始swapping时es的效率会降低,所以要保证它不swapbootstrap
.memory_lock: true#绑定的ip地址network
.host:0.0.0.0#设置对外服务的http端口,默认为9200http
.port:9200#设置节点之间交互的tcp端口,默认是9300transport
.tcp.port:9300#有成为主节点资格的节点列表discovery
.zen.ping.unicast.hosts:["10.0.25.240"]#集群中一直正常运行的,有成为master节点资格的最少节点数(默认为1)discovery
.zen.minimum_master_nodes:1# es页面控制台需要使用这http
.cors.enabled: truehttp
.cors.allow-origin:"*"node
.master: truenode
.data: true
4.修改权限
chmod -R 777/data0/elasticsearch
5.修改系统参数
vi /etc/security/limits.conf
* soft nofile 65536* hard nofile 65536* soft nproc 2048* hard nproc 4096#我选择锁住swapping因此需要在这个配置文件下再增加两行代码elasticsearch memlock unlimited
elasticsearch hard memlock unlimited
6.修改系统参数
vi /etc/sysctl.conf
vm.max_map_count=655360fs
.file-max=655360
注意:之后需要执行一句命令sysctl -p使系统配置生效(使用root用户执行)。
7.启动命令
docker run -d -p 9200:9200-p 9300:9300-e ES_JAVA_OPTS="-Xms1024m -Xmx1024m"-v /data0/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /data0/elasticsearch/data/:/usr/share/elasticsearch/data -v /data0/elasticsearch/logs/:/usr/share/elasticsearch/logs --ulimit memlock=-1:-1--name es elasticsearch:6.6.0
-d 后台模式启动
--name es 容器 名字 为 es
-e ES_JAVA_OPTS="-Xms1024m -Xmx1024m" : 控制启动内存 一般为服务器的内存一半即可
-v /data0/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 把容器内部配置文件挂载到数宿主机
-v /data0/elasticsearch/data/:/usr/share/elasticsearch/data 把容器内部的数据地址挂载到数宿主机
-v /data0/elasticsearch/logs/:/usr/share/elasticsearch/logs 把容器内部的日志地址挂载到数宿主机
ulimit memlock=-1:-1
站长的个人微信公众号,每天分享技术文章和学习视频。 让我们一起走向架构师之路!!
回复 666 获取 java从菜鸡到大神项目实战课程
以上是 Docker安装Elasticsearch单机 的全部内容, 来源链接: utcz.com/z/518942.html