Cadastre-se

CADASTRO

Em caso de não possuir CPF, por favor entre em contato conosco clicando aqui.

Ao informar meus dados, eu concordo com a Política de Privacidade

ReCaptcha
Entrar
Escola Superior de Redes

Data da publicação:

12/07/2021

Containers e Docker: o que são e como utilizar

Compartilhar

A palavra container é bastante utilizada até mesmo em português e designa, geralmente, volumosas caixas de embalagem para transporte, à longa distância (sobretudo por via marítima), de variadas mercadorias.

Porém, no mundo da programação, o termo tem outro significado: os containers e docker são utilizados em larga escala no desenvolvimento, testes e, principalmente, na produção de softwares.

São eles que permitem rodar múltiplos sistemas isolados dentro de um sistema operacional real.

O que são containers?

O container nada mais é do que um ambiente isolado, disposto em um servidor, que divide um único host de controle. Vamos voltar ao exemplo dos containers tradicionais para explicar melhor esse conceito.

Um navio cargueiro pode carregar diversos containers. Caso um dos recipientes seja danificado, os demais não são afetados. Afinal, são isolados, protegidos e estão carregando seus próprios produtos.

Trazendo para o mundo do desenvolvimento, cada container possui uma função e sua responsabilidade. Caso um deles sofra um dano, o funcionamento do sistema não para e a função afetada é redirecionada para um novo container.

Diferença entre containers e VMs

Os containers funcionam um pouco como as VMs, mas de uma maneira muito mais específica e granular.

Em uma máquina virtual, é possível utilizar diversos recursos e ferramentas, como Apache e PHP, porém tudo roda em um mesmo sistema operacional. Em caso de pane, todas as funcionalidades são afetadas.

No caso dos containers, a ideia é que cada um faça apenas um serviço e assuma uma só responsabilidade. Ou seja, seria um rodando com Apache e outro com PHP.

Desta forma, é possível isolar os processos de cada ferramenta, garantindo que nenhuma atrapalhe o funcionamento da outra.

Para serviços web, por exemplo, os containers deixam a infraestrutura muito mais intercambiável, eficiente e flexível.

Eles isolam um único aplicativo e suas dependências – todas as bibliotecas externas de software que o aplicativo precisa executar – tanto do sistema operacional subjacente quanto de outros containers. 

Todos os aplicativos em container compartilham um único sistema operacional comum (Linux ou Windows), mas eles são compartilhados entre um e outro e do sistema como um todo.

À primeira vista, eles podem até tornar a situação um pouco mais complexa, porém, principalmente nos servidores de produção, oferecem um ganho enorme em termos de escala e performance e, portanto, são uma ferramenta valiosa.

Docker e sua relação com containers

A tecnologia Docker usa o kernel do Linux e recursos do kernel como Cgroups e namespaces para segregar processos. Assim, eles podem ser executados de maneira independente. 

As ferramentas de container, incluindo o Docker, fornecem um modelo de implantação com base em imagens. Isso facilita o compartilhamento de uma aplicação ou conjunto de serviços, incluindo todas as dependências deles em vários ambientes.

O Docker também automatiza a implantação da aplicação (ou de conjuntos de processos que constituem uma aplicação) dentro desse ambiente de container.

Essas ferramentas baseadas nos containers Linux (o que faz com que o Docker seja exclusivo e fácil de usar) oferecem aos usuários acesso sem precedentes a aplicações, além da habilidade de implementar com rapidez e de ter total controle sobre as versões e distribuição.

Além disso, o software é open source e a comunidade trabalha constantemente para sua melhoria.

As vantagens do uso do Docker

  • O Docker permite um uso mais eficiente dos recursos do sistema;
  • As instâncias de aplicativos em container usam muito menos memória do que as máquinas virtuais, elas são inicializadas e interrompidas mais rapidamente e podem ser armazenadas muito mais densamente em um hardware host. Tudo isso equivale a menos gastos com TI;
  • A redução de custos irá variar dependendo de quais aplicativos estão em jogo e de quão intensivos os recursos podem ser, mas os containers funcionam invariavelmente como mais eficientes que as VMs. Também é possível economizar nos custos de licenças de software, porque é necessário muito menos instâncias do sistema operacional para executar as mesmas cargas de trabalho;
  • O Docker permite ciclos de entrega de software mais rápidos;
  • O software corporativo deve responder rapidamente a mudanças de condições. Isso significa que o escalonamento fácil atende à demanda e facilita a atualização para adicionar novos recursos conforme a necessidade do negócio;
  • Os containers Docker facilitam a colocação rápida de novas versões de software, com novos recursos de negócios, e a rápida reversão para uma versão anterior, se necessário. Eles também facilitam a implementação de estratégias como implantações em azul / verde;
  • O Docker permite a portabilidade de aplicativos;
  • Docker ajuda a arquitetura de microsserviços;
  • Os containers são leves, portáteis e facilitam a construção de software em linhas de pensamento avançadas, de modo que o desenvolvedor não está tentando resolver os problemas de amanhã com os métodos de desenvolvimento de ontem.

