3.1 KiB
3.1 KiB
MANUAL TÉCNICO - GESTÃO DE STACKS NO PORTAINER
Código: ITGSUP 0009/26 | Classificação: RESTRITO Responsável: João Pedro Toledo Gonçalves | Data: {{DATA_ATUAL}}
1. HISTÓRICO DE REVISÃO
⚠️ REGRA DE OURO:
- Autor: João Pedro Toledo Gonçalves.
- Descrição: Criação do documento.
| Data | Versão | Descrição | Autor |
|---|---|---|---|
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
2. OBJETIVO
Padronizar o deploy de aplicações (Stacks) no Portainer utilizando três métodos: Upload Manual, Templates de App e Repositório Git (GitOps Básico).
3. PRÉ-REQUISITOS
- Portainer instalado e acessível.
- Um arquivo
docker-compose.ymlválido E/OU Uma URL de repositório Git (GitHub/GitLab).
4. PASSO A PASSO (EXECUÇÃO)
Etapa 1: Deploy via Web Editor (Rápido)
- No menu lateral, clique em Stacks -> Add stack.
- Selecione a opção Web editor.
- Name: Dê um nome único (ex:
meu-nginx). - Cole o conteúdo do seu
docker-compose.ymlna área de texto. - Clique em Deploy the stack.
Etapa 2: Deploy via App Templates (Iniciantes)
- No menu lateral, clique em App Templates.
- Selecione uma aplicação pronta (ex: "Wordpress" ou "Nginx").
- Preencha os campos (Nome, Senha do Banco).
- Clique em Deploy the stack.
Etapa 3: Deploy via Repositório Git (Recomendado/GitOps)
🚀 MELHOR PRÁTICA: Permite versionamento e "Single Source of Truth".
- Vá em Stacks -> Add stack.
- Selecione Git Repository.
- Configuração:
- Repository URL:
https://github.com/usuario/repo.git - Repository Reference:
main(ourefs/heads/main). - Compose path:
docker-compose.yml(se estiver na raiz).
- Repository URL:
- Authentication (Se privado):
- Ative "Authentication".
- Use seu Username e, preferencialmente, um Personal Access Token (não sua senha).
- Ative Automatic updates (Opcional) para polling.
- Clique em Deploy the stack.
Etapa 4: Edição e Updates
- Web Editor: Clique na stack -> Editor -> Update the stack.
- Git: Faça o commit no Git -> No Portainer, clique em "Pull and redeploy" (ou aguarde o Auto-update).
5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
Problema 1: "Deployment error: Stack already exists"
- Causa: Já existe uma stack com esse nome (mesmo que parada).
- Solução: Delete a stack antiga ou use outro nome.
Problema 2: "Authentication failed" no Git
- Causa: Senha incorreta ou uso de senha ao invés de Token (GitHub exige Token).
- Solução: Gere um PAT (Personal Access Token) no GitHub (Settings -> Developer Settings) e use como senha.
6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
|---|---|---|
| Padrão | docker-compose.yml |
Formato obrigatório |
| Limit | Stack |
Equivalente a um projeto Docker Compose |
7. VALIDAÇÃO FINAL
- A stack aparece com status "Active"?
- Os conteineres subiram corretamente?
- Alterar o Git reflete no Portainer (se testado pull)?