Deploy pelo GitHub
↓ Baixar .mdDeploy pelo GitHub
Conecte seu repositório GitHub e faça deploy automático a cada push ou nova release.
Pré-requisitos
- Uma conta no PodCubo com uma stack criada
- Um repositório no GitHub com um
Dockerfilena raiz - Sua conta GitHub conectada ao PodCubo
Conectando o GitHub
- Acesse Stacks e entre na stack desejada
- Clique em New App → App → Git Repository
- Se ainda não conectou o GitHub, clique em Connect GitHub
- Autorize o PodCubo a acessar seus repositórios
- Selecione o repositório desejado
Configurando o Deploy
Branch ou Release
Você pode escolher fazer deploy de:
- Branch — deploy automático a cada push nessa branch (ex:
main,develop) - Release — deploy automático quando uma nova release é publicada no GitHub
Porta
Defina a porta que sua aplicação escuta. O PodCubo vai rotear o tráfego pra essa porta.
Exemplos comuns:
- Node.js/Express: 3000
- Python/Django: 8000
- Go: 8080
- Next.js: 3000O Dockerfile
Sua aplicação precisa de um Dockerfile na raiz do repositório. Aqui estão exemplos pra os frameworks mais comuns:
Node.js
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "index.js"]Next.js
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package.json ./
EXPOSE 3000
CMD ["npm", "start"]Python (Django/Flask)
FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["gunicorn", "app:app", "--bind", "0.0.0.0:8000"]Go
FROM golang:1.22-alpine AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 go build -o server .
FROM alpine:3.19
WORKDIR /app
COPY --from=builder /app/server .
EXPOSE 8080
CMD ["./server"]Deploy Automático
Após criar o app, o PodCubo faz o primeiro deploy automaticamente. A cada novo push na branch configurada (ou nova release), o deploy é acionado novamente.
O processo é:
- Clone — PodCubo clona seu repositório
- Build — Constrói a imagem Docker a partir do Dockerfile
- Deploy — Inicia o container com a nova imagem
Você pode acompanhar o progresso em tempo real na tela de edição do app.
Rebuild Manual
Se precisar refazer o deploy manualmente (sem um novo push), use o botão Save & Rebuild na tela de edição do app.
Troubleshooting
Build falhou
- Verifique se o
Dockerfileestá na raiz do repositório - Confira os logs de build na tela de edição do app
- O PodCubo usa AI Error Diagnosis pra analisar erros de build e sugerir correções
App não responde
- Confirme que a porta configurada no PodCubo é a mesma que sua app escuta
- Verifique se sua app escuta em
0.0.0.0(não apenaslocalhostou127.0.0.1) - Confira os logs da aplicação na aba de logs