Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Docker for beginners

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

Docker for beginners

O que é o Docker?

Docker é uma plataforma Open Source que possibilita o empacotamento de uma aplicação dentro de um container.

Avatar for Gilberto  Bueno

Gilberto Bueno

April 26, 2021

More Decks by Gilberto Bueno

Other Decks in Technology

Transcript

  1. Docker é uma plataforma Open Source que possibilita o empacotamento

    de uma aplicação dentro de um container. O que é Docker?
  2. Container Container é uma unidade padrão de software que empacota

    o código e todas as suas dependências para que o aplicativo seja executado de maneira rápida e confiável de um ambiente para outro. https://dockr.ly/2ZlhOs9
  3. Por que devo usar Docker? Rodar um projeto localmente é

    muito rápido, simples e fácil. Então, por que devo usar Docker? Quais suas vanta ens?
  4. Vanta ens • Possibilidade de ter as mesmas confi urações

    em ambientes diferentes • Evitar a necessidade de ter tudo instalado em sua máquina • Rápida inte ração de novos membros no time • Evita o famoso “na minha máquina funciona”
  5. Desvanta ens • Utiliza muitos recursos do hardware • Dependendo

    de sua necessidade, a confi uração é um pouco chata
  6. Iniciando com Docker Depois de instalado, di ite o comando

    docker em seu terminal. Caso esteja instalado corretamente, uma série de outros comandos serão listados:
  7. Containers x Ima es Container: é o local onde a

    sua aplicação ficará rodando. 
 Ima em: é semelhante a um snapshot. Permite a outros desenvolvedores os mesmos recursos e confi urações de seu container.
  8. Dockerfile É um arquivo de texto que contém as instruções

    necessárias para criar uma nova ima em de contêiner. Essas instruções incluem a identificação de uma ima em existente a ser usada como uma base, comandos a serem executados durante o processo de criação da ima em e um comando que será executado quando novas instâncias da ima em de contêiner forem implantadas.
  9. Docker Compose É uma ferramenta do Docker que, a partir

    de diversas especificações, permite subir diversos containeres e relacioná-los através de redes internas.
  10. Volumes O Docker possui um mecanismo de erenciamento de volumes

    que com ele é possível compartilhar-mos um volume da nossa máquina com o container. Basicamente, você pode “sincronizar” uma pasta/arquivo em sua máquina com seu container.
  11. Conectando Banco de Dados A ora que já temos nossa

    aplicação rodando, vamos fazer al umas alterações em nosso docker-compose.yaml para que possamos utilizar um banco de dados em nossa aplicação
  12. Declarações Adicionais no Dockerfile WORKDIR A instrução WORKDIR define um

    diretório de trabalho para outras instruções Dockerfile, como RUN, CMD e também o diretório de trabalho para executar instâncias da ima em do container.
  13. Declarações Adicionais no Dockerfile RUN 
 A instrução RUN especifica

    os comandos a serem executados e capturados na nova ima em de contêiner. Esses comandos podem incluir itens como a instalação de software, a criação de arquivos e diretórios e a criação da confi uração do ambiente.
  14. Declarações Adicionais no Dockerfile COPY 
 A COPY é uma

    instrução que copia os arquivos e diretórios para o sistema de arquivos do container. Os arquivos e diretórios devem estar em um caminho relativo ao Dockerfile.
  15. Declarações Adicionais no Dockerfile ADD A instrução ADD é como

    a instrução de cópia, mas com ainda mais recursos. Além de copiar arquivos do host para a ima em de contêiner, a instrução ADD também pode copiar arquivos de um local remoto com uma especificação de URL.
  16. Declarações Adicionais no Dockerfile CMD A instrução CMD, define o

    comando padrão a ser executado durante a implantação de uma instância da ima em do contêiner. Por exemplo, se o contêiner estiver hospedando um servidor Web NGINX, o CMD pode incluir instruções para iniciar o servidor Web com um comando como n inx.exe. Se várias instruções CMD forem especificadas em um Dockerfile, somente a última será avaliada.