Community Methods

Not maintained by the NocoDB team. These methods are provided by platform vendors or the community. For first-class self-hosting, use Quickstart, Single-server, or Custom infrastructure.

Homebrew

For local development on macOS or Linux:

brew tap nocodb/nocodb
brew install nocodb
nocodb

NocoDB starts on http://localhost:8080. The default storage is SQLite. For more than a quick look, use Quickstart instead. Quickstart sets up Postgres.

Cloudron

NocoDB is in the Cloudron App Store. Cloudron does backups, SSL and updates for you.

  1. Open your Cloudron dashboard.
  2. In the App Store, search for "NocoDB".
  3. Click Install.

CapRover

NocoDB is a one-click app on CapRover.

  1. In your CapRover dashboard, go to Apps → One-Click Apps/Databases.
  2. Search for NocoDB.
  3. Deploy it.

Railway

Use the NocoDB Railway template. To find it, search Templates for "NocoDB". Railway sets up Postgres and runs NocoDB automatically.

DigitalOcean App Platform

  1. From the DigitalOcean dashboard, click Create → Apps.
  2. Select Docker Hub as the source.
  3. Set the image to nocodb/nocodb.
  4. Set the environment variables for your database connection.
  5. Launch the app. NocoDB is available at https://your-app-name.ondigitalocean.app/.

For a production setup with Postgres, also create a DigitalOcean Managed Database. Put its connection string in NC_DB_JSON_FILE (mount the file as a config) or in NC_DB.

AWS ECS (Fargate)

NocoDB runs on Fargate. This is the minimal task definition:

{
  "family": "nocodb",
  "networkMode": "awsvpc",
  "containerDefinitions": [{
    "name": "nocodb",
    "image": "nocodb/nocodb:latest",
    "essential": true,
    "portMappings": [{ "containerPort": 8080, "protocol": "tcp" }],
    "secrets": [
      { "name": "NC_DB", "valueFrom": "<YOUR_NC_DB_SECRET_ARN>" }
    ],
    "logConfiguration": {
      "logDriver": "awslogs",
      "options": {
        "awslogs-group": "/ecs/nocodb",
        "awslogs-region": "us-east-1",
        "awslogs-stream-prefix": "ecs"
      }
    }
  }],
  "requiresCompatibilities": ["FARGATE"],
  "cpu": "512",
  "memory": "1024"
}

Use an Application Load Balancer to terminate TLS and forward traffic to port 8080. Use RDS Postgres for the database.

GCP Cloud Run

docker pull nocodb/nocodb:latest
docker tag nocodb/nocodb:latest gcr.io/<YOUR_PROJECT_ID>/nocodb:latest
docker push gcr.io/<YOUR_PROJECT_ID>/nocodb:latest

gcloud run deploy nocodb \
  --image=gcr.io/<YOUR_PROJECT_ID>/nocodb:latest \
  --region=us-central1 \
  --allow-unauthenticated \
  --platform=managed

Cloud Run needs images in GCR or Artifact Registry. This is why the commands above pull, tag and push the image. Set the environment variables for your Postgres with --set-env-vars. Cloud SQL works well.

Sealos / Elestio / RepoCloud

Each of these platforms has a one-click NocoDB template:

Nix / NixOS

The NixOS module is not maintained since NocoDB v0.264.6 (September 2025). The information below remains for reference but is not actively tested against current NocoDB releases.

{
  inputs.nocodb.url = "github:nocodb/nocodb";
  outputs = { nixpkgs, nocodb, ... }: {
    nixosConfigurations.hostname = nixpkgs.lib.nixosSystem {
      modules = [
        nocodb.nixosModules.nocodb
        { services.nocodb.enable = true; }
      ];
    };
  };
}

FreeBSD / FreeNAS / TrueNAS Jail

Refer to this community gist by C. R. Zamana to install NocoDB in a jail on systems based on FreeBSD.

Last updated on

Latest product updates?See Changelog
Stay in the loop? Follow us onLinkedInLinkedInYouTubeYouTubeXX