start es docker cmd:
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" 855
参数解释:
-d:后台启动
--name:容器名称
-p:端口映射
-e:设置环境变量
discovery.type=single-node:单机运行
-e ES_JAVA_OPTS="-Xms512m -Xmx512m":内存限制
855:镜像id
启动ES后,遇到了一系列问题:
- 我租的是云服务器,所以需要特别在云平台上为9200 9300 端口设置防火墙通过
- curl 127.0.0.1:9200 报错:curl: (52) Empty reply from server
| 参考:
- 首先,需要登录到容器内部修改配置文件,而且容器内部没有vi命令,所以需要以root身份登录容器,才能有权限下载vi命令:
## -u root就是以root身份登录容器, es是我的容器名
docker exec -u root -it es bash
## 下载命令
apt-get update
apt-get install vim
## 修改配置文件,将security相关的配置都改成FALSE
vim config/elasticsearch.yml
- 最后验证成功 curl 127.0.0.1:9200