78 lines
3.1 KiB
Markdown
78 lines
3.1 KiB
Markdown
# 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:**
|
|
> 1. **Autor:** João Pedro Toledo Gonçalves.
|
|
> 2. **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.yml` vá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)**
|
|
1. No menu lateral, clique em **Stacks** -> **Add stack**.
|
|
2. Selecione a opção **Web editor**.
|
|
3. **Name:** Dê um nome único (ex: `meu-nginx`).
|
|
4. Cole o conteúdo do seu `docker-compose.yml` na área de texto.
|
|
5. Clique em **Deploy the stack**.
|
|
|
|
**Etapa 2: Deploy via App Templates (Iniciantes)**
|
|
1. No menu lateral, clique em **App Templates**.
|
|
2. Selecione uma aplicação pronta (ex: "Wordpress" ou "Nginx").
|
|
3. Preencha os campos (Nome, Senha do Banco).
|
|
4. Clique em **Deploy the stack**.
|
|
|
|
**Etapa 3: Deploy via Repositório Git (Recomendado/GitOps)**
|
|
> 🚀 **MELHOR PRÁTICA:** Permite versionamento e "Single Source of Truth".
|
|
|
|
1. Vá em **Stacks** -> **Add stack**.
|
|
2. Selecione **Git Repository**.
|
|
3. **Configuração:**
|
|
* **Repository URL:** `https://github.com/usuario/repo.git`
|
|
* **Repository Reference:** `main` (ou `refs/heads/main`).
|
|
* **Compose path:** `docker-compose.yml` (se estiver na raiz).
|
|
4. **Authentication (Se privado):**
|
|
* Ative "Authentication".
|
|
* Use seu Username e, preferencialmente, um **Personal Access Token** (não sua senha).
|
|
5. Ative **Automatic updates** (Opcional) para polling.
|
|
6. 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)?
|