Automati c редактирование файла в докеризованном контейнере - PullRequest
0 голосов
/ 26 февраля 2020

У меня запущен докернизированный контейнер дляasticsearch и kibana, и он автоматически устанавливает некоторые плагины, как только я запускаю контейнер docker.

Мне нужно отредактировать файл config /asticsearch.yml, чтобы разрешить использование этого одного плагина, и я пытаюсь найти способ сделать это подобно тому, как я установил плагины через файл как показано ниже

ARG ELASTIC_VERSION="$ELASTIC_VERSION"

FROM docker.elastic.co/elasticsearch/elasticsearch:${ELASTIC_VERSION}

RUN bin/elasticsearch-plugin install https://github.com/spinscale/elasticsearch-ingest-opennlp/releases/download/7.6.0.1/ingest-opennlp-7.6.0.1.zip
RUN bin/elasticsearch-plugin install mapper-annotated-text
RUN bin/elasticsearch-plugin install analysis-phonetic
RUN bin/elasticsearch-plugin install ingest-attachment --batch
RUN bin/ingest-opennlp/download-models

Ответы [ 2 ]

0 голосов
/ 02 марта 2020

РАЗРЕШЕНО, СПАСИБО ЗА ВСЕ ПОЛУЧЕННУЮ ПОМОЩЬ
ВДОХНОВЛЕНО { ссылка }

Обновлен файл эластичного поиска; Сохранение здесь для будущих ссылок

ARG ELASTIC_VERSION="$ELASTIC_VERSION"

FROM docker.elastic.co/elasticsearch/elasticsearch:${ELASTIC_VERSION}

RUN bin/elasticsearch-plugin install https://github.com/spinscale/elasticsearch-ingest-opennlp/releases/download/7.6.0.1/ingest-opennlp-7.6.0.1.zip
RUN bin/elasticsearch-plugin install mapper-annotated-text
RUN bin/elasticsearch-plugin install analysis-phonetic
RUN bin/elasticsearch-plugin install ingest-attachment --batch
RUN bin/ingest-opennlp/download-models


RUN echo "ingest.opennlp.model.file.persons: en-ner-persons.bin" >> /usr/share/elasticsearch/config/elasticsearch.yml
RUN echo "ingest.opennlp.model.file.dates: en-ner-dates.bin" >> /usr/share/elasticsearch/config/elasticsearch.yml
RUN echo "ingest.opennlp.model.file.locations: en-ner-locations.bin" >> /usr/share/elasticsearch/config/elasticsearch.yml
0 голосов
/ 26 февраля 2020

Правильным способом было бы создать новый docker образ:

  1. Создать новый файл Docker с эластичным поиском в качестве базового изображения. Перезапишите файлasticsearch.yml на этом изображении. А теперь создайте этот образ
FROM elasticsearch
COPY elasticsearch.yml config/elasticsearch.yml
По желанию, pu sh этот образ для dockerhub Используйте этот образ для развертываний
...