Docker installation

Prepare an environment with Docker. Refer to the Docker's Orientation and setup guide for more information.

Content in curly brackets { } signifies a placeholder. Both the curly brackets and the content within must be replaced for the request to work.

Run syntax

File mount for server-config.json

docker container run -d \ 
    --name {container-name} \
    -p {port-on-host}:{value-of-port-in-server-config.json}|{default-is-8080} \
    -v /mount/path/for/server-config.json:/usr/local/nxdb/server-config.json \
    -v NX-DATA:value-of-data-in-server-config.json-or-default-is-/var/nxdb ninoxdatabase/ninox-on-premise

Directory mount for the configuration folder containing server-config.json

docker container run -d \ 
    --name {container-name} \
    -p {port-on-host}:{value-of-port-in-server-config.json}|{default-is-8080} \
    -v /mount/path/for/config/:/usr/local/nxdb/config \
    -v NX-DATA:value-of-data-in-server-config.json-or-default-is-/var/nxdb ninoxdatabase/ninox-on-premise

Example run commands

Without a proxy between client and server and without specifying any server configuration

docker container run -d \
    --name nxdb \
    -v NX-DATA:/var/nxdb \
    -p 80:8080 ninoxdatabase/ninox-on-premise

Any changes applied to the server configuration using UMS interface are not 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 /mount/path/for/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}.

Ensure the following criteria are met:

  • host

    • main parameter to be overridden

    • has a value with with the proxy is configured

  • HostPortin the-pdirective of the container

  • runcommand specifies the port on which the proxy will forward the incoming requests

SSL configuration

Without a proxy between client and server

We recommend configuring SSL on the Ninox server. Refer to the ssl property in theserver-config.json reference and populate the applicable properties within it. You can mount an additional directory within the container path, for example with/usr/local/nxdb/certificates, and use it to populate the ssl field in server-config.json.

Ensure the following criteria are met:

  • redirectPortproperty changed to80to redirect all HTTP requests to an SSL enabled port

  • portproperty has a value of443

  • bindPortproperty has any value, for example8443, if available

With a proxy in between client and server

SSL should be configured on proxy itself.

Configuration file

server-config.json defines environment specific content that Ninox server will utilize to boot up. The configuration file is read from /usr/local/nxdb/server-config.json when the container boots up.

It is not mandatory to provide server-config.json at container runtime as a defaultserver-config.jsonis supplied with the image. However, ifserver-config.jsonneeds to overridden, supply a file mount using-v /mount/path/for/server-config.json:/usr/local/nxdb/server-config.jsoncommand line parameter.

For more information regarding server-config.json, refer to section Sample configuration file.

Last updated