Orbit
Documentation

Services

Run shared engines beside the projects that use them.

Manage shared engines, per-project service selection, Docker Compose, and language runtimes from Orbit.

Shared engines

Services are downloaded and started on demand.

Orbit manages Mailpit, PostgreSQL, MinIO, and Redis-compatible storage. Service rows expose status, setup values, start and stop actions, and uninstall actions.

  1. Open Services to inspect engine state.
  2. Start an engine manually when you want it available before a project runs.
  3. Use setup values when an app needs connection strings or ports.
  4. Uninstall only when the binary and captured service data should be removed.
Orbit Services screen
Services shows engine status, setup values, and lifecycle actions together.

Use this screen to start engines before a project needs them, copy setup values, or remove data when the local service state is stale.

Docker Compose

Project Compose services start with the project.

Compose services belong to the project that declares them. Orbit detects compose.yaml, compose.yml, docker-compose.yaml, or docker-compose.yml from the project root, then starts and stops that stack with the selected runtime.

  1. Keep the Compose file in the project root.
  2. Start the project from Project detail or the dashboard.
  3. Open Details to inspect Compose service names, state, health, and published ports.
  4. Use Logs when Docker is missing or compose up fails.
  • Shared engines appear on the Services page.
  • Project Compose containers appear in the selected project's Details tab.
  • Docker must be installed where the desktop app can find it.
Orbit project detail with Docker Compose services
Details shows the Compose file and the containers attached to the selected project.

Use this screenshot to confirm that Compose is not a global service row. It is project-owned runtime state.

Project services

Project service selection stays scoped.

The project Services tab controls which engines belong to the selected project. When a project starts, Orbit starts enabled engines, provisions per-project resources, and injects missing environment values.

  • PostgreSQL creates one database per project slug.
  • MinIO creates one bucket per project slug.
  • Redis-compatible storage uses a per-project data file.
  • Service environment values are injected only when the project has not already set that variable.
Orbit project Services tab
The project Services tab keeps enabled engines scoped to the selected app.

Use the project tab to keep dependencies scoped. Orbit can provision project databases, buckets, and injected variables from this selection.

Language runtimes

Runtime versions can be bundled or system-managed.

Runtimes covers Node.js, PHP, and Python. Orbit detects system runtimes, can install managed versions, and resolves project runtime needs from files such as .nvmrc, .node-version, composer.json, .python-version, and pyproject.toml.

  1. Open Runtimes to inspect installed managed versions.
  2. Install a version before a project needs it when network access is limited.
  3. Enable prefer system runtime when the machine runtime should win.
  4. Remove unused managed versions after confirming no project needs them.
Orbit Runtimes screen
Runtimes shows managed and system versions before a project starts.

Use Runtimes before blaming project code for command failures. Version selection often explains install, build, and start errors.