2026-05-02 19:46:42 -05:00
|
|
|
|
# Ops – Deployment & Network Guide
|
|
|
|
|
|
|
|
|
|
|
|
## Docker Compose (production)
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
cp .env.example .env
|
|
|
|
|
|
# Fill in all values in .env
|
|
|
|
|
|
|
|
|
|
|
|
docker compose up -d
|
|
|
|
|
|
# Server: http://localhost:3001
|
|
|
|
|
|
# Client: http://localhost:8080
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Run migrations after first boot:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
docker compose exec server node -e "require('./dist/lib/prisma').prisma.\$executeRaw\`SELECT 1\`"
|
|
|
|
|
|
# or directly:
|
|
|
|
|
|
docker compose run --rm server npx prisma migrate deploy
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## Development (local)
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
# Start DB + Redis only
|
|
|
|
|
|
docker compose -f docker-compose.dev.yml up -d
|
|
|
|
|
|
|
|
|
|
|
|
# Install dependencies
|
|
|
|
|
|
npm install
|
|
|
|
|
|
|
|
|
|
|
|
# Generate Prisma client
|
|
|
|
|
|
npm run db:generate
|
|
|
|
|
|
|
|
|
|
|
|
# Run first migration
|
|
|
|
|
|
npm run db:migrate
|
|
|
|
|
|
|
|
|
|
|
|
# Seed demo data
|
|
|
|
|
|
npm run db:seed
|
|
|
|
|
|
|
|
|
|
|
|
# Start both server and client with hot-reload
|
|
|
|
|
|
npm run dev
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Client: http://localhost:5173
|
|
|
|
|
|
Server: http://localhost:3001
|
|
|
|
|
|
Prisma Studio: `npm run db:studio`
|
|
|
|
|
|
|
|
|
|
|
|
## Unraid Deployment
|
|
|
|
|
|
|
2026-05-04 14:52:15 -05:00
|
|
|
|
See the full step-by-step guide: [unraid-install.md](./unraid-install.md)
|
|
|
|
|
|
|
|
|
|
|
|
Covers CLI (SSH) and GUI (Compose Manager plugin) methods, all environment variable
|
|
|
|
|
|
paths, reverse proxy setup, Stripe webhook registration, and troubleshooting.
|
2026-05-02 19:46:42 -05:00
|
|
|
|
|
|
|
|
|
|
## UniFi Event-Network Setup
|
|
|
|
|
|
|
|
|
|
|
|
See [unifi-dns.md](./unifi-dns.md) for step-by-step instructions to:
|
|
|
|
|
|
|
|
|
|
|
|
- Create a dedicated event SSID.
|
|
|
|
|
|
- Add a local DNS record (`auction.event.lan` → server LAN IP).
|
|
|
|
|
|
- Configure the `LOCAL_HOSTNAME` env var so the app can fail over to it.
|