Docker Installation
Docker is the recommended way to install NocoDB for both development and production use.Docker with SQLite
The simplest way to get started. SQLite is embedded and requires no additional database setup:SQLite is perfect for development and small to medium workloads. For production deployments with multiple users, consider using PostgreSQL or MySQL.
Docker with PostgreSQL
For production deployments, PostgreSQL offers better performance and scalability:Docker Compose with PostgreSQL
For a complete setup with both NocoDB and PostgreSQL in containers:- Sets up PostgreSQL 16.6 with automatic health checks
- Configures NocoDB to wait for the database to be ready
- Persists data in Docker volumes
- Automatically restarts containers on failure
Auto-upstall (Production)
Auto-upstall is a single command that sets up a production-ready NocoDB instance with all necessary services.What Auto-upstall Does
This powerful script automatically:- 🐳 Installs all pre-requisites (Docker, Docker Compose)
- 🚀 Installs NocoDB with PostgreSQL, Redis, Minio, and Traefik gateway
- 🔄 Upgrades NocoDB to the latest version when run again
- 🔒 Sets up SSL certificates and automatic renewal
Auto-upstall requires a domain or subdomain. You’ll be prompted to enter it during installation.
Requirements for Auto-upstall
- A server running Linux (Ubuntu, Debian, CentOS, etc.)
- Root or sudo access
- A domain or subdomain pointing to your server
- Ports 80 and 443 available
Binary Installation
Binaries are available for quick local testing. They are not recommended for production use.- macOS
- Linux
- Windows
Environment Variables
Customize your NocoDB installation with environment variables:| Variable | Description | Default |
|---|---|---|
NC_DB | Database connection string | SQLite in /usr/app/data |
NC_AUTH_JWT_SECRET | JWT secret for authentication | Auto-generated |
NC_PUBLIC_URL | Public URL for your instance | http://localhost:8080 |
NC_DISABLE_TELE | Disable telemetry | false |
PORT | Port to run NocoDB | 8080 |
Database Connection Strings
Production Deployment with Traefik
For a complete production setup with SSL, reverse proxy, and automatic updates:Deploy with Docker Compose
Use the production docker-compose configuration that includes:
- NocoDB application
- PostgreSQL database
- Traefik reverse proxy with automatic SSL
- Watchtower for automatic updates
/docker-compose/3_traefik/.Verification
After installation, verify NocoDB is running correctly:Upgrading
To upgrade your NocoDB installation:- Docker
- Docker Compose
- Auto-upstall
Your data is safely stored in Docker volumes and will persist across upgrades.
Troubleshooting
Port Already in Use
If port 8080 is already in use, specify a different port:http://localhost:3000/dashboard
Database Connection Issues
Verify your database connection string format and ensure:- Database server is accessible from the Docker container
- Credentials are correct
- Database exists and user has necessary permissions
Container Won’t Start
Check logs for specific errors:Next Steps
Quick Start
Create your first base and table
Database Configuration
Connect to external databases
Environment Variables
Advanced configuration options
Security Best Practices
Secure your NocoDB instance