wils@web ~ $ cat ~/ajuda/como-implementar-ci-cd-usando-gitlab-e-kubernetes-em-um-cluster-gke.md
DevOpsComo implementar CI/CD usando GitLab e Kubernetes em um cluster GKE
Este manual fornece um guia passo a passo sobre como implementar CI/CD usando GitLab e Kubernetes em um cluster GKE (Google Kubernetes Engine).
Introdução
A integração contínua (CI) e a entrega contínua (CD) são práticas essenciais para automação de deploys. O GitLab oferece uma poderosa ferramenta de CI/CD que pode ser facilmente integrada ao Kubernetes.
Passo a Passo
1. Preparar o Ambiente
- Crie um cluster GKE:
gcloud container clusters create meu-cluster --zone us-central1-a 2. Configurar o GitLab
- Crie um repositório no GitLab.
- Adicione um arquivo `.gitlab-ci.yml` na raiz do repositório:
image: docker:latest
services:
- docker:dind
stages:
- build
- deploy
build:
stage: build
script:
- docker build -t meu-app:latest .
- docker tag meu-app:latest gcr.io/$PROJECT_ID/meu-app:latest
- docker push gcr.io/$PROJECT_ID/meu-app:latest
deploy:
stage: deploy
script:
- kubectl apply -f k8s/deployment.yaml
- kubectl rollout status deployment/meu-app
3. Configurar o Kubernetes
- Crie um arquivo de configuração do Kubernetes:
apiVersion: apps/v1
kind: Deployment
metadata:
name: meu-app
spec:
replicas: 3
selector:
matchLabels:
app: meu-app
template:
metadata:
labels:
app: meu-app
spec:
containers:
- name: meu-app
image: gcr.io/$PROJECT_ID/meu-app:latest
ports:
- containerPort: 80
4. Configurar Acesso ao GKE
- Autentique-se no Google Cloud:
gcloud auth configure-docker 5. Executar o Pipeline
- Faça um commit no repositório para acionar o pipeline.
Conclusão
Após seguir esses passos, você terá um pipeline de CI/CD funcional. Dica: Monitore os logs do GitLab CI para resolver possíveis erros e otimizar o processo.
Precisa de ajuda com isso no seu servidor? A gente resolve pra você.
falar no WhatsApp →// deu erro ou não funcionou?
Achou algo errado neste manual?
Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.