SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Docker como super
comando
Infradel Team
Quem somos
Infradel:
● Objetivo: Consultoria para migração de projetos
do modelo centralizado para cloud, com automação
e auto-serviço.
● Membros:
○ Rafael Gomes (PoA - Brasil)
○ Rafael Nunes (PoA - Brasil)
○ Augusto Amaral (PoA - Brasil)
○ Fernando Laimer (PoA - Brasil)
○ Ronak Jain (Belo Horizonte - Brasil)
○ Chris Briesemeister ( Chicago - EUA)
○ Ben Cornelius ( Chicago - EUA)
○ Freddy Coronel ( Quito - Equador)
● Principais tecnologias
○ Cloud (AWS)
○ Automação de infra (Ansible, Cloudformation)
○ Testes de infraestrutura (ServerSpec, Behave)
○ Container (Docker)
○ Programação (Python e Ruby)
Quem sou eu
Rafael Gomes:
● Soteropolitano
● Apaixonado por compartilhamento
● Consultor na Thoughtworks
● Blog: techfree.com.br
● Twitter/github: @gomex
● Áreas de interesse/foco:
○ Cultura DevOps
○ Cloud
○ Entrega contínua
○ Automação de infraestrutura
○ Teste de infraestrutura
○ Monitoramento
O que estou fazendo de relevante agora
Livro:
http://tinyurl.com/docker-devel
● Pague quanto quiser,
inclusive nada
● Não precisa saber
nada de Docker
● Licenciado com
Creative Commons
Conhece docker?
Container, baleia, isso faz algum sentido pra ti?
E entrega contínua?
Entregando valor continuamente
Produto ProdutoDesenvolvimento
Motivações
Motivações - O que tínhamos
python 2.7
modules
openssl
xmlsec1
Instalação manual Produto
Artefato
pipeline
Config manual
no servidor CI
agent1
agent2
agent3
devticketops
devsudo
git
server app A
server app B
server app C
Abordagem
Super comando
● Minimizar necessidade de
modificação no agente CI
● Permitir auto serviço no
pipeline
Super comandos
Objetivos:
● Utilizar o mesmo ambiente
que roda em produção na
máquina do desenvolvedor
● Construa uma vez, rode em
qualquer lugar (GNU/Linux)
● Padrão como vetor de
velocidade no
desenvolvimento
O que nós fizemos
Motivações - O que tínhamos
python 2.7
modules
openssl
xmlsec1
Instalação manual Produto
Artefato
pipeline
Config manual
no servidor CI
agent1
agent2
agent3
devticketops
devsudo
git
server app A
server app B
server app C
A ideia
Super comandos
Docker
Produtos
artefatos
pipeline
Config manual
do servidor CI
agent1
agent2
agent3
git
servers app A
servers app B
servers app C
commit Dockerfile
no git repo
python 2.7
modules
openssl
xmlsec1
O que foi feito
Super comandos
Docker
Produtos
Artefatos
pipeline
Config manual
no CI server
agent1
agent2
agent3
git
servers app A
servers app B
servers app C
commit Dockerfile
no git repo
Exemplos
Imagem CloudFormation
● python
● py-pip
● bash
● awscli
● boto3
Imagem Ansible
● python(2.7)
● py-pip
● openssl
● ca-certificates
● bash
● git
● openssh
● bash
● awscli
● ansible
● boto3
Exemplos dos super comandos
Exemplo da pipeline de entrega contínua
Exemplo da pipeline de entrega contínua
● Minização de custo
compartilhando agentes
CD
● Sem gargálos para os
usuários do CD
Super comandos
● Fácil reproduzir
localmente
Prós:
● Baixa necessidade de
administração nos agentes
do CD
● A escolha da distro do
agente CD não afetem os
usuários
● Tratamento de problemas
mais complexo
Toolset
Cons:
● Curva de aprendizado
(novo mindset, novas
ferramentas, etc.)
● Você precisa usar
containers docker para
todas tarefas
● Problemas de
performance no
agente afetam todos
os usuários
● Preste atenção na ordem o
Dockerfile na construção
da imagem
Toolset
Lições aprendidas
● Use scripts shell para
facilitar o build e execução
dos containers
● Use script shell para
gerenciar variáveis locais
● Mantenha o docker
atualizado
● Cluster docker?
Toolset
Próximos passos:
● Gerenciamento de
segredos (credstash?)
● Melhor
gerenciamento de
variáveis
Dúvidas?
Rafael Gomes:
twitter.com/gomex
rgomes@thoughtworks.com
twitter.com/thoughtworks_pt
Obrigado!

