wils@web ~ $ cat ~/ajuda/como-automatizar-deploys-com-github-actions-e-docker-no-ubuntu-22-04.md

DevOps

Como automatizar deploys com GitHub Actions e Docker no Ubuntu 22.04

atualizado em 06/08/2026

Automatizar o processo de deploy é uma prática essencial para garantir eficiência e consistência nas entregas de software. Neste manual, vamos explorar como utilizar o GitHub Actions e Docker para automatizar o deploy de uma aplicação em um servidor Ubuntu 22.04.

Pré-requisitos

  • Conta no GitHub
  • Servidor Ubuntu 22.04 com Docker instalado
  • Repositório GitHub com sua aplicação

Passo a Passo

1. Instalar o Docker

Primeiro, precisamos garantir que o Docker esteja instalado no seu servidor Ubuntu. Execute os seguintes comandos:

sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker

2. Criar um Dockerfile

No diretório raiz do seu projeto, crie um arquivo chamado Dockerfile:

FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "npm", "start" ]

3. Configurar GitHub Actions

Agora, vamos configurar o GitHub Actions. Crie um diretório chamado .github/workflows no seu repositório e adicione um arquivo chamado deploy.yml:

name: Deploy to Server

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Build Docker image
        run: |
          docker build -t my-app .

      - name: Deploy to Server
        run: |
          ssh user@your-server-ip 'docker pull my-app && docker run -d -p 3000:3000 my-app'
        env:
          SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}

4. Configurar Secrets no GitHub

Para que o GitHub Actions possa se conectar ao seu servidor, você precisa adicionar sua chave SSH como um secret no repositório:

  1. Vá para o seu repositório no GitHub.
  2. Clique em Settings.
  3. Selecione Secrets and variables e depois Actions.
  4. Clique em New repository secret e adicione sua chave SSH com o nome SSH_PRIVATE_KEY.

Conclusão

Agora você tem um pipeline de CI/CD configurado que automatiza o deploy da sua aplicação usando GitHub Actions e Docker. Lembre-se de testar suas configurações e monitorar o desempenho do seu aplicativo após o deploy.

Dica: Sempre faça testes em um ambiente de staging antes de realizar o deploy em produção para evitar surpresas indesejadas.

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.