如何将外部HDD挂载到Docker ElasticSearch -错误为NoSuchFileException

uidvcgyl  于 2023-08-03  发布在  ElasticSearch
关注(0)|答案(1)|浏览(97)

我在docker容器中使用ElasticSearch,并尝试将ES数据挂载到外部驱动器。我尝试了一种我认为很明显的方法,但是我在ES容器中得到了一个路径存在错误- * 而不是 * 我在SO中其他地方看到的典型权限错误。

(base) peter@Peters-MBP14 ~ % docker run --name es01-t7v --net elastic -p 9200:9200 -v /Volumes/T7/pdr/dom-2.2.1/es-data-01:/usr/share/elasticsearch/data -it docker.elastic.co/elasticsearch/elasticsearch:8.8.2

Exception in thread "main" java.nio.file.NoSuchFileException: /usr/share/elasticsearch/data
    at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
    at java.base/sun.nio.fs.UnixException.asIOException(UnixException.java:115)
    at java.base/sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:477)
    at java.base/java.nio.file.Files.newDirectoryStream(Files.java:481)
    at java.base/java.nio.file.Files.list(Files.java:3767)
    at org.elasticsearch.xpack.security.cli.AutoConfigureNode.isDirEmpty(AutoConfigureNode.java:1144)
    at org.elasticsearch.xpack.security.cli.AutoConfigureNode.execute(AutoConfigureNode.java:166)
    at org.elasticsearch.server.cli.ServerCli.autoConfigureSecurity(ServerCli.java:165)
    at org.elasticsearch.server.cli.ServerCli.execute(ServerCli.java:86)
    at org.elasticsearch.common.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:54)
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:85)
    at org.elasticsearch.cli.Command.main(Command.java:50)
    at org.elasticsearch.launcher.CliToolLauncher.main(CliToolLauncher.java:64)

字符串
但是当我将挂载路径更改为我的主驱动器(而不是我的外部驱动器)时,它启动得很好:第一个月
虽然错误并不建议这一点,我检查了外部驱动器文件夹上的权限,它似乎OK。

(base) peter@Peters-MBP14 ~ % ls -al /Volumes/T7/pdr/dom-2.2.1/es-data-01
total 512
drwxrwxrwx  1 peter  staff  131072 Jul 19 19:18 .
drwxrwxrwx  1 peter  staff  131072 Jul 19 17:30 ..


我还尝试了一个从本地高清到外部高清的符号链接,得到了一个不同的错误(超出了这个SO问题的范围)

pgvzfuti

pgvzfuti1#

NoSuchFileException意味着用户可能没有访问该文件夹的权限。
您需要确保/Volumes/T7/pdr/dom-2.2.1/es-data-01上的用户/组及其权限与/Users/peter/es-test-mnt1相同。

相关问题