‫Se você procurar na Web uma definição do que é um contêiner, muitas vezes
‫verá pessoas comparando contêineres a máquinas virtuais.
‫É verdade que existem algumas semelhanças, mas há tantas coisas que não são as mesmas.
‫Quero que façamos uma cópia de segurança e digamos que não os comparemos a máquinas virtuais. Porque realmente são apenas
‫um processo. Eles são um processo em
‫execução no sistema operacional do host, no nosso caso Linux. Vamos dar uma olhada porque é super fácil entender o conceito
‫que é realmente apenas um processo restrito dentro do nosso sistema operacional host e nada como uma máquina virtual.
‫Vamos começar um banco de dados do Mongo.
‫Nós vamos chamá-lo de mongo. Nós vamos rodá-lo no fundo.
‫E estamos usando a imagem do Mongo.
‫Tudo bem. Podemos ver que ele está em execução e o Docker também tem algo chamado
‫docker top que me permitirá listar os processos que estão sendo executados em um contêiner específico.
‫Vamos ver lá que temos um único processo chamado mongod.
‫Você pode ver que é o PID, que é o ID do processo. Nós também podemos fazer isso a partir do host. Como este é apenas um
‫processo executado em nosso sistema operacional
‫host, qualquer ferramenta host que eu usaria para examinar os processos verá esse processo.
‫Podemos usar uma lista de processos, por exemplo. Vou listar todos eles no sistema. Você realmente verá aqui, se
‫eu pesquisar, um deles é chamado de mongod. Você até perceberá que ele está sendo executado sob
‫uma identificação de processo diferente do restante do sistema.
‫E isso é apenas por causa das camadas de segurança que falaremos com os contêineres e como eles são
‫um pouco diferentes dos processos regulares em execução no host.
‫Podemos ver claramente aqui que este é um processo no host.
‫Não está escondido dentro de uma máquina virtual que não podemos acessar.
‫Está bem ali na nossa frente.
‫Se eu parar este contêiner,
‫você pode fazer um docker ps. Você verá que não está funcionando.
‫Você pode fazer um docker top mongo.
‫Não vai nos dar nada porque o contêiner não está funcionando.
‫E se fizermos um ps aux e procurarmos
‫o mongo
‫novamente, não veremos nada destacado nessa lista. Na verdade, estou procurando dentro do meu terminal.
‫Uma maneira mais fácil de fazer
‫isso seria fazer o ps aux e, em seguida, usar o grep, que é uma ferramenta de filtragem que irá procurar através da saída, e nós podemos dizer para procurar
‫pela palavra mongo.
‫A única coisa que realmente vai encontrar é o comando que acabei de executar para procurar a
‫palavra mongo.
‫Está listando isso. Esperaríamos ver outro comando
‫aqui embaixo dele, outra saída de
‫um processo, se estivesse de fato funcionando. Podemos iniciar o backup novamente, o docker start mongo, porque esse contêiner ainda
‫estava lá, simplesmente não sendo executado em
‫segundo plano, como se fosse um processo interrompido. Podemos fazer um docker ps novamente e ele volta a funcionar novamente.
‫Podemos fazer um docker top mongo novamente e ver que há um processo novamente rodando dentro do container.
‫Acabou de começar novo.
‫Só tem sido por seis segundos, como podemos ver aqui.
‫Se fizermos um ps aux grep mongo, você verá que agora estou realmente vendo o processo mongod.