首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用docker compose安装ElasticSeach插件

如何使用docker compose安装ElasticSeach插件
EN

Stack Overflow用户
提问于 2016-09-26 04:43:38
回答 6查看 14.6K关注 0票数 16

我有一个docker-compose.yml文件,其中包含一个弹性搜索图像:

代码语言:javascript
复制
elasticsearch:
  image: elasticsearch
  ports:
    - "9200:9200"
  container_name: custom_elasticsearch_1

如果我想安装额外的插件,如HQ界面或附件映射器,我必须使用以下命令进行手动安装:

代码语言:javascript
复制
$ docker exec custom_elasticsearch_1 plugin install royrusso/elasticsearch-HQ
$ docker exec custom_elasticsearch_1 plugin install mapper-attachments

有没有办法在我运行docker-compose up命令时自动安装它们?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2016-09-26 04:50:56

Here是一篇由Elastic撰写的博客文章,就是关于这一点的!您需要使用执行命令的Dockerfile来扩展图像。您的Dockerfile将如下所示:

代码语言:javascript
复制
FROM custom_elasticsearch_1

RUN elasticsearch-plugin install royrusso/elasticsearch-HQ
票数 16
EN

Stack Overflow用户

发布于 2019-10-02 05:30:28

灵感来自@NickPridorozhko的答案,但使用elasticsearch^7.0.0 (使用docker stack / swarm)进行了更新和测试,使用analysis-icu示例:

代码语言:javascript
复制
elasticsearch:
  image: docker.elastic.co/elasticsearch/elasticsearch:7.3.0
  user: elasticsearch
  command: >
    /bin/sh -c "./bin/elasticsearch-plugin list | grep -q analysis-icu 
    || ./bin/elasticsearch-plugin install analysis-icu; 
    /usr/local/bin/docker-entrypoint.sh"
  ...

主要区别在于^7.0.0的更新命令,以及使用docker入口点而不是./bin/elasticsearch (在堆栈的上下文中,您会得到一个与可派生进程的限制相关的错误)。

票数 12
EN

Stack Overflow用户

发布于 2019-02-19 19:15:03

这对我很有效。先安装插件,然后继续启动elasticsearch。

代码语言:javascript
复制
elasticsearch:
  image: elasticsearch
  command:
    - sh
    - -c
    - "plugin list | grep -q plugin_name || plugin install plugin_name;
       /docker-entrypoint.sh elasticsearch"
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39691652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档