- docker上安装elasticsearch 7.8.1 挂载目录,启动的时候报打开gc.log无权限
我手动创建的文件夹plugins 、data、logs 和gc.log 都全部给了777的权限还是没有用。
在启动的时候添加--privileged=true就可以了
docker run -p 9200:9200 -p 9300:9300 --name es7.8.1 \
--privileged=true \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-v /dockerfile/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /dockerfile/elasticsearch/data:/usr/share/elasticsearch/data \
-v /dockerfile/elasticsearch/logs:/usr/share/elasticsearch/logs \
-d elasticsearch:7.8.1
--privileged=true是让容器的用户拥有真正的root权限
- 上面的方法启动成功后但是访问9200端口,拒绝了请求,查看了容器中config/elasticsearch.yml的network.host:0.0.0.0 没问题
后面参考了其他文章修改了一个linux的配置
这个是默认的
cat /proc/sys/vm/max_map_count
65530
直接修改
sysctl -w vm.max_map_count=262144
然后重启容器就可以访问了
网友评论