docker启动es(解决9200端口访问不到)
正常情况下docker拉取es,9200端口(api)可以访问到,5.0版本后9300端口(client)访问不到,本文针对此情况给出解决方案一、拉取esdocker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2二、复制docker中配置文件到本地目录2.1 进入es容器docker exec -it tensqua...
·
正常情况下docker拉取es,9200端口(api)可以访问到,5.0版本后9300端口(client)访问不到,本文针对此情况给出解决方案
一、拉取es
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
二、复制docker中配置文件到本地目录
2.1 进入es容器
docker exec -it tensquare_elasticsearch /bin/bash
2.2 复制es配置文件到本地
// ES01为 images 中的name
docker cp ES01:/usr/share/elasticsearch/config/elasticsearch.yml /usr/share/elasticsearch.yml
三、启动 es
// -v读的配置文件地址 -e运行时参数 -p指定端口(外部:内部) --name容器命名
docker run -v /usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -e "ES_JAVA_OPTS=-Xms256m -Xmx256m" -p 9200:9200 -p 9300:9300 --name ES01 0206b7302cfe
此时启动es后总会自动关闭
三、修改配置文件(重要)
- /usr/share/elasticsearch.yml
其作用是允许任何ip地址访问elasticsearch 。
开发测试阶段可以这么做,生产环境下指定具体的IP
- 查看日志
// 发现还是会自己关闭,此时查看日志
docker logs -f 容器id
日志内容
3. 修改参数
查看max_map_count :
cat /proc/sys/vm/max_map_count
65530
设置max_map_count:
sysctl -w vm.max_map_count=262144
vm.max_map_count = 26214
- 重启容器:docker start 容器id或名字
浏览器就能访问了 - success
docker 已可启动
外部也可ping通
更多推荐
已为社区贡献1条内容
所有评论(0)