Daniel Christofolli
O que é o Docker?
Docker é um software que permite a criação de um ambiente isolado para criar,
testar e implantar aplicações. Chamamos esse ambiente de container.
Como funciona?
O Docker usa o Kernel do Linux e alguns dos seus recursos para isolar
processos, permitindo a execução de cada contêiner de maneira
independente e permitindo melhor utilização da infraestrutura de maneira
segura
Virtual Machines x Containers
Dockerfile
Arquivo com a receita para a criação de uma imagem
Contém comandos e configurações que serão usados no
build da nova imagem
Contém, basicamente:
● Imagem base
● Instalação de programas
● Execução de serviços
Dockerfile
Instruções
● WORKDIR -> Define a pasta home do container
● ENTRYPOINT -> Ponto de entrada do container. Geralmente define-se o
comando ou script que chama o processo responsável pela execução do
container
● COPY -> Copia arquivos de uma pasta local para uma pasta dentro do
container
● VOLUME -> Cria uma pasta local para receber arquivos gerados dentro do
contêiner
Imagem
Modelo para criação de um container Docker
Criada no build do Dockerfile ou através de um comando
no terminal
Comandos
● docker pull {nome da imagem} -> faz o download de uma imagem do
dockerhub para a máquina local
● docker images -> lista todas as imagens presentes no pc
● docker run {nome da imagem} -> sobe um container baseado na imagem
escolhida
● docker rmi {id ou nome da imagem} -> remove uma imagem local
● docker search {palavra chave} -> lista todas as versões de imagens que
contém {palavra chave}
● docker ps -> lista os containers em execução
● docker rm {nome do container} -> remove um container
● docker inspect {id do container} -> detalhamento de um container
Docker Compose
Orquestrador de containers -> Ferramenta que configura e
organiza uma aplicação multi-container
Networking
Comunicação de containers através de uma rede
● Default network
○ Endereço IP dinâmico, dificulta a integração entre os containers
● Custom network
○ Definição de alias, permite que um container reconheça outro através de um nome
configurado manualmente
Vantagens no uso do Docker
● Economia de recursos => um contêiner só possui aquilo que realmente
precisa para rodar, usando menos espaço em disco, e menos recursos de
processamento e memória
● Reaproveitamento de imagens => imagens usadas como base ficam salvas
na máquina local, podendo ser reaproveitadas
● Ambientes similares => É possível ter um ambiente de desenvolvimento
idêntico ao de produção

Docker

  • 1.
  • 2.
    O que éo Docker? Docker é um software que permite a criação de um ambiente isolado para criar, testar e implantar aplicações. Chamamos esse ambiente de container.
  • 3.
    Como funciona? O Dockerusa o Kernel do Linux e alguns dos seus recursos para isolar processos, permitindo a execução de cada contêiner de maneira independente e permitindo melhor utilização da infraestrutura de maneira segura
  • 4.
  • 5.
    Dockerfile Arquivo com areceita para a criação de uma imagem Contém comandos e configurações que serão usados no build da nova imagem Contém, basicamente: ● Imagem base ● Instalação de programas ● Execução de serviços
  • 6.
    Dockerfile Instruções ● WORKDIR ->Define a pasta home do container ● ENTRYPOINT -> Ponto de entrada do container. Geralmente define-se o comando ou script que chama o processo responsável pela execução do container ● COPY -> Copia arquivos de uma pasta local para uma pasta dentro do container ● VOLUME -> Cria uma pasta local para receber arquivos gerados dentro do contêiner
  • 7.
    Imagem Modelo para criaçãode um container Docker Criada no build do Dockerfile ou através de um comando no terminal
  • 8.
    Comandos ● docker pull{nome da imagem} -> faz o download de uma imagem do dockerhub para a máquina local ● docker images -> lista todas as imagens presentes no pc ● docker run {nome da imagem} -> sobe um container baseado na imagem escolhida ● docker rmi {id ou nome da imagem} -> remove uma imagem local ● docker search {palavra chave} -> lista todas as versões de imagens que contém {palavra chave} ● docker ps -> lista os containers em execução ● docker rm {nome do container} -> remove um container ● docker inspect {id do container} -> detalhamento de um container
  • 9.
    Docker Compose Orquestrador decontainers -> Ferramenta que configura e organiza uma aplicação multi-container
  • 10.
    Networking Comunicação de containersatravés de uma rede ● Default network ○ Endereço IP dinâmico, dificulta a integração entre os containers ● Custom network ○ Definição de alias, permite que um container reconheça outro através de um nome configurado manualmente
  • 11.
    Vantagens no usodo Docker ● Economia de recursos => um contêiner só possui aquilo que realmente precisa para rodar, usando menos espaço em disco, e menos recursos de processamento e memória ● Reaproveitamento de imagens => imagens usadas como base ficam salvas na máquina local, podendo ser reaproveitadas ● Ambientes similares => É possível ter um ambiente de desenvolvimento idêntico ao de produção