Limitações atuais no uso do Docker

O Docker não fornece as mesmas funcionalidades parecidas com UNIX que os containers Linux tradicionais oferecem. Isso inclui a capacidade de usar processos como cron ou syslog dentro do container, junto à aplicação.

O Docker também tem algumas limitações em questões como a limpeza de processos netos (grandchild) após o encerramento dos processos filhos (child), algo que é processado de forma natural nos containers Linux tradicionais.

Essas desvantagens podem ser mitigadas ao modificar o arquivo de configuração e configurar essas funcionalidade desde o início, algo que não é imediatamente óbvio em um primeiro momento.

Além disso, há outros subsistemas e dispositivos do Linux sem espaço de nomes. Incluindo os dispositivos SELinux, Cgroups e /dev/sd*.

Isso significa que, se um invasor adquirir controle sobre esses subsistemas, o host será comprometido. Para manter-se leve, o compartilhamento do kernel do host com os containers gera a possibilidade dessa vulnerabilidade na segurança.

Isso é diferente nas máquinas virtuais, que são mais firmemente segregadas a partir do sistema host.

Conclusão

Mesmo com desafios a serem enfrentados, não é por acaso que os containers estão se tornando cada vez mais populares. Eles reduzem a necessidade de contar com uma grande estrutura e permitem utilizar apenas um sistema operacional normal.

Como os containers ficam dispostos neste único ambiente, é muito mais fácil realizar a manutenção, além de ser mais leve e permitir a portabilidade.

Ficou interessado em se aprofundar nessa tecnologia? Conheça nosso curso de gestão de containers com Docker!

Uma resposta para “Containers e Docker: o que são e como utilizar”

  1. Avatar de Daniel Caixeta
    Daniel Caixeta

    Ótimo artigo …

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

posts recentes

  • 17 materiais de TI gratuitos para quem precisa se atualizar em tecnologia
    Governança de TI

    17 materiais de TI gratuitos para quem precisa se atualizar em tecnologia

    Materiais de TI gratuitos precisam fazer parte da rotina profissional de qualquer pessoa que atua trabalha ou deseja atuar trabalhar em tecnologia da informação e, também, da de líderes que desejam implementar uma estratégia de gestão de conhecimento nos times corporativos.  Em um setor marcado por ciclos tecnológicos cada vez mais curtos, alta interdependência entre […]


    05/03/2026
  • Inteligência Artificial para TI
    Inteligência Artificial

    Guia de inteligência artificial para TI: aplicações, fundamentos e muito mais

    Para assimilar este Guia de inteligência artificial para TI, você vai percorrer o seguinte trajeto: Cada um desses tópicos se desdobrará em discussões relevantes e atualizadas sobre o tema para criar uma estrutura que apresente como a IA funciona, por que ela se tornou indispensável para os profissionais de tecnologia e como utilizá-la de forma […]


    26/02/2026
  • Cloud híbrida vs multicloud
    Computação em Nuvem

    Cloud híbrida vs. multicloud: diferenças, usos e como escolher a melhor estratégia

    A discussão sobre cloud híbrida vs. multicloud ganha nova relevância em 2026, especialmente diante de um cenário marcado pela revisão de contratos de nuvem, pela sistematização do uso da inteligência artificial nas empresas e pela crescente pressão por eficiência financeira.  Após um ciclo intenso de adoção, muitas organizações passaram a reavaliar suas estratégias de nuvem […]


    19/02/2026
  • Treinamento em TI no setor público
    Temas Diversos

    Treinamento em TI no setor público: otimize projetos governamentais

    O treinamento em TI no setor público, sobretudo em projetos governamentais estratégicos, consolidou-se como um pilar para a eficiência da prestação de serviços. Afinal, a eficiência é um princípio constitucional da administração pública e deve também orientar a maturidade digital dos órgãos.  Dessa forma, não se trata de implantar sistemas isolados, mas, sim, de capacitar […]


    12/02/2026
  • Cursos de Governança de TI
    Governança de TI

    Cursos de governança de TI imperdíveis para você se especializar!

    Já sabe quais cursos de governança de TI podem gerar resultados reais na sua carreira? Este guia vai ajudar você a estruturar um plano de estudos estratégico e adequado para o cenário digital moderno.  Em meio à transformação digital acelerada, ao uso intensivo de dados, à inteligência artificial e à pressão regulatória crescente, a tecnologia […]


    05/02/2026
  • businesspeople planning glass wall 1
    Métodos Ágeis e Inovação

    Cultura ágil no setor público: mitos, desafios e o que tem dado certo

    Por que falar de cultura ágil no setor público é cada vez mais relevante? A pressão por serviços públicos mais eficientes, transparentes e acessíveis não surge apenas por causa do movimento de transformação digital. Ela decorre de um cenário mais amplo, marcado por restrições orçamentárias, aumento da complexidade regulatória e maior exigência por resultados mensuráveis […]


    29/01/2026
Ver todos os posts >