Tutorial do Docker para iniciantes: noções básicas, Archiarquitetura, contêineres
⚡ Resumo Inteligente
O Docker é uma plataforma de conteinerização que empacota aplicações e suas dependências em contêineres portáteis e leves. Esta visão geral explica a arquitetura do Docker e sua instalação. Ubuntu, comandos essenciais e como os contêineres diferem das máquinas virtuais tradicionais para uma entrega de software mais rápida.
O Docker é uma das plataformas de conteinerização mais populares usadas na computação moderna. DevOps e fluxos de trabalho na nuvem. Este tutorial de Docker para iniciantes explica o que é o Docker, como funciona sua arquitetura e como instalá-lo na nuvem. Ubuntue os comandos básicos usados para gerenciar imagens e contêineres.
O que é Docker?
Estivador O Docker é uma plataforma de desenvolvimento de software para virtualização que permite a execução de múltiplos sistemas operacionais no mesmo host. Ele ajuda a separar a infraestrutura das aplicações, possibilitando a entrega rápida de software. Diferentemente dos hipervisores, que são usados para criar máquinas virtuais (VMs), o Docker realiza a virtualização em nível de sistema, utilizando unidades chamadas contêineres Docker.
Os contêineres Docker são executados sobre o sistema operacional do host, como mostrado na imagem abaixo. Isso melhora tanto a eficiência quanto a segurança. Você também pode executar mais contêineres do que máquinas virtuais na mesma infraestrutura, pois os contêineres utilizam menos recursos.

