我可以使用以下 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 开始脚本支持呢?
通常这是通过在 elasticsearch.yml 文件中添加 2 行来完成的。
script.inline: on
script.indexed: on
如何更改 Docker 映像中的配置文件?
生成包含这些选项的自定义映像。
为 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 中心或其他注册表,因此只需生成一次。
您还可以使用 docker-compose 来管理生成过程和多个容器。
一种方法是通过从官方 elasticsearch 镜像开始的 Dockerfile 创建自己的 elasticsearch 镜像。
FROM elasticsearch:5
COPY myconfig /path/to/elasticsearch.yml
这样,您的镜像就可以启动一个预先设置正确配置的 elasticsearch 容器。