Skip to main content
Version: Latest

Upgrading

By default, if NC_DB is not specified upon installation, then SQLite will be used to store metadata. We suggest users to separate the metadata and user data in different databases as pictured in our architecture.

Docker

Find, Stop & Delete NocoDB Docker Container

# find NocoDB container ID
docker ps
# stop NocoDB container
docker stop <YOUR_CONTAINER_ID>
# delete NocoDB container
docker rm <YOUR_CONTAINER_ID>

Note: Deleting your docker container without setting NC_DB or mounting to a persistent volume for a default SQLite database will result in losing your data. See examples below.

Find & Remove NocoDB Docker Image

# find NocoDB image
docker images
# delete NocoDB image
docker rmi <YOUR_IMAGE_ID>

Pull the latest NocoDB image with same environment variables

docker run -d -p 8080:8080 \
-e NC_DB="<YOUR_NC_DB_URL>" \
-e NC_AUTH_JWT_SECRET="<YOUR_NC_AUTH_JWT_SECRET_IF_GIVEN>" \
nocodb/nocodb:latest

Updating NocoDB docker container is similar to updating any other docker containers.

Example: Docker Upgrade

# Previous docker run
#
terminal % docker run -d --name myNocoDB \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb:0.111.0
Unable to find image 'nocodb/nocodb:0.111.0' locally
0.111.0: Pulling from nocodb/nocodb
ad3fa0ea069c: Pull complete
e43b9156e769: Pull complete
c1bee0da1504: Pull complete
adf78ab024d9: Pull complete
cd8000d2c16a: Pull complete
Digest: sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4
Status: Downloaded newer image for nocodb/nocodb:0.111.0
afdc8edd1005c93e1df8f90d02e46430ea7b5c5610a2bf9ba105238d6c4d927b


# Find, stop and delete NocoDB docker container
#
terminal % docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
afdc8edd1005 nocodb/nocodb:0.111.0 "/usr/bin/dumb-init …" 18 seconds ago Up 18 seconds 0.0.0.0:8080->8080/tcp myNocoDB
0202041b3607 postgres:14.7 "docker-entrypoint.s…" 2 days ago Up 8 hours (healthy) 0.0.0.0:5432->5432/tcp scripts_pg147_1

terminal % docker stop afdc8edd1005
afdc8edd1005

terminal % docker rm afdc8edd1005
afdc8edd1005


# Find and remove NocoDB docker image
#
terminal % docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nocodb/nocodb 0.111.0 34609411e87c 5 weeks ago 132MB
mysql 8.0 6a0560a40914 7 weeks ago 599MB
postgres 14.7 2075a95c7b3b 4 months ago 358MB

terminal % docker rmi 34609411e87c
Untagged: nocodb/nocodb:0.111.0
Untagged: nocodb/nocodb@sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4
Deleted: sha256:3bfxxxx38e682742cbxxxx535b3503af45e931fb9bd15f46eca7d33cf4c54d72
Deleted: sha256:952152b5da42ae057c6688a04xxxx72e1a2f91825956f5c7e35f91d5b285d4d8
Deleted: sha256:3155197577xxxx673675ed1bce761714a24d7803f70a905740f7d4c248cxxxxx


# Pull & run the latest NocoDB image with same environment variables as before
#
terminal % docker run -d --name myNocoDB \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb:latest
Unable to find image 'nocodb/nocodb:latest' locally
latest: Pulling from nocodb/nocodb
ad3fa0ea069c: Pull complete
e43b9156e769: Pull complete
c1bee0da1504: Pull complete
adf78ab024d9: Pull complete
28ce4fc94e48: Pull complete
Digest: sha256:5c6df5ff0eb1278e1dbfe684af630a743ca73dfec8c30cab3bae9c1d0d640287
Status: Downloaded newer image for nocodb/nocodb:latest
ae793a04b75f2f3ee78abbaef09891396a884ec83320151a266326195649a058


Node

Updating docker container is similar to updating a npm package.

From your root folder

Uninstall NocoDB package

npm uninstall nocodb

Install NocoDB package

npm install --save nocodb

Homebrew

Run following commands to upgrade Homebrew Nocodb version.

# Update the local homebrew formulas
brew update
# Upgrade nocodb package
brew upgrade nocodb