Principle:Datahub project Datahub Quickstart Launch
| Field | Value |
|---|---|
| Page Type | Principle |
| Workflow | Docker_Quickstart_Deployment |
| Principle Name | Quickstart_Launch |
| Repository | Datahub_project_Datahub |
| Implemented By | Implementation:Datahub_project_Datahub_Docker_CLI_Quickstart |
| Last Updated | 2026-02-09 17:00 GMT |
Overview
Description
Quickstart_Launch is the principle of enabling one-command local deployment of a multi-service metadata platform. DataHub's quickstart encapsulates the complexity of provisioning a database, search engine, message broker, backend API, and frontend application into a single CLI invocation. This principle embodies the infrastructure-as-code pattern applied to local development environments, where a declarative compose specification replaces manual service-by-service setup.
Usage
This principle is applied whenever a developer, evaluator, or CI pipeline needs a fully functional DataHub instance running locally. The one-command deployment:
- Downloads or updates the Docker Compose specification to
~/.datahub/quickstart/docker-compose.yml. - Pulls the required Docker images for all services.
- Orchestrates the startup sequence respecting inter-service dependencies.
- Exposes the platform on well-known local ports (8080 for GMS, 9002 for the frontend).
The operator need not understand the internal topology of DataHub's services to get a working instance.
Theoretical Basis
Infrastructure-as-Code Pattern
Infrastructure-as-Code (IaC) is the practice of managing and provisioning computing resources through machine-readable definition files rather than through interactive configuration tools. Docker Compose is a lightweight form of IaC where a YAML file declares the desired state of a multi-container application: which images to run, how they connect, what volumes they mount, and what ports they expose.
The quickstart command takes this a step further by automating the acquisition of the IaC artifact itself. Rather than requiring the user to clone a repository and locate the correct compose file, the CLI downloads the appropriate version-matched compose specification on the user's behalf.
Docker Compose Orchestration for Local Development
Docker Compose orchestration provides several guarantees that are critical for local development:
- Deterministic topology -- The same compose file produces the same network of services, regardless of the host operating system.
- Dependency ordering -- The
depends_ondirective combined with health checks ensures that services start in the correct order (e.g., MySQL before GMS, GMS before Frontend). - Network isolation -- All services communicate over a dedicated Docker network, preventing port collisions with other local processes (except for explicitly published ports).
- Reproducibility -- Pinning image tags (via the
--versionflag) ensures that every developer on a team runs the same version of every service.
Single Entry Point Philosophy
The single entry point philosophy reduces cognitive load and onboarding friction. A new contributor should be able to go from zero to a running DataHub instance with:
pip install datahub
datahub docker quickstart
This stands in contrast to approaches that require cloning the repository, installing multiple build tools, and manually configuring environment variables.
Related Pages
- Implementation:Datahub_project_Datahub_Docker_CLI_Quickstart -- The CLI command that implements the one-command deployment.
- Principle:Datahub_project_Datahub_Docker_Prerequisites -- Prerequisites that must be satisfied before the quickstart can succeed.
- Principle:Datahub_project_Datahub_Service_Health_Monitoring -- Health monitoring that validates the deployment after launch.
- Principle:Datahub_project_Datahub_UI_Access -- Accessing the web interface after the quickstart completes.
- Heuristic:Datahub_project_Datahub_Docker_Memory_Preflight