How it helps your business
Key Benefits
- Global Standard: Join a massive community and follow established patterns for open data.
- API First: Every dataset in CKAN is instantly queryable via a JSON API.
- Universal Previews: Users can explore data directly in their browser before downloading.
- Massive Scalability: Battle-tested by major governments with millions of metadata records.
- Enterprise Extensions: Add support for S3 storage, custom workflows, and deep geospatial search.
Production Architecture Overview
- CKAN Web: The Python/Flask core application.
- PostgreSQL: Stores metadata, configuration, and the DataStore.
- Solr: Provides high-performance full-text search and faceted navigation.
- Redis: Handles core application caching and task queuing.
- DataPusher: An external service that imports CSV/Excel data into PostgreSQL.
- NGINX: Serves as a reverse proxy and handles static assets.
How we deploy this for you
Security Hardened
Firewalls, SSL, and hardened kernels out of the box.
Performance Tuned
Optimized for speed with cache and DB fine-tuning.
Automated Backups
Daily off-site backups so you never lose your data.
Private Cloud
You own the server and the data. No middleman.
Implementation Blueprint
Prerequisites
sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start dockerDocker Compose Production Setup
version: '3'
services:
ckan:
image: ckan/ckan:latest
ports:
- "5000:5000"
environment:
- CKAN_SQLALCHEMY_URL=postgresql://ckan:password@db/ckan
- CKAN_SOLR_URL=http://solr:8983/solr/ckan
- CKAN_REDIS_URL=redis://redis:6379/1
depends_on:
- db
- solr
- redis
db:
image: ckan/postgresql:latest
environment:
- POSTGRES_USER=ckan
- POSTGRES_PASSWORD=password
volumes:
- pg_data:/var/lib/postgresql/data
solr:
image: ckan/solr:latest
volumes:
- solr_data:/opt/solr/server/solr/ckan/data
redis:
image: redis:6-alpine
volumes:
pg_data:
solr_data:Kubernetes Production Deployment (Recommended)
helm repo add ckan https://ckan.github.io/ckan-helm/
helm install my-portal ckan/ckan --namespace data-portal --create-namespace- Horizontal Scaling: Scale web pods to handle thousands of simultaneous users.
- Resilient Data Store: Use managed PostgreSQL and Solr clusters for maximum uptime.
- Storage Flexibility: Easily attach S3 or Azure Blob Storage for dataset file storage.
Scaling & Performance
- Caching: Implement a heavy caching layer (Varnish or NGINX) in front of the CKAN API.
- Dedicated Workers: Run DataPusher and harvester tasks on separate pods to avoid impacting web performance.
- Solr Optimization: Tune Solr's memory and shard the index if you have hundreds of thousands of datasets.
Backup & Maintenance
- Database Dumps: Regularly backup the primary PostgreSQL and the DataStore DB separately.
- Metadata Integrity: Use CKAN's hashing tools to ensure data consistency across the harvest and store lifecycle.
- Volume Backups: Ensure persistent volumes for Solr and file storage (if local) are snapshotted daily.
Includes Security & performance standards
Best place to host CKAN
We recommend Hostinger for its reliability and low cost. It's the perfect home for your new apps, featuring easy setup and 24/7 support.
Get Started on HostingerCompare Similar Tools
Kubernetes
Kubernetes is a production-grade, open-source platform for automating deployment, scaling, and operations of application containers.
Supabase
Supabase is the leading open-source alternative to Firebase. It provides a full backend-as-a-service (BaaS) powered by PostgreSQL, including authentication, real-time subscriptions, and storage.