Implementation:Datahub project Datahub DataHub Frontend Access
| Field | Value |
|---|---|
| Page Type | Implementation (External Tool Doc) |
| Workflow | Docker_Quickstart_Deployment |
| Implementation Name | DataHub_Frontend_Access |
| Repository | Datahub_project_Datahub |
| Implements | Principle:Datahub_project_Datahub_UI_Access |
| Last Updated | 2026-02-09 17:00 GMT |
Overview
Description
DataHub_Frontend_Access describes how to access the DataHub web interface after a quickstart deployment. The frontend runs as the datahub-frontend-react Docker container, serving a React/TypeScript application that communicates with the GMS backend via GraphQL. It is accessible at http://localhost:9002 by default and provides the primary human interface for browsing, searching, and governing metadata.
Usage
After running datahub docker quickstart and confirming all services are healthy:
# Open the DataHub UI in your default browser
open http://localhost:9002
# Or verify it is responding via curl
curl -s -o /dev/null -w "%{http_code}" http://localhost:9002
# Expected: 200
Login with the default credentials:
| Field | Value |
|---|---|
| Username | datahub
|
| Password | datahub
|
Code Reference
Source Location
| File | Lines | Description |
|---|---|---|
docker/quickstart/docker-compose.quickstart-profile.yml |
L156-165 | Frontend service definition in Docker Compose |
Service Configuration
datahub-frontend-react:
image: acryldata/datahub-frontend-react:${DATAHUB_VERSION:-head}
ports:
- "${DATAHUB_MAPPED_FRONTEND_PORT:-9002}:9002"
environment:
- DATAHUB_GMS_HOST=datahub-gms
- DATAHUB_GMS_PORT=8080
- DATAHUB_SECRET=YouKnowNothing
- DATAHUB_APP_VERSION=1.0
- DATAHUB_PLAY_MEM_BUFFER_SIZE=10MB
- METADATA_SERVICE_AUTH_ENABLED=${METADATA_SERVICE_AUTH_ENABLED:-false}
depends_on:
datahub-gms:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:9002/"]
interval: 10s
timeout: 5s
retries: 5
start_period: 60s
Import
The frontend is a Docker container, not a Python library. It is deployed as part of the quickstart compose stack and does not require a direct import.
I/O Contract
Inputs
| Input | Type | Description |
|---|---|---|
| GMS Backend | HTTP dependency | The frontend requires GMS to be running and healthy at the configured host and port (default: datahub-gms:8080 on the Docker network)
|
| Docker Image | acryldata/datahub-frontend-react |
The frontend Docker image, version-tagged by DATAHUB_VERSION
|
| Port mapping | DATAHUB_MAPPED_FRONTEND_PORT (default: 9002) |
The host port that maps to the container's port 9002 |
Outputs
| Output | Description |
|---|---|
| Web UI | React single-page application served at http://localhost:9002
|
| GraphQL endpoint | Available at http://localhost:9002/api/graphql for programmatic access
|
| Health endpoint | HTTP 200 at http://localhost:9002/ when healthy
|
Usage Examples
Accessing the UI After Quickstart
# Launch DataHub
datahub docker quickstart
# Wait for services to become healthy, then open the UI
# Navigate to http://localhost:9002 in a browser
# Login: datahub / datahub
Querying the GraphQL API Directly
# Query the GraphQL endpoint from the command line
curl -X POST http://localhost:9002/api/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"query": "{ me { corpUser { username } } }"}'
Using a Custom Frontend Port
# Deploy with frontend on port 3000 instead of 9002
export DATAHUB_MAPPED_FRONTEND_PORT=3000
datahub docker quickstart
# Access at http://localhost:3000
Verifying Frontend Health
# Check that the frontend container is healthy
docker inspect --format='{{.State.Health.Status}}' datahub-frontend-react
# Expected: healthy
Related Pages
- Principle:Datahub_project_Datahub_UI_Access -- The principle of web-based metadata exploration.
- Implementation:Datahub_project_Datahub_Docker_CLI_Quickstart -- The quickstart command that provisions the frontend.
- Implementation:Datahub_project_Datahub_Docker_Health_Check_Pattern -- Health check configuration that gates frontend readiness.
- Implementation:Datahub_project_Datahub_Docker_CLI_Ingest_Sample_Data -- Loading sample data so the UI has content to browse.
- Environment:Datahub_project_Datahub_Docker_Runtime
- Environment:Datahub_project_Datahub_Frontend_Build