如何使用 docker 容器安装 Elasticsearch 插件?

Ale*_*lex 5 elasticsearch docker

我是 Docker 的新手,我想在我的 elasticsearch 容器中安装插件,在这种情况下它们是:

  • 分析-icu
  • 分析-语音

我知道以传统方式它会是这样的:

  • /usr/share/elasticsearch 在这个目录下

sudo bin/elasticsearch-plugin install analysis-icu

sudo bin/elasticsearch-plugin install analysis-phonetic

? docker ps   
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                                            NAMES
f7aaead8fd09        elasticsearch:7.0.1   "/usr/local/bin/dock…"   2 days ago          Up 10 minutes       0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   elasticsearch
Run Code Online (Sandbox Code Playgroud)

有什么想法或建议吗?

小智 3

如果您正在使用 Dockerfile,请尝试下面的链接

FROM elasticsearch:2
RUN /usr/share/elasticsearch/bin/plugin install --batch <plugin>
Run Code Online (Sandbox Code Playgroud)

之后你可以构建

$ docker build -t elasticsearch-aws .
Run Code Online (Sandbox Code Playgroud)

这是很好的参考https://www.elastic.co/blog/elasticsearch-docker-plugin-management

如果您想直接从 docker 安装插件,请按照以下步骤操作。

  1. 登录码头工人docker exec -it <id> /bin/bash
  2. 找到elasticsearch主目录并执行命令来安装插件。

但请记住,这种方式不是持久的。