You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[DOCS] Fix keystore creation instructions for Docker (#77155)
* [DOC] Update Persist Keystore via Docker
From feedback from ES Devs summarized in [^1], I believe this needs to reflect a directory mount rather than file mount to not error. Also adding in the two common mounting errors, but not sure if this is the right place for them.
[^1] https://discuss.elastic.co/t/persist-elasticsearch-kibana-keystores-with-docker/283099
* feedback
* Reorganize
* reword
* fix formatting
* address review feedback
* remove extra whitespace
Co-authored-by: James Rodewig <[email protected]>
@@ -460,4 +498,48 @@ You should use `centos:8` as a base in order to avoid incompatibilities.
460
498
Use http://man7.org/linux/man-pages/man1/ldd.1.html[`ldd`] to list the
461
499
shared libraries required by a utility.
462
500
501
+
[[troubleshoot-docker-errors]]
502
+
==== Troubleshoot Docker errors for {es}
503
+
504
+
Here’s how to resolve common errors when running {es} with Docker.
505
+
506
+
===== elasticsearch.keystore is a directory
507
+
508
+
[source,txt]
509
+
----
510
+
Exception in thread "main" org.elasticsearch.bootstrap.BootstrapException: java.io.IOException: Is a directory: SimpleFSIndexInput(path="/usr/share/elasticsearch/config/elasticsearch.keystore") Likely root cause: java.io.IOException: Is a directory
511
+
----
512
+
513
+
A <<docker-keystore-bind-mount,keystore-related>> `docker run` command attempted
514
+
to directly bind-mount an `elasticsearch.keystore` file that doesn't exist. If
515
+
you use the `-v` or `--volume` flag to mount a file that doesn't exist, Docker
516
+
instead creates a directory with the same name.
517
+
518
+
To resolve this error:
519
+
520
+
. Delete the `elasticsearch.keystore` directory in the `config` directory.
521
+
. Update the `-v` or `--volume` flag to point to the `config` directory path
522
+
rather than the keystore file's path. For an example, see
523
+
<<docker-keystore-bind-mount>>.
524
+
. Retry the command.
525
+
526
+
===== elasticsearch.keystore: Device or resource busy
527
+
528
+
[source,txt]
529
+
----
530
+
Exception in thread "main" java.nio.file.FileSystemException: /usr/share/elasticsearch/config/elasticsearch.keystore.tmp -> /usr/share/elasticsearch/config/elasticsearch.keystore: Device or resource busy
531
+
----
532
+
533
+
A <<docker-keystore-bind-mount,keystore-related>> `docker run` command attempted
534
+
to directly bind-mount the `elasticsearch.keystore` file. To update the
535
+
keystore, the container requires access to other files in the `config`
536
+
directory, such as `keystore.tmp`.
537
+
538
+
To resolve this error:
539
+
540
+
. Update the `-v` or `--volume` flag to point to the `config` directory
541
+
path rather than the keystore file's path. For an example, see
0 commit comments