Ao contrário das máquinas virtuais, que podem se comunicar diretamente com o hardware do host (por exemplo, um adaptador Ethernet que cria mais adaptadores virtuais), os contêineres Docker são executados em um ambiente isolado sobre o sistema operacional do host. Mesmo que seu host execute Windows, você pode correr Linux imagens dentro de contêineres com a ajuda de Hyper-V, que cria automaticamente uma pequena máquina virtual para virtualizar a imagem base.
Agora que você já sabe o que é o Docker, vamos analisar os principais motivos pelos quais as equipes o escolhem.
Por que usar o Docker?
Aqui estão os principais motivos para usar o Docker:
- Docker é um software usado para virtualização, permitindo múltiplos processos. sistemas operacionais para executar no mesmo host.
- O Docker é uma aplicação cliente-servidor, o que significa que os clientes comunicam com um servidor.
- As imagens do Docker funcionam como o "código-fonte" dos contêineres; você as utiliza para construir.
- O Docker suporta dois tipos de registros: públicos e privados.
- Os contêineres são as unidades organizacionais do Docker. Em termos simples, uma imagem é um modelo e um contêiner é uma cópia desse modelo; portanto, você pode executar vários contêineres a partir da mesma imagem.
Esses benefícios decorrem da forma como o Docker foi projetado. A seção a seguir detalha a arquitetura do Docker e seus componentes principais.
Estivador Archiarquitetura
Neste tutorial sobre contêineres Docker, vamos analisar os principais componentes da arquitetura Docker.
Motor Docker
O Docker é uma aplicação cliente-servidor, o que significa que temos clientes que encaminham requisições para um servidor. O daemon do Docker, chamado dockerd, é o mecanismo do Docker que representa o servidor. O daemon e os clientes podem ser executados no mesmo host ou em um host remoto, e se comunicam por meio de um binário cliente de linha de comando e um protocolo completo. API RESTful que interage com o dockerd.
Imagens Docker
As imagens Docker são o "código-fonte" dos nossos contêineres; nós as usamos para construir contêineres. As imagens podem ter software pré-instalado, o que acelera a implantação. Elas são portáteis e você pode usar imagens existentes ou criar as suas próprias.
Registros do Docker
O Docker armazena as imagens que criamos em registros. Existem registros públicos e privados. O Docker possui um registro público chamado Hub do Docker, onde você também pode armazenar imagens de forma privada. O Docker Hub possui milhões de imagens que você pode começar a usar imediatamente.
Contêineres Docker
Os contêineres são as unidades organizacionais do Docker e um de seus conceitos básicos. Quando criamos uma imagem e a executamos, estamos executando-a dentro de um contêiner. A analogia com contêineres é usada devido à portabilidade do software que roda dentro dele: você pode movê-lo, "enviá-lo", modificá-lo, gerenciá-lo, criá-lo ou destruí-lo, assim como navios de carga lidam com contêineres reais.
Em termos simples, uma imagem é um modelo e um contêiner é uma cópia desse modelo. Você pode ter vários contêineres (cópias) da mesma imagem.
A interação entre esses diferentes componentes mostra como a tecnologia de contêineres Docker funciona em conjunto. Comandos como `docker pull` e `docker run`, que abordaremos mais adiante, permitem gerenciar esse fluxo de trabalho.
Com a arquitetura em mente, vamos instalar o Docker para que você possa experimentar esses componentes por conta própria.
Como instalar o Docker no Linux/Ubuntu
A seguir, um processo passo a passo para instalação do Docker no Linux/Ubuntu:
Passo 1) Para instalar o Docker, você precisa dos pacotes DEB da equipe do Docker. Primeiro, alguns pré-requisitos. Ubuntu São necessários pacotes. Use o comando abaixo para instalá-los.
$ sudo apt-get install \ apt-transport-https \ ca-certificates curl \ software-properties-common
*o sinal “\” não é necessário ele é usado para a nova linha, se quiser você pode escrever o comando sem usar “\” em apenas uma linha.
Passo 2) Adicione a chave GPG oficial do Docker com a impressão digital. Use o comando Docker abaixo para inserir a chave GPG.
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Passo 3) Em seguida, adicione o repositório APT do Docker usando o comando abaixo.
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
Você poderá ser solicitado a confirmar que deseja adicionar o repositório e que a chave GPG seja adicionada automaticamente ao seu host. O comando `lsb_release` deverá preencher o arquivo. Ubuntu versão de distribuição do seu host.
Passo 4) Após adicionar a chave GPG, atualize as fontes APT usando o comando Docker abaixo.
$ sudo apt-get update
Agora você pode instalar o próprio pacote Docker.
Passo 5) Após a atualização das fontes do APT, inicie a instalação dos pacotes Docker em Ubuntu usando o comando Docker abaixo.
$ sudo apt-get install docker-ce
O comando acima instala o Docker e outros pacotes necessários. Antes da versão 1.8.0 do Docker, o nome do pacote era lxc-docker, e entre as versões 1.8 e 1.13, o nome do pacote era docker-engine.
OBSERVAÇÃO: Docker para Windows exige Windows 10 Pro ou Enterprise versão 14393, ou Windows Servidor 2016 RTM, para executar.
Como usar o Docker usando comandos básicos do Docker
Veja como usar o Docker com alguns comandos básicos.
O comando mais básico que você deve executar após instalar o Docker é o `docker info`, como mencionado anteriormente.
$ sudo docker info
Você deverá obter um resultado semelhante ao seguinte.
Como mostrado no exemplo do Docker acima, podemos ver informações sobre os contêineres do Docker: quantos estão em execução, pausados ou parados e quantas imagens foram baixadas. Agora, vamos obter nossa primeira imagem.
$ sudo docker pull alpine
Com esse comando, estamos instruindo o Docker a baixar a imagem "alpine", obtendo-a do registro público na versão mais recente, que é a definida por padrão.
*alpine é uma imagem Docker mínima baseada em Alpine Linux com um índice de pacote completo e apenas 5 MB de tamanho.
Se quisermos executar a imagem como um contêiner, usamos o seguinte comando.
$ sudo docker run -i -t alpine /bin/bash
Executar o comando nos leva diretamente ao terminal Alpine. A flag -i mantém a entrada padrão (STDIN) aberta no contêiner, mesmo quando você não está conectado a ele; essa entrada padrão persistente é metade do que você precisa para um shell interativo. A flag -t é a outra metade e instrui o Docker a atribuir um pseudo-tty ao contêiner. Juntas, elas nos fornecem um shell interativo no novo contêiner. Saímos do contêiner com um simples comando de saída.
Agora, neste tutorial básico de Docker, podemos tentar executar um Ubuntu imagem.
$ sudo docker run -it ubuntu /bin/bash
Observe que o Docker verifica a imagem localmente e, caso ela não esteja presente, a imagem é obtida automaticamente da biblioteca de imagens. Mais uma vez, temos um shell interativo em execução. Também podemos nomear os contêineres à medida que os executamos.
$ sudo docker run –-name our_container -it ubuntu /bin/bash
Em seguida, saímos novamente. Também podemos executar um contêiner que criamos anteriormente sem um shell interativo.
$ sudo docker start container_name
E paramos o contêiner digitando docker stop nome_do_contêiner.
$ sudo docker stop container_name
Se quisermos ver todos os contêineres em execução, basta executar o seguinte comando.
$ docker ps
Para todos os contêineres, adicionamos "-a" ao final do mesmo comando, como em `docker ps -a`. Esse comando exibe o ID do contêiner, qual imagem ele utiliza, quando foi criado, seu status de execução, as portas expostas e um nome gerado aleatoriamente para facilitar o gerenciamento.
Ao executar contêineres, muitas vezes queremos saber quantos recursos eles estão utilizando. Para isso, podemos usar o seguinte comando.
$ docker stats
Você também pode ver quais imagens baixou localmente, juntamente com informações sobre elas.
$ sudo docker images
O comando no exemplo do Docker acima exibe cada imagem do Docker com uma etiqueta que mostra a versão da imagem, um ID de imagem exclusivo, a data de criação e o tamanho da imagem.
Para entender por que os contêineres representam uma melhoria tão grande, é útil analisar como a virtualização evoluiu.
O que é Virtualização?
Antes, implantar um serviço era um processo lento e trabalhoso. Os desenvolvedores escreviam o código e, em seguida, a equipe de operações o implantava em máquinas físicas, onde precisavam ficar atentos às versões das bibliotecas, patches e compiladores da linguagem para garantir o funcionamento correto do código. Se houvesse bugs ou erros, o processo recomeçava do zero: os desenvolvedores corrigiam o problema e a equipe de operações reimplantava o serviço.
As coisas melhoraram com a criação dos hipervisores. Os hipervisores executam múltiplos sistemas operacionais. máquinas virtuaisou VMs, no mesmo host, que podem estar em execução ou desligados. As VMs reduziram bastante o tempo de espera para implantação de código e correção de bugs, mas o verdadeiro divisor de águas foram os contêineres Docker.
A popularidade do Docker também é impulsionada por ferramentas de orquestração que gerenciam contêineres em grande escala, como... KubernetesAntes de prosseguirmos, aqui está uma breve referência dos comandos mais importantes do Docker.
Comandos importantes do Docker
Abaixo estão os comandos importantes do Docker:
| Command | Descrição |
|---|---|
| informações da janela de encaixe | Comando de Informação |
| puxão de encaixe | Baixe uma imagem |
| docker run -i -t nome_imagem /bin/bash | Execute a imagem como um contêiner |
| docker iniciar nosso_container | Iniciar contêiner |
| docker parar container_name | Parar contêiner |
| Docker PS | Lista de todos os contêineres em execução |
| estatísticas do docker | Informações do contêiner |
| imagens docker | Lista de imagens baixadas |
| Limpeza do Docker | Mate todos os contêineres em execução. |
Leia também estes Perguntas e respostas da entrevista de emprego do Docker Para iniciantes e profissionais experientes.


