Docker Flashcards

1
Q

Qual a solução que o Docker traz?

A
  • Execução de cada componente da Aplicação em um container separado.
  • Cada Container possui suas Libs/Deps
  • ## Tudo em uma mesma VM/SO, mas em ambientes(containers) separados.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

É possível instalar o Docker em uma máquina com Windows, e executar containers com Linux.

A

CORRETO.
Para isso utiliza-se:
WSL ou Docker Desktop

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Vantagens do Container em relação a uma VM.

A
  • Baixa utilização de Recursos. (Apenas uma pequena parte do Kernel)
  • Baixo consumo de Disco(MB).
  • Inicialização(segundos)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Um container pode ser criado em uma VM.

A

CORRETO.
Por exemplo em uma instância EC2 podem ser criados centenas ou milhares de containers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Docker Hub

A

Repositório público do Docker com muitas aplicações (Imagens) disponíveis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quais imagens podem ser obtidas no Docker hub?

A

SO’s, BD’s, Serviços, ferramentas mais utilizadas. Após instalar o Docker, escolha as imagens e execute o comando do Docker. Ex: Docker run ubuntu/ Docker run node/ Docker run mysql

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Imagem x Container

A

Imagem = Pacote / template
Imagem => Usada para criar um ou mais Containers.
Container => Instâncias das imagens executadas de forma isolada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qual a finalidade do Dockerfile?

A

Criar as Imagens das aplicações. Assim, a imagem pode ser executada em qualquer host.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

O principal objetivo do Docker é…

A

empacotar e Containerizar aplicações para serem implementados em qualquer lugar a qualquer momento

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Edições do Docker

A

Community Edition (free)
Enterprise Edition (paga)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

O que faz o comando docker run

A

Executa um container a partir de uma imagem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

docker ps

A

lista todos os containers em execução.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

docker ps -a

A

lista TODOS os containers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

docker ps -f status=exited

A

permite filtrar containers pelo status

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

docker stop container_id ou container_name

A

Para um container em execução.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

docker rm container_id ou container_name

A

remove containers com status: stopped ou exited

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

docker kill container_id ou container_name

A

mata containers com status: stopped ou exited

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

docker images

A

lista as imagens disponíveis (local)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

docke rmi image_id(curto ou longo), tags ou digest

A

Usado para remover/deletar imagens.
OBS: Vc deve garantir que NENHUM CONTAINER esteja atrelado à imagem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

docker pull image

A

Download de uma imagem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Nomeando containers

A

docker run -d –name container-name image:tag

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Expondo/Mapeando portas em containers

A

docker run -d -p 3000:80 –name my-ctr nginx:mainline:alpine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Docker Inspect

A

Serve para checar detalhes dos containers.
docker inspect container_id OU
docker inspect container_name

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Docker Logs

A

Lista os Logs de um container em execução
docker logs container_id OU
docker logs container_name

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Docker cheat sheet

A

manual com comandos do Docker.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

docker stop $(docker ps -q)

A

$(docker ps -q) - coloca como variável todos os ctr em execução.
para que sejam parados todos de uma vez - docker stop

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Removendo ctrs parados

A

Primeiro busque pelos ctrs parados:
docker ps -aq
Depois execute o comando rm tendo como variável a pesquisa anterior:
docker rm $(docker ps -aq)

28
Q

O que é preciso para criar Imagens?

A

Dockerfile + Docker Build = Imagens

29
Q

O que é o DockerFile?

A

Arquivo de texto(Instruções + argumentos) simples com todas as instruções para implantação de uma aplicação:
Nele temos:
- Base Image
- Base Directory
- Commands
- Application Port
- Files
- Entrypoint
Instruções sempre iniciam com FROM e a ordem faz a diferença.

30
Q

Docker Layer(camada)

A
  • As imagens são criadas pelo comando ‘docker build’.
  • Para cada linha das instruções, uma nova ‘layer’ é criada em cache.
  • cada layer armazena apenas as alterações da camada anterior.
31
Q

Listando volumes no Docker

A

docker volume ls

32
Q

Inspecionando volumes no Docker

A

docker volume inspect meuvolume

33
Q

Criando e removendo bkps de volumes no Docker

A

criando - docker volume create bkp-vol
removendo - docker volume rm bkp-vol

34
Q

Na estrutura do Yaml, quais os três tipos de bloco de construção?

A

Chave/Valor
Array/Lista
Dictionary/Map

35
Q

Yaml - Exemplo de par Chave/Valor

A

Key: Value
Fruit: Pineapple

36
Q

Yaml - Exemplo de
Array/Lista

A

Key:
- Value1
- Value2
Country
- Portugal
- Senegal

37
Q

Yaml - Exemplo de Dictionary/Map

A

