# Installation

# Installation

This page describes common installation patterns for Curiosity Workspace environments. The exact packaging can differ by deployment model, but the operational goals are consistent:

  • Start the Workspace service
  • Persist storage (data + configuration)
  • Reach the web UI from your browser

# Before you install

  • Decide the environment:
    • Local developer machine for experimentation
    • Shared dev/staging environment
    • Production deployment
  • Decide your storage model:
    • Local disk for development
    • Managed volumes for production (backup/restore strategy)
  • Decide your access model:
    • internal-only access (VPN / private network)
    • public access behind an authenticating reverse proxy (only when required)

# Installation options

Curiosity Workspace is typically deployed using one of these approaches:

  • Desktop / local app (developer-friendly)
  • Container-based deployment (Docker / Kubernetes)
  • Server install (VMs / bare metal)

Your organization may standardize on one model; the rest of the docs assume you can reach a workspace at a base URL (for example, http://localhost:8080).

# First-boot checklist

After the service is running:

  • Open the UI and complete any initial setup prompts.
  • Create/rotate admin credentials (never leave defaults in non-dev environments).
  • Create an API token for ingestion connectors and store it in a secret manager.
  • Confirm persistence by restarting the service and verifying the workspace state remains.

# Post-install validation checklist

After installing, confirm:

  • Web UI loads at your workspace URL
  • You can log in with an admin account
  • Storage is persistent across restarts
  • Background tasks (indexing/parsing) can run

# Common installation pitfalls

  • Ephemeral storage: running with a non-persistent volume will “lose” data on restart.
  • Reverse proxies and origins: if you deploy behind a proxy, ensure UI/API base URLs, headers, and allowed origins are configured consistently.
  • Ports and binding: confirm the service binds to the expected interface (localhost vs 0.0.0.0).

# Next steps