Um dos equívocos mais comuns sobre contêineres é que eles atuam como VMs leves. Isso faria com que você pensasse que elas estão perfeitamente isoladas. Isso não é verdade. Embora todas elas ofereçam algum nível de isolamento, todas compartilham um kernel comum. E, na verdade, essa é a ideia principal. Os contêineres são leves porque você não precisa emular a coisa toda, pois eles compartilham um kernel comum.

Executar seus contêineres em produção em algum provedor de nuvem pode colocá-lo em uma situação em que seu contêiner compartilhará um kernel com algum contêiner desconhecido. Isso o deixa desconfortável?

A analogia do duplo mergulho

Imagine que você está em uma festa. E que está compartilhando um molho com alguém. E essa pessoa está dividindo dois molhos. Você continua compartilhando? Se essa pessoa for sua cara-metade e você for uma pessoa de confiança, provavelmente continuará. Se você não conhece absolutamente essa pessoa, é muito menos provável que continue. E digamos que algumas pessoas sejam aventureiras, ou talvez você seja o Bear Grylls. E, a propósito, você encontrará respostas para todas as suas perguntas sobre double dip em este artigo.

Colocar contêineres em produção em uma nuvem é um pouco semelhante. Se você tiver sua própria máquina e conhecer todos os contêineres que compartilham o mesmo kernel, e se for uma pessoa de confiança, provavelmente continuará. Se você não conhece absolutamente os outros contêineres que compartilham esse kernel, é menos provável que continue. E algumas pessoas não se importam e simplesmente gostam de ver o mundo pegar fogo.

some people just like to watch the world burn

Todos nós temos nosso próprio nível de confiança. Algumas pessoas nunca executarão dois contêineres em um kernel porque nunca se sabe o que pode acontecer. Outras não se importam em compartilhar um kernel, desde que conheçam todos os outros compartilhadores. E algumas não se importam com isso e fazem com que seus contêineres compartilhem um kernel com estranhos.

Os contêineres são ótimos, mas certifique-se de saber no que está se metendo. E se você quiser executar o Couchbase em um contêiner do Docker, deve conferir nosso documentação.

Autor

Postado por Laurent Doguin

Laurent é um nerd metaleiro que mora em Paris. Em sua maior parte, ele escreve código em Java e texto estruturado em AsciiDoc, e frequentemente fala sobre dados, programação reativa e outras coisas que estão na moda. Ele também foi Developer Advocate do Clever Cloud e do Nuxeo, onde dedicou seu tempo e experiência para ajudar essas comunidades a crescerem e se fortalecerem. Atualmente, ele dirige as Relações com Desenvolvedores na Couchbase.

Deixar uma resposta