Como instalar plug-ins do Elasticsearch com o Docker container?

Eu sou um novato no Docker, quero instalar plug-ins no meu contêiner do elasticsearch, neste caso eles são:

  • análise-UTI
  • análise-fonética

Eu sei que de uma maneira tradicional seria assim:

  • /usr/share / elasticsearch neste diretório

sudo bin/elasticsearch-plugin install analysis-icu

sudo bin/elasticsearch-plugin install analysis-phonetic

➜ docker ps   CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                                            NAMESf7aaead8fd09        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

Alguma ideia ou sugestão?

Se você estiver usando o elasticsearch 6, Os comandos para instalar plug-ins são um pouco diferentes da resposta de @asktyagi. Coloque isso no seu Dockerfile

FROM elasticsearch:6.8.3RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-icu && \     /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-phonetic

Entao

docker build -t elasticsearch .

Se você estiver usando Dockerfile tente algo link abaixo

FROM elasticsearch:2RUN /usr/share/elasticsearch/bin/plugin install --batch <plugin>

Depois disso, você pode construir

$ docker build -t elasticsearch-aws .

Aqui está uma boa referência https://www.elastic.co/blog/elasticsearch-docker-plugin-management .

Se você deseja instalar o plugin diretamente do docker, siga as etapas abaixo.

  1. Faça login no docker docker exec -it <id> /bin/bash
  2. Encontre elasticsearch Home dir e execute seu comando para instalar o plugin.

Mas lembre-se desta forma não é persistente.