ligbox-ops-platform/specs/034-nextcloud-carbonio-vm112-integration/quickstart.md
Ligbox Spec Hub c1881f58e6 chore: sync Console SSO, DNS viewer, specs e infra docs pendentes
Inclui console handoff Desk↔Console (Spec 019), melhorias DNS Viewer (037),
OpenPanel/Nextcloud/VM116 deploy notes, contracts stack e sidebar actualizado.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 20:10:17 +00:00

127 lines
2.9 KiB
Markdown

# Quickstart — Piloto Nextcloud + Carbonio VM112 (Spec 034)
**Público:** ops_lead, super_admin
**Pré-requisito:** VM124 provisionada · Carbonio VM112 operacional · acesso CT114
---
## Regra operacional
> **Carbonio continua MTA.** Nextcloud **não** altera MX/DKIM.
> Piloto começa com **1 domínio de teste** (não `ligbox.com.br` produção até validar).
---
## 1. Verificar Carbonio VM112
```bash
ssh root@10.10.10.112 -p 2512 # via Proxmox jump se necessário
# Conta teste
zmprov ga admin@DOMINIO-TESTE.com zimbraMailQuota 2>/dev/null | head -5
# IMAP local
openssl s_client -connect 127.0.0.1:993 -quiet </dev/null 2>&1 | head -3
```
---
## 2. Instalar Nextcloud VM124 (piloto)
```bash
ssh root@10.10.10.124
# ou externo: ssh root@95.216.14.146 -p 2524
# Após clone repo + deploy/vm116-nextcloud/
cd /opt/ligbox-ops-platform/deploy/vm116-nextcloud
cp .env.example .env
# Editar: NC_DOMAIN=cloud.ligbox.com.br, ADMIN_PASS=***
docker compose up -d
docker exec -u www-data nextcloud occ status
```
URL piloto: `https://cloud.ligbox.com.br`
---
## 3. Criar utilizador Nextcloud (= e-mail Carbonio)
```bash
docker exec -u www-data nextcloud occ user:add \
--display-name="Admin Teste" \
--password-from-env \
admin@DOMINIO-TESTE.com
docker exec -u www-data nextcloud occ user:setting \
admin@DOMINIO-TESTE.com files quota 25GB
```
**Importante:** usar o **mesmo e-mail** que existe no Carbonio.
---
## 4. Configurar Mail app (Nextcloud → Carbonio)
No browser, login Nextcloud como `admin@DOMINIO-TESTE.com`:
1. Activar app **Mail**
2. Nova conta:
- E-mail: `admin@DOMINIO-TESTE.com`
- IMAP: `mail.DOMINIO-TESTE.com` · port **993** · SSL
- SMTP: `mail.DOMINIO-TESTE.com` · port **587** · STARTTLS
- Utilizador/senha: credenciais Carbonio
3. Enviar e-mail teste → verificar recepção no webmail Carbonio.
---
## 5. Teste capacidade (Files vs Mail)
```bash
# Upload ficheiro 50 MB no Files — deve funcionar
# Verificar quota Carbonio não aumentou:
ssh root@10.10.10.112 "zmprov gq admin@DOMINIO-TESTE.com"
```
---
## 6. Traefik — files.{dominio} (opcional piloto)
No CT114, seguir template Spec 017 para `mail.{dom}` substituindo backend por `10.10.10.124:8080`.
Teste:
```bash
curl -sI "https://files.DOMINIO-TESTE.com/status.php" | head -5
```
---
## 7. Desk — health (após implementação API)
```bash
curl -s -u root:805353 \
"http://10.10.10.122:8180/api/v1/nextcloud/health" | jq .
```
---
## Checklist piloto OK
- [ ] Nextcloud status 200
- [ ] User NC criado com e-mail `@dominio`
- [ ] Mail app lê Inbox Carbonio
- [ ] Envio SMTP funciona
- [ ] Upload 50 MB em Files OK
- [ ] Quota Carbonio inalterada após upload Files
- [ ] ops_lead aprova continuar Fase 1 (wizard)
---
## Rollback piloto
```bash
docker exec -u www-data nextcloud occ user:delete admin@DOMINIO-TESTE.com
# Remover router Traefik files.{dom} se criado
```