Key:
- Key: value
- Key: value
AWS:
networking: VPC
compute: EC2
AZURE:
networking: VNET
compute: VM

38
Q

Estrutura do Yaml

A
  • Case Sensitive
  • o final da linha indica o final de uma instrução
  • Sugerido para INDENTAÇÃO - 2 ESPAÇOS.
  • # para inserir comentários.
39
Q

Como validar o Yaml file?

A

http://www.yamllint.com
O VScode tbm tem extensões que fazem a validação.

40
Q

O que é o Docker Compose?

A
  • Ferramenta que executa aplicativos Docker em vários containers.
  • O arquivo yaml é usado para configurar os serviços de uma aplicação.
  • Com um único comando (docker compose up) todos os serviços de uma aplicação são criados e iniciados.
41
Q

docker compose build - Instrui o Docker a criar uma imagem com base…

A

no local do código da aplicação

42
Q

Comandos:
docker compose up

A

inicia o compose

43
Q

Comandos:
docker compose up -d

A

inicia o compose no modo dettached

44
Q

Comandos:
docker compose down

A

para o compose

45
Q

Comandos:
docker compose ps

A

Checa os componentes do compose (containers, services)

46
Q

O que é Orquestração de Containers?

A

Conjunto de ferramentas e scripts para automatizar a implementação, gerenciamento, escalonamento e as redes dos containers. O Swarm é a solução da Docker para fazer isso.

47
Q

Cite 4 soluções para orquestração de containers?

A

Kubernets
Swarm(Docker)
Openshift
Rancher

48
Q

Como funciona o Docker Swarm?

A

Ele combina máquinas Docker em um único Cluster Swarm e distribui a aplicação em máquinas Docker separadas(Alta Disponibilidade e Balanceamento de carga).

49
Q

Análise tática do Docker Swarm

A

suponha que em um haja um cluster de 4 VMs/Server.
Uma será definida como Manager com o comando docker swarm init
e devolverá um token.
As demais máquinas serão workers, entrando no cluster com o comando docker swarm join + token devolvido pela manager.

50
Q

Qual comando da VM manager é utilizado para recuperar o Token para que as workers sejam adicionadas?

A

docker swarm join-token manager

51
Q

Qual comando da VM manager é utilizado para listar os nós?

A

docker swarm node ls

52
Q

Qual comando da VM manager é utilizado para criar um serviço com 3 réplicas?

A

docker service create –name nginx-swarm –replicas 3 -p 80:80 nginx

53
Q

É prática recomendada não ter…

A

carga de trabalho no Nó da VM manager.

54
Q

Qual comando da VM manager é utilizado para listar os serviços?

A

docker service ls

55
Q

Qual comando da VM manager é utilizado para inspecionar os serviços?

A

docker service inspect iddoserviço

56
Q

Qual comando da VM manager é utilizado para listar containers de serviço de swarm?

A

docker service ps iddoserviço

57
Q

Qual comando de uma VM WORKER é utilizado para
que a mesma deixe de fazer parte de um swarm?

A

docker swarm leave

58
Q

Qual comando de uma VM manager é utilizado para
que a mesma deixe de fazer parte de um swarm?

A

docker swarm leave -f

CUIDADO, POIS ISSO QUEBRARÁ O SWARM.

59
Q

Qual comando da VM manager é utilizado para remover nós de uma swarm?

A

docker node rm iddonó.

OBS: O NÓ DEVE ESTAR COM STATUS DOWN

60
Q

Qual comando da VM manager é utilizado para remover serviços de uma swarm?

A

docker service rm iddoserviço

61
Q

Qual comando da VM manager é utilizado para que a mesma pare de receber/executar tarefas?

A

docker node update –availability drain iddonó

62
Q

Qual comando da VM manager é utilizado para escalar serviços?

A

docker scale nomedoserviço=qtdereplicas

63
Q

Qual comando da VM manager é utilizado para atualizar a imagem de um serviço?

A

docker service update –image versaodaimagem iddoserviço

64
Q

Qual comando da VM manager é utilizado para conectar a um serviço de rede?

A

docker service update –network-add nomedarede iddoserviço

PARA ISSO FUNCIONAR, É NECESSÁRIA UMA REDE DO TIPO OVERLAY.

65
Q

Amazon ECR(Elastic CONTAINER REGISTRY)

A

Serviço de repositório privado, altamente disponível e seguro que facilita
o ARMAZENAMENTO e o GERENCIAMENTO de imagens de containers Docker.

66
Q

Amanzon ECS(Elastic CONTAINER SERVICE)

A

Serviço de ORQUESTRAÇÃO DE CONTAINERS altamente escalável e de alto desempenho
para EXECUÇÃO DE CONTAINERS DOCKER na AWS.

67
Q
A