Mais conteúdo relacionado

Mais procurados

TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containersTDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containerstdc-globalcode
 
Testes com xUnit + Coding Dojo
Testes com xUnit + Coding DojoTestes com xUnit + Coding Dojo
Testes com xUnit + Coding DojoLetticia Nicoli
 
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...Agile Trends
 
ASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureGiovanni Bassi
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?Letticia Nicoli
 
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers tdc-globalcode
 
Práticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDEPráticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDESandro Andrade
 
Monitoramento de containers Docker
Monitoramento de containers DockerMonitoramento de containers Docker
Monitoramento de containers DockerJosé Barbosa
 
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amorMeetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amorStefan Teixeira
 
TDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps JavaTDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps Javatdc-globalcode
 
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...Stefan Teixeira
 
Docker: Uso no dia a dia de desenvolvimento
Docker: Uso no dia a dia de desenvolvimentoDocker: Uso no dia a dia de desenvolvimento
Docker: Uso no dia a dia de desenvolvimentoMarcela Carvalho
 
Kubernetes New Contributors Workshop - Brasil 2022
Kubernetes New Contributors Workshop - Brasil 2022Kubernetes New Contributors Workshop - Brasil 2022
Kubernetes New Contributors Workshop - Brasil 2022Ricardo Katz
 
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018Renato Groff
 
Jenkins - livre-se da parte chata do Java
Jenkins - livre-se da parte chata do JavaJenkins - livre-se da parte chata do Java
Jenkins - livre-se da parte chata do JavaFernando Boaglio
 
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018Docker: introdução e primeiros passos - Baixada NERD - Junho-2018
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018Renato Groff
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a TestesGregorio Melo
 
Estaleiro o uso de kubernetes no serpro
Estaleiro   o uso de kubernetes no serproEstaleiro   o uso de kubernetes no serpro
Estaleiro o uso de kubernetes no serproRicardo Katz
 
Integração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsIntegração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsGilmar Pupo
 

Mais procurados (20)

TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containersTDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
 
Testes com xUnit + Coding Dojo
Testes com xUnit + Coding DojoTestes com xUnit + Coding Dojo
Testes com xUnit + Coding Dojo
 
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...
Agile Tester – a importância da automação dos testes no DevOps - Sidnei Eiji ...
 
ASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e Azure
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?
 
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
 
Práticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDEPráticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDE
 
Monitoramento de containers Docker
Monitoramento de containers DockerMonitoramento de containers Docker
Monitoramento de containers Docker
 
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amorMeetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
 
TDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps JavaTDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps Java
 
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história ...
 
Docker: Uso no dia a dia de desenvolvimento
Docker: Uso no dia a dia de desenvolvimentoDocker: Uso no dia a dia de desenvolvimento
Docker: Uso no dia a dia de desenvolvimento
 
Kubernetes New Contributors Workshop - Brasil 2022
Kubernetes New Contributors Workshop - Brasil 2022Kubernetes New Contributors Workshop - Brasil 2022
Kubernetes New Contributors Workshop - Brasil 2022
 
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018
Docker + Bancos de Dados: isto é possível? - Databases SP - Março-2018
 
Jenkins - livre-se da parte chata do Java
Jenkins - livre-se da parte chata do JavaJenkins - livre-se da parte chata do Java
Jenkins - livre-se da parte chata do Java
 
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018Docker: introdução e primeiros passos - Baixada NERD - Junho-2018
Docker: introdução e primeiros passos - Baixada NERD - Junho-2018
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a Testes
 
Estaleiro o uso de kubernetes no serpro
Estaleiro   o uso de kubernetes no serproEstaleiro   o uso de kubernetes no serpro
Estaleiro o uso de kubernetes no serpro
 
Integração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsIntegração contínua em PHP com Jenkins
Integração contínua em PHP com Jenkins
 

Semelhante a Docker como super comando

Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...Renato Groff
 
