Como permitir que diferentes contêineres do Docker se comuniquem sem expor as portas ao mundo inteiro

Eu precisava testar meukafka acionadores de consumidor e mensagem em um ambiente controlado. Então eu fiz umansible projeto para criar alguns mockkafka servidores:mokafelk.

Funciona bem, exceto que a segurança é uma merda. oplaybook gira um nó de 3dockerized kafka por padrão, mas as portas de atendimento nos servidores kafka estão expostas a todos. Aqui está ojinja2 modelo doDockerfile usado para criar o cluster.

Basicamente, quero que os contêineres possam conversar entre si. Não acho que a vinculação de contêiner seja uma opção, porque me parece que a vinculação é apenas de mão única. Mas expor uma porta usando127.0.0.1:{{ port }}:{{ port }} só expõe a porta à máquina host e não expõe a porta aos outros contêineres se eu estiver correto.0.0.0.0:{{ port }}:{{ port }} expõe a porta para o mundo inteiro. Então, como eu poderia vincular dois + contêineres nos dois sentidos? Este deve ser um problema comum, mas não consigo encontrar uma solução rápida ...

questionAnswers(1)

yourAnswerToTheQuestion