多维表格
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

150 lines
4.6 KiB

---
title: 'Upgrading'
description: 'Upgrading NocoDB : Docker, Node and Homebrew!'
tags: ['Open Source']
keywords: ['NocoDB upgrade', 'upgrade NocoDB', 'upgrade nocodb']
---
3 months ago
By default, if `NC_DB` is not specified upon [installation](/getting-started/self-hosted/installation/auto-install), 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](/engineering/architecture).
## Docker
### Find, Stop & Delete NocoDB Docker Container
```bash
# 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
```bash
# find NocoDB image
docker images
# delete NocoDB image
docker rmi <YOUR_IMAGE_ID>
```
### Pull the latest NocoDB image with same environment variables
```bash
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](https://www.whitesourcesoftware.com/free-developer-tools/blog/update-docker-images/).
### Example: Docker Upgrade
```bash
# 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
```bash
npm uninstall nocodb
```
#### Install NocoDB package
```bash
npm install --save nocodb
```
## Homebrew
Run following commands to upgrade Homebrew Nocodb version.
```bash
# Update the local homebrew formulas
brew update
# Upgrade nocodb package
brew upgrade nocodb
```