3.7 KiB
Execução local no Windows
Ambiente de demonstração novo autorizado em 19/10/2026. PostgreSQL/PostGIS
isolado em 127.0.0.1:55441, base investmoz_local_test, volume Docker
investmoz-local-qa_postgres-qa. Não contém os dados do portal activo.
O MySQL existente não serve este esquema PostgreSQL e é preservado.
Arrancar
Inicie Docker Desktop. Na raiz do projecto:
./deploy/local/start.ps1
Com a base já iniciada e preparada, basta:
composer run dev
Abra http://127.0.0.1:8000. O comando inicia Laravel, o worker da fila e Vite. Use Ctrl+C para terminar. A base conserva os dados entre arranques.
O script de arranque executa estes passos, parando no primeiro erro:
docker compose --env-file .env -f deploy/local/compose.yaml up -d --wait
php tools/local-qa-bootstrap.php
composer run dev
O preparador verifica configuração e identidade real da base antes de migrar.
Só admite investmoz_local_test, TCP local e porta real 55441, sem DB_URL nem
configuração em cache. Executa migrations em testing, como exigem as guardas
existentes. Só cria os dados iniciais quando sectores e utilizadores estão vazios;
um novo arranque não redefine contas. Nunca usa migrate:fresh.
As quatro migrations mais recentes também admitem QA com identidade verificada
por IsolatedQaDatabase. A alternativa de instalação autenticada no activo é
preservada. A excepção QA é uma escolha técnica consistente com as migrations
anteriores, sem activar funcionalidades ou publicar dados.
Conta do seeder existente, exclusivamente para esta demonstração:
test@example.com / password. Não é um administrador do portal.
As regras existentes de autenticação, MFA e instalação autenticada mantêm-se.
Dependências e configuração
- PHP >= 8.4.1, com
pdo_pgsqlepgsqlactivos no PHP do terminal. - Node 24, Composer, dependências de
composer.lockepackage-lock.json. - Docker Desktop com contentores Linux.
.envlocal com PostgreSQL, porta 55441, base e utilizador do Compose eDB_PASSWORDprivado. A chave da aplicação existente deve ser preservada.- O primeiro build obtém as fontes configuradas de fonts.bunny.net; precisa de rede.
O bootstrap cria as pastas de cache, vistas, sessões e logs antes da configuração
Laravel. php artisan portal:dev-check verifica os requisitos essenciais sem
alterar registos nem mostrar credenciais. Falhas interrompem composer run dev
antes de iniciar os três processos.
php artisan portal:dev-check
php artisan wayfinder:generate --with-form
npm run types:check
npm run build
Os testes que usam RefreshDatabase devem usar outra base investmoz_test no
mesmo servidor QA; nunca a base de demonstração nem o activo. tests/TestCase.php
mantém as guardas e o bloqueio contra testes concorrentes.
Origem e limites
Origem: pedido expresso de correcção e configuração local e escolha do responsável
por uma base nova de demonstração em 19/10/2026. Portas, Compose, pastas automáticas
e verificação de arranque são escolhas técnicas, sem novas regras organizacionais.
Aplicam-se as decisões Tempo de 12/10/2026 e a separação QA/activo de AGENTS.md.
Não constitui implantação em produção nem aceitação funcional global da matriz
existente em docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv.
Não remover o volume Docker para actualizar. O .env anterior e o php.ini
anterior à activação PostgreSQL foram conservados em storage/app/private/.
O correio local usa o canal log. Integrações externas e serviços opcionais precisam
das configurações próprias já previstas no projecto; este arranque não lhes
atribui autorização, publicação ou credenciais.