为什么 docker 上相同 elasticsearch 图像的不同容器退出?

Why does different container of same elasticsearch image on docker exits out?

我正在尝试 运行 同一 Elastic Search 图像两次,但一个容器退出了。只有一个elasticsearch容器运行s,其他退出。任何解决方案/建议都会有所帮助。我使用以下命令 运行 它:

docker run -d my_es:v3 elasticsearch

下面是正在退出的进程的日志文件。

root@ubuntu-512mb-nyc3-01:~/AnyElastic# docker logs e2cbd47927af
[2016-06-16 21:36:12,339][INFO ][node                     ] [Angela Del Toro] version[2.3.3], pid[1], build[218bdf1/2016-05-17T15:40:04Z]
[2016-06-16 21:36:12,343][INFO ][node                     ] [Angela Del Toro] initializing ...
[2016-06-16 21:36:14,014][INFO ][plugins                  ] [Angela Del Toro] modules [reindex, lang-expression, lang-groovy], plugins [], sites []
[2016-06-16 21:36:14,053][INFO ][env                      ] [Angela Del Toro] using [1] data paths, mounts [[/usr/share/elasticsearch/data (/dev/vda1)]], net usable_space [13.9gb], net total_space [19.5gb], spins? [possibly], types [ext4]
[2016-06-16 21:36:14,053][INFO ][env                      ] [Angela Del Toro] heap size [1015.6mb], compressed ordinary object pointers [true]
[2016-06-16 21:36:20,241][INFO ][node                     ] [Angela Del Toro] initialized
[2016-06-16 21:36:20,241][INFO ][node                     ] [Angela Del Toro] starting ...
[2016-06-16 21:36:20,400][INFO ][transport                ] [Angela Del Toro] publish_address {172.17.0.3:9300}, bound_addresses {[::]:9300}
[2016-06-16 21:36:20,407][INFO ][discovery                ] [Angela Del Toro] elasticsearch/ketVVDMtQCeBwj-x64E5yQ
[2016-06-16 21:36:23,565][INFO ][cluster.service          ] [Angela Del Toro] new_master {Angela Del Toro}{ketVVDMtQCeBwj-x64E5yQ}{172.17.0.3}{172.17.0.3:9300}, reason: zen-disco-join(elected_as_master, [0] joins received)
[2016-06-16 21:36:23,605][INFO ][http                     ] [Angela Del Toro] publish_address {172.17.0.3:9200}, bound_addresses {[::]:9200}
[2016-06-16 21:36:23,607][INFO ][node                     ] [Angela Del Toro] started
[2016-06-16 21:36:23,670][INFO ][gateway                  ] [Angela Del Toro] recovered [0] indices into cluster_state

我认为 my_es:v3 是您的问题。如果您尝试命名您的容器,请使用 --name 选项。另外,您不能在名称中使用“:”。

docker run -d --name my_es elasticsearch

是的,通过查看日志,内存是问题所在,因为 linux box 上只有 512mb ram,而且当时有很多容器 运行ning,所以其他容器elasticsearch 将退出。这是以前没有人遇到过的事情。结论:端口不是问题,只要您有足够的 ram 来 运行 那些 docker 容器,您可以多次 运行 相同的图像。