Назад | Перейти на главную страницу

Как установить плагины Elasticsearch с контейнером докеров?

Я новичок в Docker, я хочу установить плагины в свой контейнер 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

Есть идеи или предложения?

Если вы используете elasticsearch 6, команды для установки плагинов немного отличаются от ответов @ asktyagi. Поместите это в свой Dockerfile

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

затем

docker build -t elasticsearch .

Если вы используете Dockerfile, попробуйте что-нибудь по ссылке ниже

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

После этого вы можете построить

$ docker build -t elasticsearch-aws .

Вот хорошая ссылка https://www.elastic.co/blog/elasticsearch-docker-plugin-management .

Если вы хотите установить плагин прямо из докера, выполните следующие действия.

  1. Войти в докер docker exec -it <id> /bin/bash
  2. Найдите домашний каталог elasticsearch и выполните команду для установки плагина.

Но помните, что это не настойчиво.