Fastest open-source tool for replicating Databases to Apache Iceberg or Data Lakehouse. ⚡ Efficient, quick and scalable data ingestion for real-time analytics. Starting with MongoDB. Visit olake.io/docs for the full documentation, and benchmarks
Olake-UI offers an intuitive web interface to configure, monitor, and manage your data replication jobs.
This Docker Compose setup provides a comprehensive environment(OLake UI, Temporal worker, Temporal service, and dependencies) for demonstrating and exploring Olake's capabilities. This is the recommended way to get started for local development or evaluation.
- Docker installed and running (Docker Desktop recommended for Mac/Windows)
- Docker Compose (comes with Docker Desktop)
- Make sure port
8000is available, as OLake UI is exposed on that port.
- One-Command Setup:
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose.yml | docker compose -f - up -d-
Access the services:
- OLake UI: http://localhost:8000
- Default login: Username:
admin, Password:password
Custom Admin User:
The stack automatically creates an initial admin user on first startup. To change the default credentials, edit the x-signup-defaults section in docker-compose.yml:
x-signup-defaults:
username: &defaultUsername "your-custom-username"
password: &defaultPassword "your-secure-password"
email: &defaultEmail "[email protected]"Custom Data Directory:
By default, data is stored in ${PWD}/olake-data directory. To use a different location, edit the x-app-defaults section in docker-compose.yml:
x-app-defaults:
host_persistence_path: &hostPersistencePath /your/host/pathMake sure the directory exists and is writable.
Encryption Modes:
Configure encryption in docker-compose.yml:
x-encryption:
# 1. For AWS KMS (starts with 'arn:aws:kms:'):
key: &encryptionKey "arn:aws:kms:..."
# 2. For local AES-256 (any other non-empty string):
# key: &encryptionKey "secret-key" # Auto-hashed to 256-bit key
# 3. For no encryption (not recommended for production):
# key: &encryptionKey ""- KMS: Uses AWS Key Management Service for encryption/decryption
- Local: Uses AES-256-GCM with key derived from your passphrase
- Empty: No encryption (for development only)
- If there are any file permission error, ensure the host persistence/config directory is writable by Docker.
- For complete logs, use:
docker-compose logs -f
- For logs specific to a service, use:
docker compose logs -f <service_name>
To update OLake UI to the latest version, use the following command:
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose.yml | docker compose -f - down && \
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose.yml | docker compose -f - up -dNote: Your data and configurations will be preserved as they are stored in persistent volumes and the olake-data directory.
We ❤️ contributions big or small check our Bounty Program. As always, thanks to our amazing contributors!.
- To contribute to Olake-UI visit CONTRIBUTING.md
- To contribute to Olake Main Repo, visit OLake Main Repository.
- To contribute to OLake website and documentation, visit Olake Docs Repository.