- 1. Conhecendo o Docker
- 1.1 Apresentação
- 1.2 Conhecendo o problema
- 1.3 Conflitos e versionamento
- 1.4 Como containers funcionam
- 1.5 Containers por baixo dos panos
- 1.6 Instalando o Docker no Windows
- 1.7 Preparando o ambiente: Windows
- 1.8 Instalando o Docker no Linux
- 1.9 Preparando o ambiente: Linux
- 2. Os primeiros comandos
- 2.1 Conhecendo o Docker Hub
- 2.2 O comando docker run
- 2.3 Fluxo da criação de containers
- 2.4 Etapas do run
- 2.5 Outros comandos importantes
- 2.6 Run vs Exec
- 2.7 Mapeando portas
- 2.8 Visualizando mapeamentos
- 2.9 Faça como eu fiz: Acessando portas externamente
- 3. Criando e compreendendo imagens
- 3.1 Entendendo imagens
- 3.2 Detalhes sobre imagens
- 3.3 Criando a primeira imagem
- 3.4 Instruções no Dockerfile
- 3.5 Faça como eu fiz: Construindo uma imagem
- 3.6 Incrementando a imagem
- 3.7 ARG vs ENV
- 3.8 Subindo a imagem para o Docker Hub
- 4. Persistindo dados
- 4.1 O problema de persistir dados
- 4.2 Tipos de persistência
- 4.3 Utilizando bind mounts
- 4.4 Criando um bind
- 4.5 Utilizando volumes
- 4.6 Vantagens de volumes
- 4.7 Faça como eu fiz: Criando um volume
- 4.8 Utilizando tmpfs
- 5. Comunicação através de redes
- 5.1 Conhecendo a rede bridge
- 5.2 Redes do Docker
- 5.3 Criando uma rede bridge
- 5.4 As redes none e host
- 5.5 Host vs None
- 5.6 Comunicando aplicação e banco
- 5.7 Faça como eu fiz: Comunicação de containers
- 6. Coordenando containers
- 6.1 Conhecendo o Docker Compose
- 6.2 Utilização do Docker Compose
- 6.3 Definindo os serviços
- 6.4 Parâmetros para serviços
- 6.5 Faça como eu fiz: Coordenando containers
- 6.6 Complementando o Compose
- 7. Cluster com Docker Swarm Ver primeiro vídeo
- 7.1 Introdução
- 7.2 Ambiente e versões
- 7.3 Preparando o ambiente
- 7.4 Revisão Docker
- 7.5 O que é Docker Swarm?
- 7.6 Benefícios do Swarm
- 7.7 Usando a Docker Machine
- 7.8 Papel da Docker Machine
- 7.9 Para saber mais: Cloud e Docker Machine
- 7.10 Criando o cluster
- 7.11 Comando para criar clusters
- 7.12 Consolidando o seu conhecimento
- 8. Responsabilidade dos nós workers
- 8.1 Criando o primeiro worker
- 8.2 Nós workers
- 8.3 Listando e removendo nós
- 8.4 Restrição de comandos
- 8.5 Subindo um serviço
- 8.6 docker service vs docker run
- 8.7 Tarefas e o Routing Mesh
- 8.8 Acessando serviços
- 8.9 Consolidando o seu conhecimento
- 9. Gerenciando o cluster com managers
- 9.1 O papel do manager
- 9.2 Desastres no Swarm
- 9.3 Como fazer backup do Swarm
- 9.4 Caminho do backup
- 9.5 Criando mais managers
- 9.6 Identificando managers
- 9.7 Algoritmo de consenso RAFT
- 9.8 Exigências do RAFT
- 9.9 Consolidando o seu conhecimento
- 10. Separando as responsabilidades
- 10.1 Readicionando um manager
- 10.2 Removendo managers
- 10.3 Restringindo nós
- 10.4 Atualizando nós
- 10.5 Restringindo serviços
- 10.6 Aplicando constraints
- 10.7 Para saber mais: Outras restrições
- 10.8 Consolidando o seu conhecimento
- 11. Serviços globais e replicados
- 11.1 Serviços replicados
- 11.2 Nós e serviços replicados
- 11.3 Para saber mais: service scale
- 11.4 Serviços globais
- 11.5 Por que global?
- 11.6 Consolidando o seu conhecimento
- 12. Driver Overlay
- 12.1 A rede ingress
- 12.2 O papel da rede ingress
- 12.3 Service Discovery
- 12.4 Limitações da rede ingress
- 12.5 User-Defined Overlay
- 12.6 Redes customizadas
- 12.7 Para saber mais: Containers e Overlay
- 12.8 Consolidando o seu conhecimento
- 13. Deploy com Docker Stack
- 13.1 Lembrando do Docker Compose
- 13.2 Definindo o arquivo de composição
- 13.3 Analisando o yml
- 13.4 Subindo a stack
- 13.5 docker stack deploy
- 13.6 Para saber mais: Volumes no Swarm
- 13.7 Consolidando o seu conhecimento
- 14. Conclusão