4.4 KiB
title | description | position | category | menuTitle | link |
---|---|---|---|---|---|
Setup and Usages | Simple installation - takes about three minutes! | 1 | Setup and Usages | Installation | https://codesandbox.io/embed/vigorous-firefly-80kq5?hidenavigation=1&theme=dark |
Simple installation - takes about three minutes!
Prerequisites
- Must haves
- node.js >= 12 / Docker
- MySql / Postgres / SQLserver / SQLite Database
- Nice to haves
- Existing schemas can help to create APIs quickly.
- An example database schema can be found here.
Quick try
1-Click Deploy to Heroku
Node app / Docker
npx create-nocodb-app
docker run -d --name nocodb -p 8080:8080 nocodb/nocodb
git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
Local Setup
If you want to modify the source code, there are two scenarios. You can either
- change backend only or
- change both frontend and backend separately
Even though the package nocodb/packages/nocodb
is a backend project, you can still visit the dashboard as it includes nc-lib-gui
.
cd packages/nocodb
npm install
npm run watch:run
# open localhost:8080/dashboard in browser
As nc-lib-gui
is hosted in npm registry, for local development on frontend part, you should run nc-gui
separately.
cd packages/nc-gui
npm install
npm run dev
# open localhost:3000/dashboard in browser
If you wish to combine the frontend and backend together in your local devlopment environment, you may use packages/nc-lib-gui
as a local depenedency by updating the packages/nocodb/package.json
to
"nc-lib-gui": "file:../nc-lib-gui"
In this case, whenever there is any changes made in frontend, you need to run npm run build:copy
under packages/nc-gui/
.
Production Setup
NocoDB requires a database to store metadata of spreadsheets views and external databases.
And connection params for this database can be specified in NC_DB
environment variable.
Docker
docker run -d -p 8080:8080 \
-e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb
docker run -d -p 8080:8080 \
-e NC_DB="pg://host:port?u=user&p=password&d=database" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb
docker run -d -p 8080:8080 \
-e NC_DB="mssql://host:port?u=user&p=password&d=database" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb
Docker Compose
git clone https://github.com/nocodb/nocodb
cd docker-compose
cd mysql
docker-compose up
git clone https://github.com/nocodb/nocodb
cd docker-compose
cd pg
docker-compose up
git clone https://github.com/nocodb/nocodb
cd docker-compose
cd mssql
docker-compose up