docker 的弹性搜索无法启动
Elastic search with docker does not start
我正在 angular 应用程序中从弹性搜索中检索详细信息。当我在我的本地机器上安装弹性搜索时,它起作用了。我必须将以下行附加到 elasticsearch.yml 文件才能使其与 angularApp.
一起使用
http.cors.allow-origin: "/.*/"
http.cors.enabled: true
现在弹性搜索服务器安装了 docker。当我 运行 没有添加这两行时它也有效。但是当我添加并重新启动弹性搜索时,
它给了我以下错误。
{1.4.2}: Setup Failed ...
- SettingsException[Failed to load settings from [file:/elasticsearch/config/elasticsearch.yml]]
ScannerException[while scanning a simple key; could not found expected ':'; in 'reader', line 7, column 3:
http.cors.enabled: true
^]
org.elasticsearch.common.settings.SettingsException: Failed to load settings from [file:/elasticsearch/config/elasticsearch.yml]
at org.elasticsearch.common.settings.ImmutableSettings$Builder.loadFromStream(ImmutableSettings.java:947)
at org.elasticsearch.common.settings.ImmutableSettings$Builder.loadFromUrl(ImmutableSettings.java:931)
at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareSettings(InternalSettingsPreparer.java:77)
at org.elasticsearch.bootstrap.Bootstrap.initialSettings(Bootstrap.java:106)
at org.elasticsearch.bootstrap.Bootstrap.main(Bootstrap.java:177)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:32)
Caused by: while scanning a simple key
in 'reader', line 6, column 3:
http.cors.allow-origin:"/.*/"
^
这是服务器上的Elasticsearch.yml文件
至少有两个可能的问题,它们并不相互排斥:
第一个:
http.cors.allow-origin:"/.*/"
应该是
http.cors.allow-origin: "/.*/"
因为 YAML 表示法需要在 :
和键值对的值之间进行白色 space 分隔。
其次,您提供的错误跟踪表明 http.cors.allow-origin: "/.*/"
前面有前导白色 space,这与按照正确的 YAML 符号的块不一致。 http.cors.allow-origin: "/.*/"
更有可能需要没有前导白色 space(如果存在的话)(因为我认为 http
通常是 Elasticsearch 配置文件中的顶级块)。
我正在 angular 应用程序中从弹性搜索中检索详细信息。当我在我的本地机器上安装弹性搜索时,它起作用了。我必须将以下行附加到 elasticsearch.yml 文件才能使其与 angularApp.
一起使用http.cors.allow-origin: "/.*/"
http.cors.enabled: true
现在弹性搜索服务器安装了 docker。当我 运行 没有添加这两行时它也有效。但是当我添加并重新启动弹性搜索时, 它给了我以下错误。
{1.4.2}: Setup Failed ...
- SettingsException[Failed to load settings from [file:/elasticsearch/config/elasticsearch.yml]]
ScannerException[while scanning a simple key; could not found expected ':'; in 'reader', line 7, column 3:
http.cors.enabled: true
^]
org.elasticsearch.common.settings.SettingsException: Failed to load settings from [file:/elasticsearch/config/elasticsearch.yml]
at org.elasticsearch.common.settings.ImmutableSettings$Builder.loadFromStream(ImmutableSettings.java:947)
at org.elasticsearch.common.settings.ImmutableSettings$Builder.loadFromUrl(ImmutableSettings.java:931)
at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareSettings(InternalSettingsPreparer.java:77)
at org.elasticsearch.bootstrap.Bootstrap.initialSettings(Bootstrap.java:106)
at org.elasticsearch.bootstrap.Bootstrap.main(Bootstrap.java:177)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:32)
Caused by: while scanning a simple key
in 'reader', line 6, column 3:
http.cors.allow-origin:"/.*/"
^
这是服务器上的Elasticsearch.yml文件
至少有两个可能的问题,它们并不相互排斥:
第一个:
http.cors.allow-origin:"/.*/"
应该是
http.cors.allow-origin: "/.*/"
因为 YAML 表示法需要在 :
和键值对的值之间进行白色 space 分隔。
其次,您提供的错误跟踪表明 http.cors.allow-origin: "/.*/"
前面有前导白色 space,这与按照正确的 YAML 符号的块不一致。 http.cors.allow-origin: "/.*/"
更有可能需要没有前导白色 space(如果存在的话)(因为我认为 http
通常是 Elasticsearch 配置文件中的顶级块)。