前言:
在学习ElasticSearch的过程中安装ik分词器后出现容器无法启动的情况。网上措施,如复制ElasticSearch容器中的plugins文件夹到本地修改后在复制回去和进入容器bash等,在容器未启动的情况下都没有用。
解决方法:
1.找到容器所在目录
docker inspect <容器名或容器id>
运行命令后找到MergedDir,记录后面的路径
2.进入目录修改文件
2.1 linux环境
因为docker原生运行在linux下,所以linux环境下可以直接进入以下目录修改文件
cd /var/lib/docker/overlay2/<MergedDir中的id>/diff
该目录下即为指定docker容器内部目录
2.2 其他环境
如果是MacOS,则会发现找不到该目录,则需要执行如下命令
docker run -it --rm --privileged --pid=host justincormack/nsenter1
进入容器后再按照2.1进行修改