wils@web ~ $ cat ~/ajuda/como-implementar-ci-cd-com-github-actions-2-0-e-docker-guia-completo.md
DevOpsComo implementar CI/CD com GitHub Actions 2.0 e Docker: Guia completo
Este guia aborda a implementação de CI/CD utilizando GitHub Actions 2.0 e Docker, permitindo automação eficiente de builds e deploys.
Introdução
CI/CD (Integração Contínua e Entrega Contínua) é uma prática essencial no desenvolvimento moderno. Com o GitHub Actions, você pode automatizar seu fluxo de trabalho diretamente no repositório do GitHub. Neste guia, utilizaremos Docker para criar contêineres que facilitarão o processo de deploy.
Pré-requisitos
- Conta no GitHub
- Docker instalado localmente
- Repositório GitHub com código-fonte
Passo a Passo
1. Criar um Dockerfile
No diretório do seu projeto, crie um arquivo chamado Dockerfile com o seguinte conteúdo:
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "npm", "start" ]2. Criar o arquivo de workflow
No seu repositório, crie o diretório .github/workflows e adicione um arquivo chamado ci-cd.yml com o seguinte conteúdo:
name: CI/CD Pipeline
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build Docker image
run: |
docker build . -t my-app:${{ github.sha }}
- name: Push Docker image
run: |
echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
docker push my-app:${{ github.sha }}
3. Configurar segredos no GitHub
Vá até as configurações do seu repositório, clique em Secrets e adicione os seguintes segredos:
- DOCKER_USERNAME: Seu nome de usuário do Docker Hub
- DOCKER_PASSWORD: Sua senha do Docker Hub
4. Testar o fluxo de trabalho
Faça um commit e push para o branch main. O GitHub Actions iniciará o processo de build e deploy automaticamente.
Conclusão
Com GitHub Actions e Docker, você pode implementar um CI/CD robusto e eficiente. Lembre-se de monitorar seus workflows e ajustar conforme necessário para otimizar o desempenho.
Dica: Explore outras ações disponíveis no GitHub Marketplace para expandir a funcionalidade do seu pipeline.
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.