【问题标题】:enable scripting within docker image在 docker 镜像中启用脚本
【发布时间】:2016-10-04 22:22:08
【问题描述】:

我可以使用以下 2 个 docker 命令在 Kibana 中启动 elasticsearch...

docker run -d -p 9200:9200 -p 9300:9300 --name elasticsearch-pb elasticsearch
docker run -d -p 5601:5601 --name kibana-pb --link elasticsearch-pb:elasticsearch -e ELASTICSEARCH_URL=http://elasticsearch:9200 kibana

但是如何使用 docker 启动 es 脚本支持呢?

通常这是通过在 elasticsearch.yml 文件中添加 2 行来完成的。

script.inline: on
script.indexed: on

如何更改 docker 镜像中的配置文件?

【问题讨论】:

    标签: elasticsearch docker


    【解决方案1】:

    构建包含这些选项的自定义映像。

    为你的 docker 镜像创建一个目录

    mkdir my_elasticsearch
    cd my_elasticsearch
    

    创建一个包含所有选项的elasticsearch.yml,包括

    script.inline: on
    script.indexed: on
    

    创建一个复制配置文件的Dockerfile

    from elasticsearch
    copy elastcsearch.yml /container/path/to/elasticsearch.yml
    

    构建并标记图像

    docker build -t my/elasticsearch .
    

    然后运行你的图像

    docker run -d -p 9200:9200 -p 9300:9300 --name elasticsearch-pb my/elasticsearch
    

    您可能希望将映像发布到 Docker Hub 或其他注册表,因此您只需构建一次。

    您还可以使用docker-compose 来管理构建过程和多个容器。

    【讨论】:

      【解决方案2】:

      一种方法是通过以official elasticsearch image 开头的Dockerfile 创建您自己的elasticsearch 映像。

      FROM elasticsearch:5
      COPY myconfig /path/to/elasticsearch.yml
      

      这样,您的图像可以启动一个预先设置正确配置的 elasticsearch 容器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-12-04
        • 2021-11-04
        • 2019-12-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-04
        • 1970-01-01
        相关资源
        最近更新 更多