wils@web ~ $ cat ~/ajuda/como-implementar-ci-cd-com-github-actions-e-docker-para-aplicacoes-em-producao.md
DevOpsComo implementar CI/CD com GitHub Actions e Docker para aplicações em produção
Implementar CI/CD com GitHub Actions e Docker é uma forma eficiente de automatizar o processo de entrega de aplicações em produção. Neste manual, abordaremos os passos necessários para configurar essa integração.
Pré-requisitos
- Conta no GitHub.
- Docker instalado na máquina local.
- Conhecimento básico de Docker e Git.
Passo 1: Criar um repositório no GitHub
Primeiramente, crie um novo repositório no GitHub para sua aplicação.
Passo 2: Criar um Dockerfile
No diretório raiz 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" ]
Passo 3: Configurar GitHub Actions
Crie um diretório chamado .github/workflows no seu repositório 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: Checkout code
uses: actions/checkout@v2
- name: Build Docker image
run: |
docker build . -t myapp:latest
- name: Run tests
run: |
docker run myapp:latest npm test
- name: Push to Docker Hub
run: |
echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
docker tag myapp:latest myusername/myapp:latest
docker push myusername/myapp:latest
Passo 4: Configurar Secrets no GitHub
Vá até as configurações do seu repositório no GitHub e adicione os seguintes secrets:
- DOCKER_USERNAME: seu nome de usuário do Docker Hub.
- DOCKER_PASSWORD: sua senha do Docker Hub.
Passo 5: Testar a integração
Faça um commit e um push para o branch main. O GitHub Actions iniciará o pipeline automaticamente, construindo a imagem Docker e executando os testes.
Conclusão
Com esta configuração, você terá um fluxo de trabalho de CI/CD utilizando GitHub Actions e Docker. Lembre-se de monitorar os logs das ações para identificar possíveis falhas. Dica: Utilize tags de versão para gerenciar melhor suas implantações.
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.