comunicação entre containers na janela de encaixe que não sejam sockets / network

4

Existe alguma maneira de se comunicar entre contêineres docker diferente de sockets / network? Pode ser que seja IPC ou algum outro meio. É viável?

Eu li a documentação do docker que diz que podemos vincular contêineres docker usando a opção --link, mas isso não especifica como transferir dados / msg de um contêiner para outro. Eu já criei um contêiner chamado checkram. Agora quero vincular um novo contêiner a esse contêiner e executo o comando docker run -i -t --privileged --link=checkram:linkcheck --name linkcont topimg . Em seguida, verifiquei a variável env LINKCHECK_PORT no contêiner linkcont que contém tcp://172.17.0.14:22 . Eu não sei o que fazer com este ip e porta e como se comunicar com contêiner de checkram do container linkcont. Alguém pode me ajudar com isso? Agradecemos antecipadamente.

    
por tamilmani 31.10.2014 / 11:52

1 resposta

5

A opção --link fornece uma maneira de os contêineres na mesma máquina se encontrarem, já que os endereços IP são atribuídos dinamicamente e as portas podem ser mapeadas novamente. No entanto, é tudo sobre comunicação de soquete. A idéia é que você estaria executando um programa em um contêiner escutando em um soquete, e você executaria outro programa no outro contêiner que se conectaria ao primeiro soquete.

O Docker (e os contêineres linux em geral) tratam de isolar uma coisa da outra, portanto, os mecanismos de IPC, como a memória compartilhada, não estão disponíveis.

    
por 03.11.2014 / 23:14