Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 821cbe0

Browse files
committedJun 3, 2025
chore(self-hosting/installtion): refactor
1 parent 71b9cdd commit 821cbe0

20 files changed

+1031
-376
lines changed
 
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
---
2+
title: 'Behind Apache'
3+
description: 'Run NocoDB Behind Apache Proxy.'
4+
tags: ['nginx', 'proxy']
5+
keywords : ['NocoDB Apache', 'NocoDB Proxy']
6+
---
7+
import { Tab, Tabs } from 'fumadocs-ui/components/tabs';
8+
9+
## Prerequisites
10+
We assume you already have a Apache server running.
11+
12+
## Step 1 - Run NocoDB
13+
14+
<Tabs items={['docker', 'docker-compose', 'nix']}>
15+
<Tab value="docker">
16+
```bash
17+
docker run \
18+
-d \
19+
--name nocodb \
20+
--tmpfs /run:nodev,nosuid,exec,mode=0755 \
21+
-v ./nocodb:/usr/app/data \
22+
-e NC_AUTH_JWT_SECRET="your-super-secret-string" \
23+
-e NC_PUBLIC_URL="__your_nocodb_domain__.com" \
24+
-p 8080:8080 \
25+
--restart unless-stopped \
26+
-it nocodb/nocodb:latest
27+
```
28+
</Tab>
29+
30+
<Tab value="docker-compose">
31+
```yaml
32+
version: "3.9"
33+
services:
34+
nocodb:
35+
container_name: nocodb
36+
image: nocodb/nocodb:latest
37+
environment:
38+
NC_AUTH_JWT_SECRET: 'your-super-secret-passs'
39+
NC_PUBLIC_URL: '__your_nocodb_domain__.com'
40+
ports:
41+
- "8080:8080"
42+
volumes:
43+
- nocodb_data:/usr/app/data
44+
tmpfs:
45+
- /run:nodev,nosuid,exec,mode=0755
46+
volumes:
47+
nocodb_data:
48+
```
49+
</Tab>
50+
51+
<Tab value="nix">
52+
```bash
53+
nix run github:nocodb/nocodb/master
54+
```
55+
</Tab>
56+
</Tabs>
57+
58+
## Step 2 - Enable the required Apache modules
59+
60+
The Apache config shown later needs the following modules enabled.
61+
62+
```bash
63+
sudo a2enmod proxy headers proxy_http proxy_wstunnel rewrite
64+
sudo systemctl restart apache2
65+
```
66+
67+
## Step 3 - Create the Apache config for NocoDB
68+
69+
Create a new `nocodb.conf` in `/etc/apache2/sites-enabled/` like the following example
70+
71+
> Make sure to replace any __nocodb_domain__ with you own domain
72+
73+
```
74+
<VirtualHost *:80>
75+
ProxyPreserveHost On
76+
77+
# Replace with your domain
78+
ServerName __nocodb_domain__
79+
80+
ProxyPass / http://localhost:8080/
81+
ProxyPassReverse / http://localhost:8080/
82+
83+
</VirtualHost>
84+
85+
```
86+
87+
## Step 3 - Enable the apache site
88+
89+
```bash
90+
sudo a2ensite nocodb.conf
91+
```
92+
93+
> You should now be able to access NocoDB on your configured domain.

‎content/self-hosting/installation/auto-upstall.mdx

Lines changed: 0 additions & 101 deletions
This file was deleted.

