mirror of
https://github.com/nocodb/nocodb.git
synced 2026-05-01 18:46:50 +00:00
72 lines
3.1 KiB
Markdown
72 lines
3.1 KiB
Markdown
# Install all-in-one nocodb with Docker (compose)
|
|
|
|
This page provides instructions to install nocodb all-in-one (aio) using Docker-Compse. The installation will run multiple contianers in single node which includes
|
|
- nocodb
|
|
- postgres
|
|
- nginx
|
|
- redis
|
|
|
|
## Prerequisites
|
|
Before you begin, ensure you have the following prerequisites:
|
|
|
|
- Docker (version 20.10.7 or later)
|
|
- Docker-Compose (version 2.17.3 or later)
|
|
- Ports 80 and 443 are available
|
|
|
|
TIP: you could simply run [./pre-req-check.sh](./pre-req-check.sh) which performs pre-requisite check.
|
|
|
|
## Install
|
|
Run [install.sh](./install.sh), This script performs pre-requisite check, prompts you through required application properties and finally performs `docker-compose up -d`.
|
|
For most cases where no external integration required. The defaults properties are just fine.
|
|
```
|
|
sudo ./install.sh
|
|
```
|
|
Note: sudo is required for docker to run unless you have configured docker user to be part of sudoers. If sudo is not used then you will get error `('Connection aborted.', PermissionError(13, 'Permission denied'))`
|
|
|
|
* At this point, your installation is completed and you should be able to access your nocodb instance *
|
|
|
|
### An example output will be like below.
|
|
```
|
|
./install.sh
|
|
** Performing nocodb system check and setup. This step may require sudo permissions
|
|
| Checking if required tools (docker, docker-compose, jq, lsof) are installed...
|
|
| Checking port accessibility...
|
|
| Port 80 is free.
|
|
| WARNING: Port 443 is in use. Please make sure it is free.
|
|
** System check completed successfully. **
|
|
** Few pre-requisites are failing. Recommend to resolve and proceed. However you could still proceed to install **
|
|
| Press Y to continue or N to skip (Y/N)?
|
|
Preparing environment file before install..
|
|
| Press Y to continue with defaults or N to customise app properties (Y/N)
|
|
Backing up previous docker-compose/aio/conf/nc_properties.env file to nocodb/docker-compose/aio/conf/nc_properties.env-1707455571.bak
|
|
Environment variables written to docker-compose/aio/conf/nc_properties.env file.
|
|
Installing docker containers
|
|
```
|
|
|
|
## Data and Conf directories
|
|
This directory acts as the NC_INSTALL_ROOT by default and it will have data, conf directories which are `.gitingore` to avoid accidentlly exposing to git repository.
|
|
During installation the default properties are configured at [nc_properties.env](./conf/nc_properties.env) which can be updated if required and restarted
|
|
|
|
```
|
|
.
|
|
├── conf
|
|
│ └── nc_properties.env
|
|
├── data
|
|
│ ├── nginx
|
|
│ ├── nocodb
|
|
│ ├── postgres
|
|
│ └── redis
|
|
├── docker
|
|
│ └── docker-compose.yml
|
|
```
|
|
|
|
|
|
## what does install.sh do
|
|
[Install script](./install.sh) performs the following steps
|
|
1. pre-req-check.sh and warns if there is anything missing which could potentially cause issues at later stage. However it will let you proceed if you wish to.
|
|
2. create application properties file under conf dir which will then be used for future upgrades etc.
|
|
3. runs docker-compose up -d
|
|
|
|
## Advanced Operations
|
|
Refer [advanced section](./advanced.md) for advanced operations like setting up ssl, updating configurations, restarts etc
|