我在用着官方的elasticsearch Docker 镜像 https://hub.docker.com/r/_/elasticsearch/而不是设置我自己的弹性搜索实例。这非常有效,直到我想扩展它为止。我想安装marvel http://www.elasticsearch.org/overview/marvel/进入该 ElasticSearch 实例以获取更多信息。
现在 dockerfile/elasticsearch 自动运行 ElasticSearch 并将命令设置为/bin/bash
不起作用,附加到容器或尝试通过 SSH 访问它也不起作用,安装 ssh-daemon 也不起作用apt-get install -y openssh-server
.
在这种特殊情况下,我可以进入容器的文件系统并执行opt/elasticsearch/bint/plugin -i elasticsearch/marvel/latest
一切顺利。
但是我怎样才能安装需要安装的附加服务apt-get
当我在运行的容器内无法使用终端时?
只需使用以以下开头的 Dockerfile 来扩展它
FROM dockerfile/elasticsearch
并安装 marvel 或 ssh-server 或任何你需要的东西。然后,以正确的命令结束以启动服务。您可以使用supervisor来启动多个服务,参见在 docker 容器中自动运行服务 https://stackoverflow.com/questions/17252356/run-a-service-automatically-in-a-docker-container/19273735#19273735了解更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)