Skip to content

Coolify deployment ​

The pulsar project runs on Igris in Coolify's production environment. Use ssh igris for host access through Tailscale.

ResourceNameCoolify UUID
Backendpulsar-apistra9bisvotxtjfwp5nxt0gj
MongoDB 7pulsar-mongodb55ezbgu6cruuardfum11fuhl
Redis 7pulsar-redisvwiq4p1yukffrluipcqlip9w

The databases have private Docker network access and persistent volumes. Get credentials from the owner's secret inventory. Set runtime variables in Coolify; see environment variables.

Build and release ​

  1. Use woosal1337/pulsar, branch main, with the read-only Coolify deploy key.
  2. Select Dockerfile, base directory /backend, file /Dockerfile, and port 8000.
  3. Install the committed pdm.lock. Keep FastAPI below 0.137 until the rate limiter supports the new nested-router representation.
  4. Set the domain to http://api.pulsar.investments. Cloudflare terminates public TLS.
  5. Require HTTP 200 from GET /api/health: interval 10 seconds, timeout 5 seconds, five retries, and a 60-second start period.

GitHub webhook 675951987 sends push events to https://deploy.chele.bi/webhooks/source/github/events/manual. Coolify auto-deploy is enabled for every push to main. Keep watch paths empty; Coolify then triggers a deployment for any changed file. The webhook secret is stored in GitHub and Coolify.

GitHub Actions runs backend regression tests and frontend type/build checks. These checks run alongside the native Coolify deployment. The container health check controls promotion. Vercel builds the frontend from the same repository.

Verify a release ​

Check the GitHub webhook delivery, Actions results, and Coolify build commit. Then check public sign-in, saved data, charts, and WebSockets through https://pulsar.investments. A successful build alone does not verify the public route.

The recovery record contains the first completed push-to-production check and its deployment identifiers.

Released under the MIT License.