SlideShare uma empresa Scribd logo
GoCD + Docker 🐳 + Docker
Compose 🐙: uma história de
amor ❤
Stefan Teixeira
@stefan_teixeira
stefanfk@gmail.com
stefanteixeira.com.br
stefanteixeira.com
• QA Engineer @ M4U
• Entusiasta de Automação de Testes, Agile Testing e DevOps
• Blogs técnicos: stefanteixeira.com.br (pt-br) /
stefanteixeira.com (en)
Contatos:
• E-mail: stefanfk@gmail.com
• Twitter: twitter.com/stefan_teixeira
• Facebook: facebook.com/stefan.teixeira
• LinkedIn: linkedin.com/in/stefanteixeira
• GitHub: github.com/stefanteixeira
• SlideShare: slideshare.net/stefanteixeira
Sobre
O que é GoCD?
Antes do GoCD
Depois do GoCD
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor
GoCD
• Criado pela ThoughtWorks
https://www.go.cd/ | https://github.com/gocd/gocd
GoCD
• Criado pela ThoughtWorks
• Open-source (desde Fev/2014)
https://www.go.cd/ | https://github.com/gocd/gocd
GoCD
• Criado pela ThoughtWorks
• Open-source (desde Fev/2014)
• Foco em Continuous Delivery
https://www.go.cd/ | https://github.com/gocd/gocd
Por que GoCD?
O poder das abstrações certas
Pipelines são first-class citizens
Como funciona?
Documentação
https://docs.go.cd/current/
API Reference
https://api.go.cd/current/
Plugins
https://www.go.cd/community/plugins.html
Mas o Jenkins não faz isso tudo?
Faz, mas…
GoCD x Jenkins
GoCD x Jenkins
Build Pipeline Plugin
Build Pipeline Plugin
💩
Build Flow Plugin
Build Flow Plugin
É bom, mas não suporta steps manuais… 😞
Pipeline Plugin (antigo Workflow)
• TUDO em Job DSL (Groovy) 👍
Pipeline Plugin (antigo Workflow)
• TUDO em Job DSL (Groovy) 👍
• Foco em Continuous Delivery 👍
Pipeline Plugin (antigo Workflow)
• TUDO em Job DSL (Groovy) 👍
• Foco em Continuous Delivery 👍
• Visualização decente só na versão
paga 💩
https://www.thoughtworks.com/pt/radar/tools/jenkins-as-a-deployment-pipeline
GoCD + Docker
Imagens do GoCD no DockerHub
https://hub.docker.com/r/gocd/gocd-server/ | https://hub.docker.com/r/gocd/gocd-agent/
Customizando imagens
https://github.com/gocd/gocd-docker
GoCD + Docker Compose
GoCD + Docker Compose (v2)
GoCD + Docker Compose
• Volumes: 2 opções possíveis
GoCD + Docker Compose
• Volumes: 2 opções possíveis
➡ Mapeamento com host
GoCD + Docker Compose
• Volumes: 2 opções possíveis
➡ Mapeamento com host (mais
simples, menos portável)
GoCD + Docker Compose
• Volumes: 2 opções possíveis
➡ Mapeamento com host (mais
simples, menos portável)
➡ Data container
GoCD + Docker Compose
• Volumes: 2 opções possíveis
➡ Mapeamento com host (mais
simples, menos portável)
➡ Data container (menos simples,
porém mais recomendado)
E se eu quiser 3 agents?
E se eu quiser 3 agents?
👏👏👏👏👏
E pra rodar Docker dentro do GoCD?
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor
OBS: Dependendo do OS,
binding de algumas
libs serão necessárias!
Outros Projetos
GoCD Monitor
https://github.com/karmats/gocd-monitor
Build Window
https://github.com/rouanw/build-window
CI Remote
http://timoa.com/projects/ci-remote-for-go-server
"Quero ver se o GoCD é isso tudo…"
Demonstração
• Exemplo real de pipeline
• Menu admin
• Triggers manuais
• Adicionando um novo pipeline
• Verificando value stream map
• Resources
Referências
• https://highops.com/insights/continuous-
delivery-pipelines-gocd-vs-jenkins/
• http://thoughtworks.github.io/p2/issue11/go-
cd-the-right-tool-for-he-job/
• PS: Outras referências estão nos slides, na
parte de baixo 😃
Obrigado!
Stefan Teixeira
@stefan_teixeira
stefanfk@gmail.com
stefanteixeira.com.br
stefanteixeira.com

