佛山网站建设团队,市场营销策划案怎么写,拱墅抖音seo搜索排名推广,如何做高端网站有些应用默认不允许root用户运行#xff0c;来确保应用的安全性#xff0c;这也会导致我们使用docker run后一些操作问题#xff0c;用es安装ik分词器举例#xff08;es版本8.9.0#xff0c;analysis-ik版本8.9.0#xff09;
1. 容器启动elasticsearch
如挂载方式…有些应用默认不允许root用户运行来确保应用的安全性这也会导致我们使用docker run后一些操作问题用es安装ik分词器举例es版本8.9.0analysis-ik版本8.9.0
1. 容器启动elasticsearch
如挂载方式我在本地es目录下创建子目录文件{plugins/data/logs/config} 创建完成后赋值777权限chmod -R 777 xxx运行启动正常
version: 3.2
services:elasticsearch:image: elasticsearch:8.9.0volumes:- /etc/localtime:/etc/localtime- ./es/plugins:/usr/share/elasticsearch/plugins- ./es/data:/usr/share/elasticsearch/data- ./es/logs:/usr/share/elasticsearch/logs- ./es/config:/usr/share/elasticsearch/configports:- 9200:9200- 9300:9300container_name: esrestart: alwaysprivileged: trueenvironment:- discovery.typesingle-node #以单一节点模式启动- ES_JAVA_OPTS-Xms1g -Xmx1g #设置使用jvm内存大小networks:- elkkibana:image: kibana:8.9.0container_name: kibanarestart: alwaysvolumes:- /etc/localtime:/etc/localtime- ./kibana/config:/usr/share/kibana/config- ./kibana/data:/usr/share/kibana/dataports:- 5601:5601links:- elasticsearch:es #可以用es这个域名访问elasticsearch服务environment:- ELASTICSEARCH_URLhttp://elasticsearch:9200 #设置访问elasticsearch的地址- elasticsearch.hostshttp://es:9200 #设置访问elasticsearch的地址- I18N_LOCALEzh-CNnetworks:- elkdepends_on:- elasticsearch
networks:elk:ipam:driver: default2. 安装分词器analysis-ik
analysis-ik下载列表根据自己对应的es版本下载相同版本的ikdocker机器如无互联网权限可先下载本地复制容器内install 复制容器内 docker cp elasticsearch-analysis-ik-8.9.0.zip es:/home 进入容器安装
[rootiZ3ic06r07y423aufi9oypZ elasticsearch]# docker exec -it es bashelasticsearcha0ff9699bfd6:~$ cd bin/
elasticsearcha0ff9699bfd6:~/bin$ ./elasticsearch-plugin install file:///home/elasticsearch-analysis-ik-8.9.0.zip
- Installing file:///home/elasticsearch-analysis-ik-8.9.0.zip
- Downloading file:///home/elasticsearch-analysis-ik-8.9.0.zip
[] 100%??
- Failed installing file:///home/elasticsearch-analysis-ik-8.9.0.zip
- Rolling back file:///home/elasticsearch-analysis-ik-8.9.0.zip
- Rolled back file:///home/elasticsearch-analysis-ik-8.9.0.zip
Exception in thread main java.nio.file.AccessDeniedException: /usr/share/elasticsearch/plugins/.installing-16427832938312211034at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:90)xxxxx.......安装报错发现原因为权限问题exec进入后为1000用户工作目录下除了bin其他都是root权限 重新运行一个新的es对比看下效果结果发现当没有挂载文件时其余文件都是以elasticsearch:root为权限的已挂载的是根据宿主机的权限一致问题很明显了 容器内部不支持sudo命令 su - root也不知道root密码的情况下宿主机新建useradd elasticsearch对应挂载目录文件用户授权在安装正常运行chown -R elasticsearch:root {plugins/data/logs/config}