Elastic - sebp/elk - How to run separate, multiple containers on the same host

Of course this does not work. While your first docker run statements uses the correct container port (the right hand side of the port mapping), the second run statements uses phoney container ports. A port mapping itself will neither have affect on the applications inside the container, nor will it verify that a process is actualy listening on the port.

You need to set the host side (the left hand side of the port mapping!), while using the documentent container ports to create useful mappings:

sudo docker run --ulimit nofile=65536:65536 -p 5617:5601 -p 9217:9200 -p 9317:9300 -p 5017:5044 -it --name Miklas sebp/elk

Anyway, make sure to follow the docs to use the image like it is intended.