feat: establish reservation portal foundation
This commit is contained in:
49
docs/RUNBOOK.md
Normal file
49
docs/RUNBOOK.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Runbook de desenvolvimento e operação
|
||||
|
||||
## Desenvolvimento local
|
||||
|
||||
1. Copiar `.env.example` para `.env`.
|
||||
2. Executar `docker compose build`.
|
||||
3. Gerar a chave com `docker compose run --rm app php artisan key:generate`.
|
||||
4. Iniciar com `docker compose up -d`.
|
||||
5. Preparar dados com `docker compose exec app php artisan migrate --seed`.
|
||||
6. Abrir o portal em `http://localhost:8000` e emails em `http://localhost:8025`.
|
||||
|
||||
## Diagnóstico
|
||||
|
||||
```bash
|
||||
docker compose ps
|
||||
docker compose logs --tail=100 app
|
||||
docker compose logs --tail=100 queue
|
||||
docker compose exec app php artisan about
|
||||
docker compose exec app php artisan migrate:status
|
||||
docker compose exec postgres pg_isready -U reserva -d reserva
|
||||
docker compose exec redis redis-cli ping
|
||||
```
|
||||
|
||||
## Atualização de código
|
||||
|
||||
```bash
|
||||
docker compose exec app composer install
|
||||
docker compose exec node npm install
|
||||
docker compose exec app php artisan migrate --force
|
||||
docker compose exec app php artisan optimize:clear
|
||||
docker compose restart queue scheduler
|
||||
```
|
||||
|
||||
## Produção
|
||||
|
||||
Antes de disponibilizar:
|
||||
|
||||
- definir `APP_ENV=production`, `APP_DEBUG=false` e HTTPS;
|
||||
- substituir todas as palavras-passe do exemplo;
|
||||
- montar segredos fora do repositório;
|
||||
- remover exposição pública das portas PostgreSQL, Vite e Mailpit;
|
||||
- configurar volumes persistentes e backups cifrados;
|
||||
- executar `php artisan optimize` e frontend compilado;
|
||||
- definir health checks, alertas e rotação de logs;
|
||||
- testar recuperação de backup e falha Snipe-IT.
|
||||
|
||||
## Backups
|
||||
|
||||
Salvaguardar diariamente PostgreSQL e uploads. Manter retenção semanal/mensal e uma cópia fora do servidor. Segredos são salvaguardados através de procedimento separado. Executar um teste de restauro periódico e registar o resultado.
|
||||
Reference in New Issue
Block a user