seubert-claims/ondeck/SERVER.md

1.6 KiB

Horizon Dev Server

How it runs

The app runs as a systemd service (horizon.service) and will automatically start on boot and restart on crash.

Managing the server

systemctl start horizon      # start
systemctl stop horizon       # stop
systemctl restart horizon    # restart
systemctl status horizon     # check status

Logs

tail -f /var/log/horizon.log

Details

  • Port: 3000 (proxied via Pangolin to https://horizon.seubert.cloud)
  • Stack directory: /opt/stacks/horizon
  • Mode: Docker Compose (production Next.js standalone build)
  • Container names: horizon-app, horizon-db

Managing the container stack

cd /opt/stacks/horizon
docker compose pull && docker compose up -d --build   # rebuild & restart
docker compose restart horizon-app                    # restart app only
docker compose down                                   # stop all
docker compose logs -f horizon-app                    # app logs
docker compose logs -f horizon-db                     # db logs

After code changes (rebuild image)

cd /opt/stacks/horizon
docker compose up -d --build horizon-app

After schema changes

cd /opt/stacks/horizon
docker compose exec horizon-app npx prisma db push
docker compose restart horizon-app

Dev server (local development only)

The systemd dev service still runs at /opt/projects/OnDeck/ondeck:

systemctl start horizon      # start dev
systemctl stop horizon       # stop dev
systemctl restart horizon    # restart dev
systemctl status horizon     # check status