‎content/self-hosting/installation/aws-ecs.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: 'AWS ECS (Fargate)'
2+
title: 'Install on AWS'
33
tags: ['Open Source']
44
description: 'Deploy NocoDB on AWS ECS using Fargate'
55
keywords : ['NocoDB installation', 'NocoDB AWS Fargate installation', 'NocoDB prerequisites']
@@ -111,4 +111,4 @@ This guide will walk you through deploying NocoDB on Amazon ECS using Fargate.
111111
- Ensure that your security groups have the correct inbound and outbound rules.
112112
- The NC_DB environment variable should be properly set to connect to your database.
113113
- Monitor the ECS console and CloudWatch logs for any deployment issues.
114-
- You can customize the task definition and service configuration based on your requirements.
114+
- You can customize the task definition and service configuration based on your requirements.
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
title: 'Install on Cloudron'
3+
tags: ['cloudron', 'docker']
4+
keywords: ['NocoDB Railway', 'Install NocoDB', 'NocoDB Docker']
5+
---
6+
7+
[Cloudron](https://www.cloudron.io/) is a self-hosted platform that simplifies deploying and managing web applications. If you're using your own server and want to host **NocoDB** with auto-updates and domain management, Cloudron is a solid choice.
8+
9+
## Prerequisites
10+
11+
Before proceeding, ensure:
12+
13+
* You have a working Cloudron instance set up on your server.
14+
* You’ve signed into the Cloudron App Store.
15+
* You’re comfortable using the command line and basic Cloudron CLI commands.
16+
17+
## Deploying NocoDB on Cloudron
18+
19+
1. Log into your Cloudron admin panel.
20+
21+
2. Open the **App Store** from the main dashboard.
22+
23+
![Cloudron App Store](/img/v2/installations/cloudron-app-store.png)
24+
25+
3. In the search bar, type **NocoDB**.
26+
27+
![Cloudron Search NocoDB](/img/v2/installations/cloudron-search-nocodb.png)
28+
29+
4. Select the **NocoDB** app and click **Install**.
30+
31+
![Cloudron Install](/img/v2/installations/cloudron-install.png)
32+
33+
5. Configure the app’s domain, access settings, and environment variables as needed.
34+
35+
![Cloudron Configure](/img/v2/installations/cloudron-configure.png)
36+
37+
6. After installation, go to the **My Apps** section and launch your new NocoDB instance.
38+
39+
![Cloudron My Apps](/img/v2/installations/cloudron-my-apps.png)
40+
41+
## Things to Keep in Mind
42+
43+
* **System Requirements**: Make sure your Cloudron server has enough resources (at least 1 vCPU and 1 GB RAM for testing, 2 GB+ recommended for production).
44+
* **Backups**: Take advantage of Cloudron’s built-in backup options to safeguard your NocoDB data.
45+
* **Maintenance**: Regularly update both NocoDB and Cloudron to stay current with security patches and new features.
Lines changed: 60 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,81 @@
11
---
2-
title: 'DigitalOcean'
2+
title: 'Install on DigitalOcean'
33
tags: ['Open Source']
44
keywords : ['NocoDB installation', 'NocoDB Digital Ocean installation', 'NocoDB prerequisites']
55
---
66

7-
Follow these steps to deploy NocoDB on DigitalOcean using their App Platform.
7+
This guide outlines how to deploy **NocoDB** on [DigitalOcean App Platform](https://www.digitalocean.com/products/app-platform), a fully managed solution for container-based applications. It covers provisioning databases, object storage, and setting environment variables for a reliable, scalable setup.
88

9-
### Deployment Steps
9+
## Step 1: Set Up Required Services
1010

11-
1. On the DigitalOcean homepage, click on the Create icon and select "Apps (Deploy your code)".
11+
Since DigitalOcean App Platform doesn't support persistent volumes, NocoDB's data must be stored using **managed services**. You’ll need:
1212

13-
![DigitalOcean Create App](/img/v2/installations/digitalocean-create-app.png)
14-
2. Choose "Docker Hub" as the source.
13+
* **PostgreSQL database**
14+
* **Redis instance**
15+
* **Spaces bucket (S3-compatible storage)**
1516

16-
![DigitalOcean Docker Hub](/img/v2/installations/digitalocean-docker-hub.png)
17+
### PostgreSQL
1718

18-
3. Set the source repository as nocodb/nocodb. You can optionally specify a release tag if you want a specific NocoDB version.
19+
1. Go to **Databases → Create Database**.
20+
2. Choose **PostgreSQL v15** and a region.
21+
3. Use at least 1 vCPU / 1GB RAM for smaller workloads.
22+
4. Once created, go to the connection info and switch to the **Connection String** view—copy this for later.
1923

20-
![DigitalOcean Set Repository](/img/v2/installations/digitalocean-set-repository.png)
24+
### Redis
2125

22-
4. Configure any additional settings as needed.
26+
1. Go to **Databases → Create Database** again.
27+
2. Select **Redis v7**, same region.
28+
3. Minimum specs: 1 vCPU / 1GB RAM.
29+
4. Copy the Redis connection string from the details page.
2330

24-
![DigitalOcean Configure Settings](/img/v2/installations/digitalocean-configure-settings.png)
31+
### Spaces (Object Storage)
2532

26-
5. Name your web service and select the nearest region for cloud hosting.
33+
1. Go to **Spaces Object Storage → Create Spaces Bucket**.
34+
2. Choose the same region used for your DB/Redis.
35+
3. Then go to **API → Generate New Key** to get your `Access Key` and `Secret Key`.
2736

28-
![DigitalOcean Name Service](/img/v2/installations/digitalocean-name-service.png)
37+
## Step 2: Deploy the NocoDB App
2938

30-
6. Choose your preferred hosting plan and click on "Launch Basic App".
39+
1. Navigate to **Apps → Create App**.
3140

32-
![DigitalOcean Hosting Plan](/img/v2/installations/digitalocean-hosting-plan.png)
41+
2. Choose **Docker Hub** as the source.
3342

34-
Your application will be built, and the URL will be live shortly. The URL will look something like https://your-app-name.ondigitalocean.app/.
43+
3. Enter:
3544

45+
* `Repository: nocodb/nocodb`
46+
* `Tag: latest`
3647

37-
### Important Notes
48+
4. Proceed and edit the **HTTP Port** to `8080`.
3849

39-
- Ensure you configure environment variables for database connections if needed.
40-
- Set up persistent storage for your NocoDB data.
41-
- You can scale your app as needed using DigitalOcean's App Platform.
42-
- Consider enabling automatic deployments for easier updates.
50+
5. In the environment variables section, add the following:
51+
52+
* `NC_AUTH_JWT_SECRET`
53+
* `NC_PUBLIC_URL`
54+
* `NC_DB`
55+
* `NC_REDIS_URL`
56+
* `NC_S3_ACCESS_KEY`
57+
* `NC_S3_ACCESS_SECRET`
58+
* `NC_S3_BUCKET_NAME`
59+
* `NC_S3_REGION`
60+
* `NC_S3_ENDPOINT`
61+
62+
> ⚠️ Ensure the `NC_PUBLIC_URL` matches your actual app domain without a trailing slash.
63+
64+
6. Set resources to **1 container with 2GB RAM / 1 vCPU** at a minimum.
65+
7. Complete deployment by clicking **Create Resources**.
66+
67+
## Step 3: Secure the Setup
68+
69+
For PostgreSQL and Redis, add your NocoDB app as a **trusted source**:
70+
71+
* Navigate to your database → **Settings → Trusted Sources** → Add the app.
72+
73+
## Updating NocoDB
74+
75+
To upgrade to a new NocoDB version:
76+
77+
1. Go to **App Settings → Source → Edit Component**.
78+
2. Change the image tag (e.g., `latest`, or a specific version).
79+
3. Save to trigger a redeploy.
80+
81+
You're all set! Visit your app URL to access your NocoDB workspace.

0 commit comments

Comments
 (0)