Conhecendo o Docker – Parte #2

26 jan

Fala galera, beleza? 👍🏼
Dando continuidade na série de posts sobre o Docker , vamos para a parte 2, onde vamos conhecer um pouco mais sobre essa incrível e poderosa solução.

Na parte 2 iremos ver um pouco do gerenciamento dos container, como limitar a memória, realizar auditoria no container, executar comandos remotamente, e muito mais.

No post anterior vimos a diferença entre maquina virtual e container, vimos também a instalação e como subir um container do zero.
Se você é novo por aqui e ainda não viu o post anterior, que é parte #1 clica👉🏼 aqui , é 👉🏼 aqui mesmo! 🐳 👀

Subindo um Container 🐳

O primeiro passo é subir um container, vamos subir um container com a imagem do CentOS 6.9.

Vamos também verificar a versão do container criado.

Verificando Alterações no Container 🐳

Um dos parâmetros mais útil do docker, é o “diff”, com ele é possível verificar alterações realizadas nos containers.
Vamos sair do nosso container, lembre-se, para sair do container utilize as teclas “ctrl”+”p”+”q”:

Pronto, voltamos ao Host e vamos verificar se nosso container está em execução:

Isso indica que saimos do container da maneira correta 🙂

Agora vamos executar o comando abaixo para verificar as alterações que fizemos até o momento em nosso container.

Nenhuma alteração, vamos voltar ao console do container e instalar o pacote do “vim” por exemplo.

Agora vamos instalar o “vim” e na sequência limpamos o cache do yum.

Voltamos ao console principal do Docker, pressione as teclas “ctrl”+ “p” + “q”.

E vamos executar novamente o comando com o parâmetro “diff”.

Reparem na imagem acima, que temos vários arquivos que foram adicionados ou alterados em nosso container.
O parâmetro “diff” é muito útil quando precisamos analisar certas alterações nos containers.

Executando comandos no Container pelo Host Principal

No docker temos um parâmetro muito interessante que nos possibilita executar comandos no container sem precisar conectar ao console do container, muito útil quando queremos ver um determinado processo rodando, ou executar alguma rotina.
Esse parámetro é o “exec”, veja abaixo como podemos utiliza-lo.

Pegue o container-id do container desejado.

Verificando os processos rodando no container.

Podemos também visualizar arquivos.

Inspecionando o Container

Com o parâmetro “inspect” é possível verificarmos todas as configurações de um container, informações sobre configurações de rede, volumes, memória, cpu, data de criação do container, status e etc.

Podemos utilizar o ” | grep ” para filtrar por alguma configuração em especifico, abaixo estarei filtrando o IP do container.

Verificando o Processamento e Desempenho do Container

Para ver como anda o processamento, memória e desempenho de um container, utilizamos o parâmetro “stats”.

O consumo do container acima é bem baixo pois o mesmo foi levantando para criarmos esse tutorial, mas é interessante analisar um container em produção, rodando com serviços de alta performance por exemplo.

Definindo Limite de Memória ao Container

Para limitar a memória de um container, ou seja, configurar uma memória fixa a um determinado container é necessário que o parâmetro “-m” seja passado logo na criação do container.

Por exemplo, abaixo criamos um container com limite de 512Mb com Ubuntu.

Agora voltamos ao console principal e utilizamos um comando que vimos anteriormente, que é o parâmetro “stats”

Para voltar ao console do Host Principal utilize “ctrl” + “p” + “q”

Reiniciando um Container

Se você instalou um serviço ou um pacote no seu container, e por algum motivo quer reiniciar o mesmo, saiba que o parâmetro “stop” e “start” não vai te ajudar nesse sentido. Para fazer um reboot no container, temos o parâmetro “restart”, veja abaixo:

E podemos utilizar o parâmetro “exec” que vimos hoje para verificar o “uptime” do container.

Espero ter contribuído de alguma forma para passar um pouco de informação pra quem está começando a entender o mundo DevOps e Docker. Existem diversos sites na internet com conteúdo muito mais avançado que esse que preparei, porém quis abordar assunto para o pessoal que está iniciando a entender toda essa nova metodologia.

Dúvidas, comentário e sugestões postem nos comentários…
👋🏼  Valeu! e até a próxima!


Johnny Ferreira
johnny.ferreira.santos@gmail.com
http://www.tidahora.com.br

 


 

Facebook Comentários