Mais conteúdo relacionado

PDF
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
PDF
Testadores 2015 - O Fantástico Mundo de Docker
PDF
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
PDF
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
PDF
TDC 2016 Floripa - Aprendendo Docker sem bruxaria
PDF
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
PDF
TDC 2015 Floripa - Testes Automatizados de todos os tipos utilizando bibliote...
PPTX
TDC2016SP - Trilha DevOps Java
Meetup DevOps Carioca - GoCD + Docker + Docker Compose: uma história de amor
Testadores 2015 - O Fantástico Mundo de Docker
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 Floripa - Aprendendo Docker sem bruxaria
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2015 Floripa - Testes Automatizados de todos os tipos utilizando bibliote...
TDC2016SP - Trilha DevOps Java

Mais procurados (20)

PDF
O poder do Docker (7º meetup de Docker SP)
PDF
Precisamos falar sobre Testes de infraestrutura
PDF
Minas Testing Conference 2016 - Testes de Carga com Locust
PDF
Meetup DevOps Carioca - Testes de Carga com Locust
PDF
Docker como super comando
PDF
TDC2016SP - Trilha DevOps Java
PDF
Criando Desktop Apps com Electron
PDF
Workshop Docker
PDF
Dockerizando aplicações em uma fintech o bom, o mau e o feio as surpresas
PDF
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
PDF
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
PDF
VR Dev Summit 2016 - Primeiros Passos em Automação de Testes
PPTX
Precisamos falar sobre teste de infra
PPTX
TDC2016POA | Trilha .NET - Trazendo o poder dos containers ao mundo .NET
PPTX
TDC2016POA | Trilha .NET - O que esperar do C# 7
PDF
TDC 2016 Floripa - Criando APIs REST em minutos com Spark + Java 8
PPTX
Trabalhando com a infraestrutura como software na AWS com Elastic Beanstalk e...
PDF
4º Encontro do Grupo de Testes Carioca - Testes de Carga com Locust
PDF
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
PPTX
Cloud Computing e Integração Contínua com o Windows Azure
O poder do Docker (7º meetup de Docker SP)
Precisamos falar sobre Testes de infraestrutura
Minas Testing Conference 2016 - Testes de Carga com Locust
Meetup DevOps Carioca - Testes de Carga com Locust
Docker como super comando
TDC2016SP - Trilha DevOps Java
Criando Desktop Apps com Electron
Workshop Docker
Dockerizando aplicações em uma fintech o bom, o mau e o feio as surpresas
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
VR Dev Summit 2016 - Primeiros Passos em Automação de Testes
Precisamos falar sobre teste de infra
TDC2016POA | Trilha .NET - Trazendo o poder dos containers ao mundo .NET
TDC2016POA | Trilha .NET - O que esperar do C# 7
TDC 2016 Floripa - Criando APIs REST em minutos com Spark + Java 8
Trabalhando com a infraestrutura como software na AWS com Elastic Beanstalk e...
4º Encontro do Grupo de Testes Carioca - Testes de Carga com Locust
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
Cloud Computing e Integração Contínua com o Windows Azure
Anúncio

Destaque (17)

PDF
Delivering Go.CD with Terraform and Docker
PDF
XebiCon'16 : Wescale - GoCD démystifié Aurélien Maury, Directeur Technique et...
PDF
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
PDF
Go.cd - the tool that Jenkins ain't
PDF
Pivotal cf for_devops_mkim_20141209
PDF
Containers: Don't Skeu Them Up. Use Microservices Instead.
PPTX
[DevOps Carioca] Continuous Delivery
PDF
Jenkins Pipeline - Seville JAM
PDF
Micro services infrastructure with AWS and Ansible
PDF
Using Rancher for highly available deployment services with GoCD and TeamCity
PDF
Devops: Enabled Through a Recasting of Operational Roles
PDF
Ágiles 2016 - Using open source tools to support Continuous Delivery
PPTX
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
PDF
Docker and DevOps - Why it matters
PDF
Manufacturing Plus Open Source Equals DevOps
PPTX
Integration in the age of DevOps
PDF
Ansible, best practices
Delivering Go.CD with Terraform and Docker
XebiCon'16 : Wescale - GoCD démystifié Aurélien Maury, Directeur Technique et...
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
Go.cd - the tool that Jenkins ain't
Pivotal cf for_devops_mkim_20141209
Containers: Don't Skeu Them Up. Use Microservices Instead.
[DevOps Carioca] Continuous Delivery
Jenkins Pipeline - Seville JAM
Micro services infrastructure with AWS and Ansible
Using Rancher for highly available deployment services with GoCD and TeamCity
Devops: Enabled Through a Recasting of Operational Roles
Ágiles 2016 - Using open source tools to support Continuous Delivery
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Docker and DevOps - Why it matters
Manufacturing Plus Open Source Equals DevOps
Integration in the age of DevOps
Ansible, best practices
Anúncio

