76bd288bf6
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
66 lines
1.8 KiB
Markdown
66 lines
1.8 KiB
Markdown
# Coolify Deployment — Quick Steps
|
|
|
|
## 1. Upload the project
|
|
Put this folder in a Git repository, or upload it to the server where Coolify can build it.
|
|
|
|
## 2. Create the Coolify application
|
|
Use **Dockerfile** deployment (simplest) or the included `docker-compose.yml`.
|
|
|
|
## 3. Set environment variables
|
|
|
|
```text
|
|
NODE_ENV=production
|
|
PORT=3000
|
|
ADMIN_PASSWORD=YOUR-LONG-UNIQUE-PASSWORD
|
|
DATA_DIR=/app/data
|
|
```
|
|
|
|
`ADMIN_PASSWORD` is required for the `/admin` sponsor manager. Do not leave it as `changeme`.
|
|
|
|
## 4. Persist `/app/data`
|
|
Create a persistent volume mounted at:
|
|
|
|
```text
|
|
/app/data
|
|
```
|
|
|
|
This preserves the sponsor queue and settings across deployments/restarts.
|
|
|
|
## 5. Add the domain
|
|
Attach your chosen domain/subdomain in Coolify and point it to container port `3000`.
|
|
|
|
Suggested pattern:
|
|
|
|
```text
|
|
team.yourdomain.com
|
|
```
|
|
|
|
Coolify can handle the reverse proxy and TLS certificate.
|
|
|
|
## 6. Verify the public pages
|
|
|
|
- `/` — evergreen bridge page
|
|
- `/start` — live sponsor/onboarding page
|
|
- `/admin` — sponsor manager
|
|
- `/health` — returns `{ "ok": true }`
|
|
|
|
## 7. Configure before advertising
|
|
In `/admin`:
|
|
|
|
1. Confirm the current active sponsor.
|
|
2. Confirm the RM dApp referral base URL.
|
|
3. Set the team support/Telegram URL if desired.
|
|
4. Confirm Premium entry is 362 POL.
|
|
5. Open `/start` in an incognito window and click the join button to verify the final referral ID.
|
|
|
|
## 8. Normal rotation workflow
|
|
|
|
1. Current sponsor receives a verified direct.
|
|
2. In `/admin`, click **+1 Direct**.
|
|
3. When the second direct is verified, click **Qualified**.
|
|
4. The next waiting sponsor automatically becomes active.
|
|
5. `/start` changes immediately; advertising links do not change.
|
|
|
|
## Important
|
|
The app intentionally does not auto-rotate based on ad clicks. Always verify actual RM Circle placement before marking a sponsor qualified.
|