On-Premises setup guide - Docker
This guide explains how to install and set up the Ninox On-Premises server using Docker on a Linux-based system
1. Pull the Ninox server image
The server image is openly available on the Docker Hub. Download the Ninox On-Premises image from the repository.
Pull the latest version:
docker pull ninoxdatabase/ninox-on-premise:latest
Pull a specific version (recommended for stability):
docker pull ninoxdatabase/ninox-on-premise:3.13.6
Check for the latest versions on the Ninox On-Premises Docker Hub (requires Docker login to view page).
2. Configure the Ninox server
The server configuration file (server-config.json
) defines key environment-specific settings for the Ninox server. By default, a pre-configured server-config.json
file is included with the Ninox image.
Default location:
/usr/local/nxdb/server-config.json
Example configuration (server-config.json
):
{
"data": "var/nxdb",
"ssl": false,
"host": "localhost",
"port": 443,
"bindPort": 80,
"bindInterface": "0.0.0.0",
"redirectPort": 9090,
"workers": 2,
"emailHost": "",
"emailPort": 25,
"emailSecure": false,
"emailUser": "",
"emailPassword": "",
"emailFrom": "",
"emailClient": "",
"snapshots": true
}
3. Optional: Customize configuration
To override the default settings, mount a custom server-config.json
file when starting the container.
Option 1: Mount a single server-config.json
file
docker container run -d \ --name {container-name} \ -p {host-port}:{container-port} \ -v /mount/path/for/server-config.json:/usr/local/nxdb/server-config.json \ -v NX-DATA:{data-path-or-use-default-/var/nxdb} ninoxdatabase/ninox-on-premise
Replace the placeholder inside {}
(including the curly brackets) with appropriate values.
Option 2: Mount a configuration directory containing server-config.json
docker container run -d \ --name {container-name} \ -p {host-port}:{container-port} \ -v /mount/path/for/config/:/usr/local/nxdb/config \ -v NX-DATA:{data-path-or-use-default-/var/nxdb} ninoxdatabase/ninox-on-premise
Replace the placeholder inside {}
(including the curly brackets) with appropriate values.
Note: For a detailed explanation of configuration options, see the sample configuration file documentation.
4. Start the Ninox server container
Using docker run
(manual execution)
Without a proxy and without custom server configuration (basic setup)
docker container run -d \
--name nxdb \
-v NX-DATA:/var/nxdb \
-p 80:8080 ninoxdatabase/ninox-on-premise
In this setup, the Ninox server uses the built-in configuration file. Any changes applied to the server configuration using UMS interface aren't persistent. Access Ninox via http://localhost
.
With a proxy between client and server
docker container run -d \
--name nxdb \
-p 6999:8080 ninoxdatabase/ninox-on-premise \
-v NX-DATA:/var/nxdb \
-v {path-to-server-config.json}:/usr/local/nxdb/server-config.json ninoxdatabase/ninox-on-premise-
Specify the server configuration mount, as it will override the default configuration. Access Ninox via http://{host-specified-in-server-config-json}
. Replace the placeholder inside {}
(including the curly brackets) with appropriate values.
Make sure the following criteria are met:
The
host
parameter is properly configured.The
HostPort
in the-p
directive of the container is correct.The proxy is set up to forward incoming requests to the correct port.
5. Configure SSL
Without a proxy
We recommend configuring SSL on the Ninox server. Update the ssl
property in server-config.json
and mount an additional directory containing SSL certificates. For example:
/usr/local/nxdb/certificates
Make sure the following criteria are met:
redirectPort
is set to80
to redirect all HTTP requests to the SSL-enabled port.
port
is set to443
.
bindPort
is set to an available value, for example,8443
.
With a proxy
If a proxy is used, SSL should be configured on the proxy itself.
6. Log in to the server
Log in to Ninox using the default administrator credentials:
Username:
root
Password:
root
7. Change default credentials
For security, update the default username and password:
After logging in, click the gear icon in the topbar.
In the dropdown menu, select Ninox settings.
In Ninox settings, go to Collaborators.
Select the
root
account.Replace the default credentials with your email address and a secure password.
Click Save to apply the changes.
8. Apply the license file
To apply your Ninox On-Premises license:
Download the Ninox license file (
ninox.license
) from your email.In Ninox settings, go to Subscriptions.
Click Upload Ninox license and select the downloaded
ninox.license
file.Click Save and restart to apply the license.
9. Access the Ninox Server
On a local machine:
Example:
http://localhost:8080/
.
On a remote server:
http://{server-IP}
Replace
{server-IP}
with the actual address, for example,http://192.168.1.10
.
Troubleshooting and diagnostics
To see your Docker disk usage, check the bottom of the Docker Desktop window.
If you notice high disk usage or performance issues, follow these steps to clear the Docker build cache.
Check current Docker disk usage:
docker system df -v
Clear unused build cache, containers, and dangling images:
docker builder prune
Additional help
If you encounter issues or need additional assistance with your Ninox On-Premises, contact our support team.
Reply
Content aside
- 4 days agoLast active
- 23Views
-
1
Following