Semelhante a Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor (16)

PDF
Estratégias para o uso de integração e entrega contínua com gocd
PDF
Ambiente de CI/CD com Google Cloud
PDF
7Masters - Devops - Do legado ao ci cd em 7 minutos
PDF
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PDF
Gitlab CI/CD com python
PDF
Docker, jenkins e gradle para tomar o controle de sua entrega
PDF
O poder do Docker (7 Masters)
PPTX
Containers com docker #CPRecife4
PPTX
Desenvolvimento de CI/CD na AWS
PDF
O que é docker?
PDF
Docker.io:
PDF
Docker: um linux container engine
PDF
Integração contínua com Jenkins
PPTX
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Estratégias para o uso de integração e entrega contínua com gocd
Ambiente de CI/CD com Google Cloud
7Masters - Devops - Do legado ao ci cd em 7 minutos
TDC2018FLN | Trilha Containers - CI/CD a base de containers com Drone
Automatize seu processo de entrega de software com CI/CD na AWS
Gitlab CI/CD com python
Docker, jenkins e gradle para tomar o controle de sua entrega
O poder do Docker (7 Masters)
Containers com docker #CPRecife4
Desenvolvimento de CI/CD na AWS
O que é docker?
Docker.io:
Docker: um linux container engine
Integração contínua com Jenkins
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS

Mais de Stefan Teixeira (16)

PDF
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
PDF
Latinoware 2016 - Continuous Delivery com ferramentas open source
PDF
6º Encontro do Grupo de Testes Carioca - Testes em um contexto de Continuous ...
PDF
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
PDF
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
PDF
TDC 2016 Floripa - Testando APIs REST com Supertest e Promises
PDF
Meetup AngularJS Rio - Testes e2e para apps AngularJS com Protractor
PDF
1º Encontro do Grupo de Testes Carioca - Primeiros Passos em Automação de Testes
PDF
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
PDF
TDC 2015 POA - O Fantástico Mundo de Docker
PDF
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
PDF
TDC 2015 São Paulo - Clean Code para Testers
PDF
TDC 2015 São Paulo - Testes Automatizados de todos os tipos utilizando biblio...
PDF
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvem
PDF
Semana da Computação UFRJ - Testes Automatizados: bruxaria ou não?
PDF
Mobile Conf 2015 - Testes de Unidade com Robolectric
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
Latinoware 2016 - Continuous Delivery com ferramentas open source
6º Encontro do Grupo de Testes Carioca - Testes em um contexto de Continuous ...
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
TDC 2016 Floripa - Testando APIs REST com Supertest e Promises
Meetup AngularJS Rio - Testes e2e para apps AngularJS com Protractor
1º Encontro do Grupo de Testes Carioca - Primeiros Passos em Automação de Testes
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
TDC 2015 POA - O Fantástico Mundo de Docker
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
TDC 2015 São Paulo - Clean Code para Testers
TDC 2015 São Paulo - Testes Automatizados de todos os tipos utilizando biblio...
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvem
Semana da Computação UFRJ - Testes Automatizados: bruxaria ou não?
Mobile Conf 2015 - Testes de Unidade com Robolectric

Último (7)

PDF
Evolução em código: algoritmos genéticos com PHP
PPTX
Mapeamento de Objeto para Tabela Relacional
PPTX
Curso de Windows 11 resumido na prática.pptx
DOC
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
DOC
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
PDF
apresentacao introducao computacao ead.pdf
PDF
Dos requisitos ao código: como criar código rastreável em PHP
Evolução em código: algoritmos genéticos com PHP
Mapeamento de Objeto para Tabela Relacional
Curso de Windows 11 resumido na prática.pptx
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
apresentacao introducao computacao ead.pdf
Dos requisitos ao código: como criar código rastreável em PHP

Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor