docker启动elasticsearch异常java.nio.file.NoSuchFileException
报错示例:docker启动elasticsearch异常Exception in thread "main" java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config/jvm.optionshdback-elasticsearch_1| Exception in thread "main" java.nio...
报错示例:
docker启动elasticsearch异常Exception in thread "main" java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config/jvm.options
hdback-elasticsearch_1 | Exception in thread "main" java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config/jvm.options
hdback-elasticsearch_1 | at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
hdback-elasticsearch_1 | at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
hdback-elasticsearch_1 | at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
hdback-elasticsearch_1 | at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:215)
hdback-elasticsearch_1 | at java.base/java.nio.file.Files.newByteChannel(Files.java:369)
hdback-elasticsearch_1 | at java.base/java.nio.file.Files.newByteChannel(Files.java:415)
hdback-elasticsearch_1 | at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
hdback-elasticsearch_1 | at java.base/java.nio.file.Files.newInputStream(Files.java:154)
hdback-elasticsearch_1 | at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:60)
docker_hdback-elasticsearch_1 exited with code 1
原因总结:
由于我的elasticsearch启动时使用的是docker-compose方式,并配置了config目录的挂载数据卷,而启动时宿主机的挂载数据文件夹中并没有jvm.options文件,因此出现该文件找不到的情况。
解决办法:
先将挂载数据卷配置注释,启动elasticsearch后将elasticsearch容器中的config/文件夹下的文件拷出到宿主机,重新启动即可。
1.将容器中文件拷出到宿主机挂载卷文件夹下
docker cp [容器ID]:容器文件路径 要拷贝的宿主机路径
例如我的:
docker cp 2a202fa:/usr/share/elasticsearch/plugins/ ./es/es-with-ik-plugins/
2.开启挂载卷配置,重新启动elasticsearch
PS 举一反三:
如果启动容器时出现文件找不到,首先关闭挂载卷配置,启动尝试,若没问题,即可判断是因为挂在卷文件不充足原因,按照上述方式解决即可。
还有一种情况是读写权限问题,给自己的挂在卷赋权限即可,类似的情况如:docker启动elasticsearch异常Failed to create node environment(解决)
更多推荐
所有评论(0)