The most reliable production setup is NocoDB’s official single-server Docker Compose installer on a Linux VPS, with a real domain, Traefik and Let’s Encrypt handling HTTPS. The generated stack runs NocoDB, its worker, PostgreSQL and Redis. Use at least 2 vCPU, 2 GB RAM and 10 GB of disk; for a production workload, NocoDB’s current guidance is 4 vCPU, 8 GB RAM and 50 GB or more. Back up the PostgreSQL database, attachments and configuration off the VPS before upgrades or recovery work.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
What you are building
NocoDB is self-hosted when its application and data run on infrastructure you control rather than on NocoDB Cloud. On a single Linux VPS, the supported deployment path is Docker Compose. The official stack creates four services:
As an Amazon Associate I earn from qualifying purchases.
- nocodb: the web application and API.
- worker: background jobs.
- PostgreSQL: the application database.
- Redis: queue and cache support.
The installer writes a docker-compose.yml, docker.env, nocodb/db.json, an update.sh helper and a letsencrypt/ directory. With a domain supplied, the generated configuration uses Traefik and ports 80 and 443 for certificate-backed HTTPS.
Choose VPS capacity before installing
| Use case | CPU | Memory | Disk | What the figure means |
|---|---|---|---|---|
| Published minimum | 2 vCPU | 2 GB RAM | 10 GB | NocoDB’s current documented baseline, not a workload capacity guarantee. |
| Production starting point | 4 vCPU | 8 GB RAM | 50 GB or more | NocoDB’s current production recommendation. |
Disk usage grows beyond the application image. Leave room for PostgreSQL data, uploaded attachments, database dumps, Docker image layers, logs and temporary files. A large attachment library or many concurrent users may require more CPU, RAM and storage than either published figure. Monitor the VPS after launch rather than treating the recommendation as a hard limit.
#1 Best Overall
- BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
- EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
- COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
- LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
- WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.
Prerequisites and DNS
- A Linux VPS with administrative access and a supported Docker Engine installation.
- A domain name whose DNS record points to the VPS public IP address.
- Firewall access for SSH (normally TCP 22) and, for a public HTTPS deployment, TCP 80 and 443.
- A plan for off-server backups. A Docker volume on the same VPS is persistent storage, not a backup.
Use a current, actively maintained PostgreSQL release. NocoDB supports PostgreSQL 12 and later releases that are still maintained. If your organization already operates PostgreSQL, Redis or a TLS proxy, use NocoDB’s custom-infrastructure examples instead of creating duplicate services on the VPS.
Install the official Docker Compose stack
Review the installer before execution
The installer is available at https://install.nocodb.com/noco.sh. Piping an unfamiliar script directly into a shell is convenient but makes review difficult. Download it, inspect it, then run the local copy:
- Download the script:
curl -fsSL https://install.nocodb.com/noco.sh -o noco.sh. - Read it with a pager such as
less noco.shand verify that it is the script you intend to run. - Execute the installer according to the single-server instructions. For an evaluation quickstart, the documented command is
curl -fsSL https://install.nocodb.com/noco.sh | bash -s -- --quick; a public production VPS should use the single-server path and supply its domain.
The script creates the Compose files and directories in its chosen working location. Keep that directory protected: docker.env and nocodb/db.json contain connection details and secrets.
Start and inspect the services
From the directory containing docker-compose.yml, start the stack in the background:
docker compose up -d
Follow application startup output with:
docker compose logs -f nocodb
Check the service state with docker compose ps. The first start can take longer while images are downloaded and the database is initialized. Do not delete volumes simply because the web interface is not immediately available; inspect logs first.
Configure the public domain and HTTPS
Let the single-server installer manage TLS
For a straightforward public deployment, give the installer a domain and let its Traefik configuration obtain and renew Let’s Encrypt certificates. DNS must resolve to the VPS, and ports 80 and 443 must reach the host. After issuance, open the HTTPS URL for the domain rather than the server’s private address.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Rank #2
- WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
- AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
- PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
- ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
- COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed
Public URL settings affect links, redirects and OAuth callbacks. If NocoDB believes its external address is http://localhost, users may receive localhost links, be redirected to the wrong scheme or fail an OAuth callback even though the container itself is healthy.
Use an existing nginx, Caddy, Traefik or load balancer
If another proxy already terminates TLS, run NocoDB behind it on port 8080 and forward the original request information. The proxy must preserve both headers:
Host— the domain the user requested.X-Forwarded-Proto—httpswhen the public connection used HTTPS.
Set the NocoDB public URL to the externally visible HTTPS address, not the internal container address. The exact proxy syntax varies by product, so validate the resulting request headers and redirect location in a browser or with an HTTP client. Missing or incorrect headers commonly produce HTTP redirects, localhost links and failed authentication callbacks.
Understand persistence and volumes
The Compose project uses named Docker volumes for PostgreSQL data, Redis data and NocoDB application or attachment data. These volumes survive a container restart and a normal docker compose down. They do not protect against a failed VPS, deleted volume, filesystem corruption or operator error.
Never use docker compose down -v casually: the -v option removes named volumes and can destroy the database and attachments. Treat the Compose directory and its volume names as part of the system’s recovery information.
Back up all three parts of NocoDB
A usable backup contains the relational database, uploaded files and deployment configuration. Missing any one of these can make a restore incomplete.
Rank #3
- Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
- Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
- Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
- ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
- Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)
1. Dump PostgreSQL
For the bundled PostgreSQL service, run this from the Compose directory:
docker compose exec db pg_dump -U nocodb nocodb > backup-YYYYMMDD.sql
The command writes a logical SQL dump on the VPS host. Use a date and, in an operational script, include a time or unique identifier so one run cannot overwrite another. Verify that the file is non-empty and copy it to storage outside the VPS.
Recommended Free Tools
2. Archive attachments
Back up the NocoDB attachments volume separately from the SQL dump. The exact volume name is generated by Compose, so identify it with docker volume ls and inspect the project’s Compose file before creating an archive. If attachments are configured in an S3-compatible bucket instead, protect and replicate that bucket according to its retention policy; the bucket contents are the attachment backup.
3. Preserve configuration and secrets safely
Keep copies of docker-compose.yml, docker.env and nocodb/db.json. Store them in a private repository or a separate secret-management workflow. Do not commit secrets to a public repository. Configuration without its secret values may be insufficient for recovery, while exposing the secret file can compromise the database and application.
Set a practical backup routine
- Run PostgreSQL dumps on a schedule appropriate to your data-loss tolerance.
- Copy SQL dumps and attachment archives off-server, ideally to a different failure domain.
- Retain multiple generations so a corruption event is not copied over every backup.
- Test a restore on a replacement or isolated VPS; a backup that has never been restored is only an assumption.
Recover onto a replacement VPS
- Provision Linux and install Docker Engine on the replacement host.
- Restore the same
docker-compose.yml,docker.envandnocodb/db.json; keep the intended image tags and volume mappings. - Restore the PostgreSQL dump and the attachment archive, or reconnect the configured object-storage bucket.
- Stop NocoDB and the worker while replacing database and attachment data so files are not changed during the restore.
- Start the services with
docker compose up -d, then followdocker compose logs -f nocodb. - Verify the domain, HTTPS certificate, login, representative records and several attachments before declaring the recovery complete.
When PostgreSQL’s major version changes, use pg_dump and restore. Copying a raw PostgreSQL data directory is compatible only within the same PostgreSQL major version and is not a general migration method.
Harden the VPS after the first successful login
Firewall
Allow only the ports required by your design. A public HTTPS installation normally needs SSH on 22 and HTTP/HTTPS on 80 and 443. Do not expose PostgreSQL or Redis directly to the internet when they are intended to be internal Compose services.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallRank #4
- Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
- Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
- 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
- Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
- USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC
Protect generated files
chmod 600 docker.env nocodb/db.json
These files contain connection details and secrets. Also restrict shell access, backups and any private repository that stores them.
Account for SELinux
On an SELinux system running in enforcing mode, a bind mount can fail even when Unix permissions look correct. If SELinux denies a mounted path, add the :Z label option to the affected bind mount in the Compose configuration, then recreate the affected service. Confirm the denial in the system audit log rather than adding labels indiscriminately.
Complete mandatory environment settings
NocoDB marks some environment variables as mandatory in its current reference. They influence security, performance and core functions. Review the version-specific reference and set every required value rather than relying on defaults. Keep secrets out of command history and public source control.
Schedule updates
Keep NocoDB, the worker, PostgreSQL and Redis images on a planned update schedule. Pin a specific NocoDB image tag in production instead of tracking latest; the upgrade documentation uses nocodb/nocodb:2026.06.0 as an example tag. Back up before changing versions and record the previous tag so a rollback decision is possible.
Update the Compose deployment safely
For an ordinary image refresh, the documented commands are:
docker compose pull
docker compose up -d
The generated update.sh may provide a project-specific shortcut, but inspect what it changes before using it in an automated job. A safe update sequence is:
Best Value
- Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
- Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
- Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
- Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
- Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.
- Confirm that the current backup completed and is stored off-server.
- Record the running image tags and check the target release notes for database or configuration changes.
- Pull the pinned images and recreate the services.
- Watch NocoDB and database logs until migrations and health checks finish.
- Test login, API access, records and attachments.
Do not replace a PostgreSQL major-version data directory by copying raw files from another major version. Export with pg_dump and import into the new major version instead.
Free tools Windows power users keep installed
One-click scans. No signup required.
Troubleshoot the common failure branches
The application will not start
Begin with the application log:
docker compose logs -f nocodb
Then inspect all service states with docker compose ps and review PostgreSQL and Redis logs. A mismatched or corrupt PostgreSQL volume can prevent the stack from starting; do not initialize a fresh database until you have confirmed whether the existing volume contains recoverable data.
HTTPS fails or the proxy cannot bind
Check whether another process already owns port 443:
sudo lsof -i :443
Confirm whether the installation is in domain/HTTPS mode or local port-8080 mode. Verify DNS, firewall rules and certificate issuance. If an external proxy is in use, check that it forwards Host and X-Forwarded-Proto and that NocoDB’s public URL matches the browser-visible address.
Redirects point to localhost or HTTP
This is usually an external URL or forwarded-header problem rather than a database problem. Correct the public URL and proxy headers, then restart the affected service so the configuration is reloaded. Retest a fresh browser session and an OAuth callback if authentication is involved.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
A port is already occupied
Identify the process using the port, stop or reconfigure the conflicting service, and make sure only one TLS terminator is responsible for 443. Running both the generated Traefik proxy and an independent proxy on the same host without deliberate port mapping causes a bind conflict.
When to use custom infrastructure
The single-server installer is the simplest fit when one VPS should run the complete stack. Choose NocoDB’s custom-infrastructure examples when you need one or more of the following:
- Managed PostgreSQL rather than the bundled database.
- External PostgreSQL and Redis services.
- Custom certificates or an existing nginx, Caddy or Traefik proxy.
- Multiple NocoDB replicas or a separately managed load balancer.
Custom infrastructure adds operational boundaries: network access, credentials, TLS trust, database maintenance and backup ownership must be documented for each external service. The same rule still applies: preserve the database, attachments and configuration, and ensure the public URL and forwarded protocol are correct.
Licensing considerations for self-hosting
NocoDB’s self-hosting information describes running the software on your own server or computer rather than on NocoDB Cloud. It lists internal organizational use under the Fair Code Sustainable Use License and warns that offering NocoDB as a hosted or managed service to third parties may require a commercial license. Read the current license text before reselling access, embedding NocoDB in a customer-facing service or operating it as a managed product.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Quick Recap
Deployment checklist
- VPS meets at least 2 vCPU, 2 GB RAM and 10 GB disk; production planning starts at 4 vCPU, 8 GB RAM and 50 GB or more.
- Docker Engine is installed and the domain points to the VPS.
- The official installer was reviewed before execution.
- The Compose stack contains NocoDB, worker, PostgreSQL and Redis.
- HTTPS is terminated by the generated Traefik setup or by a configured external proxy.
- External requests preserve
HostandX-Forwarded-Proto. - Firewall exposes only required ports.
docker.envandnocodb/db.jsonare mode 600 and not public.- PostgreSQL, attachments and configuration are backed up off-server.
- A restore has been tested before the system is considered production-ready.
- Production images use pinned tags and updates follow a backup-and-test process.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




