DEPLOYMENT

Docker Deployment

Run AxioDB's GUI and TCP server (AxioDBCloud) in a container with one command, then tune it with environment variables when you need volumes, custom ports, or to turn authentication on or off — no rebuild required.

Simple: Run the Container

bash
1docker run -d \
2 --name axiodb-server \
3 -p 27018:27018 \
4 -p 27019:27019 \
5 -e AXIODB_TCP_AUTH=true \
6 -v axiodb-data:/app \
7 theankansaha/axiodb
8
9# Ports:
10# 27018 - HTTP GUI Dashboard
11# 27019 - TCP Remote Access (AxioDBCloud)
12# Volume: /app is the main data directory

TCP authentication is on by default in this image. Log into the GUI at http://localhost:27018 as admin/admin to complete the forced password change before connecting over TCP — see Troubleshooting if you skip this step.

Advanced: Environment Variables, Volumes, Compose

Environment Variables

Every option below has a default matching the image's previous fixed behavior — override any of them with -e VAR=value atdocker run time, no rebuild required.

VariableDefaultDescription
AXIODB_GUItrueEnable the HTTP Control Server / web GUI on port 27018
AXIODB_TCPtrueEnable the AxioDBCloud TCP server on port 27019
AXIODB_TCP_AUTHtrueRequire username/password on TCP connections (same RBAC accounts as the GUI)
AXIODB_ROOT_NAMEAxioDBName of the root database folder created under the data volume
AXIODB_CUSTOM_PATHcontainer cwdCustom path for database storage inside the container

Ports themselves (27018/27019) aren't configurable via environment variable — remap them at the Docker layer with -p <host-port>:27018 /-p <host-port>:27019.

Disabling TCP Authentication

bash
1# Only do this on a trusted private network or behind your own VPN/TLS termination -
2# the TCP protocol itself is unencrypted, and with auth off any client on the network
3# that can reach port 27019 has full database access.
4docker run -d \
5 --name axiodb-server \
6 -p 27018:27018 \
7 -p 27019:27019 \
8 -e AXIODB_TCP_AUTH=false \
9 -v axiodb-data:/app \
10 theankansaha/axiodb

Data Persistence

Mount a volume at /app so your data survives container restarts and recreation:

bash
1docker run -d \
2 --name axiodb-server \
3 -p 27018:27018 \
4 -p 27019:27019 \
5 -v "$(pwd)/axiodb-data":/app \
6 theankansaha/axiodb

Docker Compose

yaml
1version: "3.8"
2
3services:
4 axiodb:
5 image: theankansaha/axiodb
6 container_name: axiodb-server
7 ports:
8 - "27018:27018"
9 - "27019:27019"
10 environment:
11 - AXIODB_GUI=true
12 - AXIODB_TCP=true
13 - AXIODB_TCP_AUTH=true
14 - AXIODB_ROOT_NAME=AxioDB
15 volumes:
16 - axiodb-data:/app
17 restart: unless-stopped
18
19volumes:
20 axiodb-data:

Building From Source & Full Troubleshooting

Instructions for building the image yourself, plus a deeper Docker-specific troubleshooting guide (container won't start, port conflicts, data-persistence checks), live in the repository's Docker/README.md — the canonical Docker doc, not duplicated here. For general connection/auth troubleshooting, see the Troubleshooting page.

Connect to Your Container

Once the container is running, connect to it with AxioDBCloud.