Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Continuous Delivery com Docker, Jenkins e OpenShift

239 views

Published on

Apresentação sobre Continuous Delivery com Docker, Jenkins e OpenShift no 20º Meetup Comunidade Docker SP.

O vídeo da talk está em: https://facebook.com/IBMGEP/videos/1641287925959000/

Published in: Technology
  • Be the first to comment

Continuous Delivery com Docker, Jenkins e OpenShift

  1. 1. Continuous Delivery com Docker, OpenShift e Jenkins
  2. 2. Bruno Padilha DevOps Engineer (Leroy Labs) Leandro Costa DevOps Engineer (Digital / Boitatá) Gabriel Machado Software Developer (Digital / Boitatá)
  3. 3. Agenda ● A Leroy Merlin ● Projeto ○ Overview ○ Arquitetura ○ Monorepo ou multirepo? ○ Docker-compose ● Processo de Deployment ○ Pipeline ○ Jenkins ● Demo
  4. 4. A Leroy Merlin ● Rede Francesa multiespecialista do lar; ● Presente no Brasil desde 1998; ● 41 lojas distribuídas em 11 estados + e-commerce; ● +10.000 colaboradores; ● Presente em 12 países com +400 lojas;
  5. 5. A Leroy Merlin ● Transformação digital (quem nunca?) ● Containerização de legados; ● Migração para nuvem; ● Aplicações distribuídas entre 2 contas AWS; ● ChatOps; ● OpenShift;
  6. 6. Projeto ● Baleine (baleia em francês) ● Abrangência global ● Modular
  7. 7. Arquitetura
  8. 8. Arquitetura
  9. 9. Arquitetura OpenShift / Kubernetes
  10. 10. Arquitetura OpenShift / Kubernetes Elasticsearch
  11. 11. Arquitetura OpenShift / Kubernetes Elasticsearch AWS S3
  12. 12. Monorepo ou Multirepo? Preocupações Monorepo Multirepo Acompanhamento de mudanças consolidado ✅ ❌ Organização ✅ ✅ Ambiente de dev ✅ ❌ Tamanho ❌ ✅ $$$$$$ ✅ ❌
  13. 13. $ git clone monorepo
  14. 14. O repositório baleiene-repo |-- Jenkinsfile |-- docker-compose.yml (Todos os serviços + dependências) |-- docker-compose.build.yml (Todos os serviços - tag openshift) | service-A/ |--- docker-compose.yml (Somente o serviço - Com os builds dos dockerfiles abaixo com suas dependências) |--- dockerfile.app (Dockerfile) |--- dockerfile.web (Dockerfile) --- docker/ (folder) ---- app/ (files and configs) ---- web/ (files and configs) | service-B/ |--- docker-compose.yml |--- dockerfile.app (Dockerfile) |----dockerfile.web (Dockerfile) --- docker/ (folder) ---- app/ (files and config) ---- web/ (files and config)
  15. 15. docker-compose FTW! $ docker-compose up --build -d Creating network "baleinedev_content" with driver "bridge" Creating network "baleinedev_cluster" with driver "bridge" Creating network "baleinedev_auth" with driver "bridge" Creating volume "baleinedev_mongodb-data" with local driver Building auth-web Step 1/6 : FROM nginx:1.13-alpine ... Successfully built 48319c1ae833 Successfully tagged leroymerlinbr/baleine-auth-web:latest ... ... Creating baleienedev_mongodb_1 ...done Creating baleinedev_auth-web_1 ...done Creating baleienedev_content-app_1 ...done Creating baleinedev_content-web_1 ...done Creating baleinedev_es_1 ...done Creating baleienedev_kibana_1 ...done Creating baleienedev_logstash_1 ...done
  16. 16. BRICOLAGEM?
  17. 17. Processo de Deployment
  18. 18. Processo de Deployment Push
  19. 19. Processo de Deployment Vamos tomar um café?
  20. 20. Processo de Deployment Algo no #ALERTS ?
  21. 21. Jenkinsfile
  22. 22. Jenkins Pipeline Só Develop Branch = DEVELOP
  23. 23. Jenkins Pipeline Staging e prod Branch = MASTER
  24. 24. Demo
  25. 25. Estamos Contratando! Devs BackEnd, Devs FrontEnd, UXs rscafi@leroymerlin.com.br
  26. 26. Obrigado! Perguntas? Continuous Delivery com Docker, OpenShift e Jenkins

×