# Ninja Nexus Coolify Setup — Summary

Date: 2026-06-04 (UTC)

## Outcome

Coolify project **Ninja Nexus** was created via API with three logical services:

| Service | Coolify name | Status |
|---------|--------------|--------|
| Backend API | `nexus-backend` | Running (sslip health OK) |
| Database | `nexus-db` | Created (PostgreSQL; health needs manual check) |
| Downloads gateway | `nexus-downloads` | Running on `nexus.ninjakernen.info` |

## Verified live

- https://nexus.ninjakernen.info — download landing page (200)
- https://nexus.ninjakernen.info/downloads/latest.json — manifest (200)
- https://nexus.ninjakernen.info/downloads/nexus-shell-poc.zip — ZIP (200)
- SHA256 match for root ZIP vs `latest.json` — **pass**

## Partial / follow-up

- `/health` and `/connect/token` on main domain require nginx → backend proxy wiring (see `known-limitations.md`)
- Backend direct sslip URL verified healthy during setup
- PostgreSQL `nexus-db` reported unhealthy; backend POC uses SQLite file in container

## Scripts

```
scripts/coolify/create-nexus-project.ps1
scripts/coolify/deploy-nexus-backend.ps1
scripts/coolify/deploy-nexus-downloads.ps1
scripts/coolify/verify-nexus-coolify.ps1
```

## Deploy order

1. `create-nexus-project.ps1`
2. `deploy-nexus-backend.ps1`
3. `deploy-nexus-downloads.ps1 -BackendHost <backend-sslip-host>`
4. Do **not** run `publish-coolify.ps1` after step 3 (it overwrites `post_deployment_command`)

## POC credentials

Documented in `test-user-login.md` — **POC only, not for production.**

No secrets are stored in this evidence folder.
