+ All Categories
Home > Documents > ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression {...

ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression {...

Date post: 30-Jun-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
81
Ambientes Descartáveis utilizando Docker
Transcript
Page 1: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Ambientes Descartáveisutilizando Docker

Page 2: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

🍻

Page 3: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

$ whoami

Page 4: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Carlos Ribeiro

Page 5: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Carlos Ribeiro

Page 6: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Carlos Ribeiro

https://cadu.dev

Page 7: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Carlos Ribeiro

https://cadu.dev

Page 8: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

https://opensanca.com.br

Page 9: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

ProduçãoQA / Staging / UAT

Page 10: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

Page 11: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

entregável

Page 12: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time A

entregável

Page 13: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time A

entregável

Page 14: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time A

entregável

Page 15: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time A

entregável

Page 16: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 17: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 18: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 19: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 20: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 21: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

PR PR

entregável

Page 22: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

“Alguém usando o servidor de Staging??”

Page 23: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

“Staging é meu! # Ninguém faz deploy…”

Page 24: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

PR

Repositório

master

time B

time A

PR

entregável

Page 25: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

PR

Repositório

master

time B

time A

entregável

Page 26: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 27: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Repositório

master

time B

time A

entregável

Page 28: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

ProduçãoQA / Staging / UAT

Page 29: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

Page 30: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

PR

Page 31: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

PR

Page 32: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

PR PR

Page 33: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

PR PR

Page 34: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Produção

QA / Staging / UAT

PR PR

Page 35: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 36: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

master

Page 37: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

master

Page 38: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

master

Page 39: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

master

Page 40: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

master

Page 41: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

Rodar os Testes

master

Page 42: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

Rodar os Testes

Criar containers paraStaging

master

Page 43: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

feature_branch

Page 44: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

feature_branch

Page 45: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

feature_branch

Page 46: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

feature_branch

Page 47: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

feature_branch

Page 48: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

Rodar os Testes

feature_branch

Page 49: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Construir a imagem Docker da aplicação

Rodar os TestesCriar containers

para essa branch

feature_branch

Page 50: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

staging.minhapp.net

Page 51: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 52: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 53: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 54: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 55: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 56: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

meu_pr_1.minhapp.net

meu_pr_2.minhapp.net

PR

PR

Page 57: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 58: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 59: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Docker Swarm

Page 60: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 61: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { } }

master

Page 62: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o banco } }

master

Page 63: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres - Criar o serviço no Docker Swarm com o Redis } }

master

Page 64: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres - Criar o serviço no Docker Swarm com o Redis - Criar o serviço no Docker Swarm com a aplicação usando a imagem da etapa de Build } }

master

Page 65: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 66: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage(‘Create Environment’) { when { expression { env.BRANCH_NAME != 'master' } } steps { } }

feature_branch

Page 67: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Create Environment') { when { expression { env.BRANCH_NAME != 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres } }

feature_branch

Page 68: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Create Environment') { when { expression { env.BRANCH_NAME != 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres - Criar o serviço no Docker Swarm com o Redis } }

feature_branch

Page 69: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

stage('Create Environment') { when { expression { env.BRANCH_NAME != 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres - Criar o serviço no Docker Swarm com o Redis - Criar o serviço no Docker Swarm com a aplicação usando a imagem da etapa de Build } }

feature_branch

Page 70: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 71: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

DEMO

Page 72: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 73: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 74: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

https://bit.ly/post-ambientes-docker

Page 75: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 76: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

kind: DeploymentapiVersion: extensions/v1beta1 metadata: name: nginx-deploymentspec: # A deployment's specification really only # has a few useful options # 1. How many copies of each pod do we want? replicas: 3 # 2. How do want to update the pods? strategy: Recreate # 3. Which pods are managed by this deployment? selector: # This must match the labels we set on the pod! matchLabels: deploy: example # This template field is a regular pod configuration # nested inside the deployment spec template: metadata: # Set labels on the pod. # This is used in the deployment selector. labels: deploy: example spec: containers: - name: nginx image: nginx:1.7.9

Page 77: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 78: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres
Page 79: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

http://bit.ly/ambientes-docker

Page 80: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

🍻

bora beber!!!!

Page 81: ambientes descartaveis docker - Amazon S3 · stage('Deploy to Staging') { when { expression { env.BRANCH_NAME == 'master' } } steps { - Criar o serviço no Docker Swarm com o Postgres

Recommended