12 factor app. Melhor com Docker
12 factor app. Melhor com Docker12 factor app. Melhor com Docker
12 factor app. Melhor com DockerWellington Silva
 
Docker e Kubernetes: Dicas e Truques - Dezembro-2019
Docker e Kubernetes: Dicas e Truques - Dezembro-2019Docker e Kubernetes: Dicas e Truques - Dezembro-2019
Docker e Kubernetes: Dicas e Truques - Dezembro-2019Renato Groff
 
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...Renato Groff
 
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...Renato Groffe
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Renato Groff
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Renato Groff
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Renato Groff
 
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...Renato Groff
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Renato Groff
 
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...Renato Groff
 
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019Renato Groff
 
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...Renato Groff
 
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018Renato Groff
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Renato Groff
 
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018Docker para Desenvolvedores .NET - .NET SP - Novembro-2018
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018Renato Groff
 
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018Renato Groff
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucaoFernando Ike
 

Semelhante a Docker como super comando (20)

Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Se...
 
12 factor app. Melhor com Docker
12 factor app. Melhor com Docker12 factor app. Melhor com Docker
12 factor app. Melhor com Docker
 
Docker e Kubernetes: Dicas e Truques - Dezembro-2019
Docker e Kubernetes: Dicas e Truques - Dezembro-2019Docker e Kubernetes: Dicas e Truques - Dezembro-2019
Docker e Kubernetes: Dicas e Truques - Dezembro-2019
 
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
 
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
 
Meetup-Churrops
Meetup-ChurropsMeetup-Churrops
Meetup-Churrops
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
 
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
 
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...
Docker + Kubernetes + Azure: opções disponíveis para uso de Containers na nuv...
 
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019
Docker: primeiros passos - Semana FCI - Mackenzie - Outubro-2019
 
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...
Docker: Conceitos e Primeiros Passos na utilização de Containers - Programand...
 
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Azure Talks - Agosto-2018
 
Docker
DockerDocker
Docker
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
 
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018Docker para Desenvolvedores .NET - .NET SP - Novembro-2018
Docker para Desenvolvedores .NET - .NET SP - Novembro-2018
 
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018
Docker de ponta a ponta - do Desenvolvimento à Nuvem - .NET SP - Outubro-2018
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 

Mais de Rafael Gomes

Dockerizando aplicações em uma Fintech
Dockerizando aplicações em uma FintechDockerizando aplicações em uma Fintech
Dockerizando aplicações em uma FintechRafael Gomes
 
Precisamos falar sobre teste de infra
Precisamos falar sobre teste de infraPrecisamos falar sobre teste de infra
Precisamos falar sobre teste de infraRafael Gomes
 
Cansei de trabalho manual, quero automatizar tudo!
Cansei de trabalho manual, quero automatizar tudo!Cansei de trabalho manual, quero automatizar tudo!
Cansei de trabalho manual, quero automatizar tudo!Rafael Gomes
 
Docker 1.12 - Swarm Mode
Docker 1.12 - Swarm ModeDocker 1.12 - Swarm Mode
Docker 1.12 - Swarm ModeRafael Gomes
 
Docker for tooling
Docker for toolingDocker for tooling
Docker for toolingRafael Gomes
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbixRafael Gomes
 
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12Rafael Gomes
 

Mais de Rafael Gomes (7)

Dockerizando aplicações em uma Fintech
Dockerizando aplicações em uma FintechDockerizando aplicações em uma Fintech
Dockerizando aplicações em uma Fintech
 
Precisamos falar sobre teste de infra
Precisamos falar sobre teste de infraPrecisamos falar sobre teste de infra
Precisamos falar sobre teste de infra
 
Cansei de trabalho manual, quero automatizar tudo!
Cansei de trabalho manual, quero automatizar tudo!Cansei de trabalho manual, quero automatizar tudo!
Cansei de trabalho manual, quero automatizar tudo!
 
Docker 1.12 - Swarm Mode
Docker 1.12 - Swarm ModeDocker 1.12 - Swarm Mode
Docker 1.12 - Swarm Mode
 
Docker for tooling
Docker for toolingDocker for tooling
Docker for tooling
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbix
 
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12
Gestão e monitoramento de redes e dispositivos com Zabbix - FISL12
 

Docker como super comando

  • 2. Quem somos Infradel: ● Objetivo: Consultoria para migração de projetos do modelo centralizado para cloud, com automação e auto-serviço. ● Membros: ○ Rafael Gomes (PoA - Brasil) ○ Rafael Nunes (PoA - Brasil) ○ Augusto Amaral (PoA - Brasil) ○ Fernando Laimer (PoA - Brasil) ○ Ronak Jain (Belo Horizonte - Brasil) ○ Chris Briesemeister ( Chicago - EUA) ○ Ben Cornelius ( Chicago - EUA) ○ Freddy Coronel ( Quito - Equador) ● Principais tecnologias ○ Cloud (AWS) ○ Automação de infra (Ansible, Cloudformation) ○ Testes de infraestrutura (ServerSpec, Behave) ○ Container (Docker) ○ Programação (Python e Ruby)
  • 3. Quem sou eu Rafael Gomes: ● Soteropolitano ● Apaixonado por compartilhamento ● Consultor na Thoughtworks ● Blog: techfree.com.br ● Twitter/github: @gomex ● Áreas de interesse/foco: ○ Cultura DevOps ○ Cloud ○ Entrega contínua ○ Automação de infraestrutura ○ Teste de infraestrutura ○ Monitoramento
  • 4. O que estou fazendo de relevante agora Livro: http://tinyurl.com/docker-devel ● Pague quanto quiser, inclusive nada ● Não precisa saber nada de Docker ● Licenciado com Creative Commons
  • 5. Conhece docker? Container, baleia, isso faz algum sentido pra ti?
  • 6. E entrega contínua? Entregando valor continuamente Produto ProdutoDesenvolvimento
  • 8. Motivações - O que tínhamos python 2.7 modules openssl xmlsec1 Instalação manual Produto Artefato pipeline Config manual no servidor CI agent1 agent2 agent3 devticketops devsudo git server app A server app B server app C
  • 10. ● Minimizar necessidade de modificação no agente CI ● Permitir auto serviço no pipeline Super comandos Objetivos: ● Utilizar o mesmo ambiente que roda em produção na máquina do desenvolvedor ● Construa uma vez, rode em qualquer lugar (GNU/Linux) ● Padrão como vetor de velocidade no desenvolvimento
  • 11. O que nós fizemos
  • 12. Motivações - O que tínhamos python 2.7 modules openssl xmlsec1 Instalação manual Produto Artefato pipeline Config manual no servidor CI agent1 agent2 agent3 devticketops devsudo git server app A server app B server app C
  • 13. A ideia Super comandos Docker Produtos artefatos pipeline Config manual do servidor CI agent1 agent2 agent3 git servers app A servers app B servers app C commit Dockerfile no git repo python 2.7 modules openssl xmlsec1
  • 14. O que foi feito Super comandos Docker Produtos Artefatos pipeline Config manual no CI server agent1 agent2 agent3 git servers app A servers app B servers app C commit Dockerfile no git repo
  • 16. Imagem CloudFormation ● python ● py-pip ● bash ● awscli ● boto3 Imagem Ansible ● python(2.7) ● py-pip ● openssl ● ca-certificates ● bash ● git ● openssh ● bash ● awscli ● ansible ● boto3 Exemplos dos super comandos
  • 17. Exemplo da pipeline de entrega contínua
  • 18. Exemplo da pipeline de entrega contínua
  • 19. ● Minização de custo compartilhando agentes CD ● Sem gargálos para os usuários do CD Super comandos ● Fácil reproduzir localmente Prós: ● Baixa necessidade de administração nos agentes do CD ● A escolha da distro do agente CD não afetem os usuários
  • 20. ● Tratamento de problemas mais complexo Toolset Cons: ● Curva de aprendizado (novo mindset, novas ferramentas, etc.) ● Você precisa usar containers docker para todas tarefas ● Problemas de performance no agente afetam todos os usuários
  • 21. ● Preste atenção na ordem o Dockerfile na construção da imagem Toolset Lições aprendidas ● Use scripts shell para facilitar o build e execução dos containers ● Use script shell para gerenciar variáveis locais ● Mantenha o docker atualizado
  • 22. ● Cluster docker? Toolset Próximos passos: ● Gerenciamento de segredos (credstash?) ● Melhor gerenciamento de variáveis