Skip to main content

General

On-Premise Deployment with Docker

The official guide to installing and running the Proxus IIoT platform with the automated Docker installer.

This guide details how to install and run the Proxus IIoT platform on-premise using Docker.

lightbulb
Need high availability?

Use the Kubernetes HA Deployment guide when you need HA PostgreSQL, replicated ClickHouse, NATS JetStream, active-active UI, and Kubernetes-managed failover.

info
License Required

To start using Proxus after installation, you'll need a demo license. Please visit proxus.io/contact to submit your request.

Prerequisites

Before proceeding, please ensure your system meets the System Requirements for Proxus.

Ensure you have the following installed on your host machine:

  • Docker Engine: Download the version compatible with your OS from the official website.
  • Docker Compose v2: Typically included with Docker Desktop on Windows/macOS. Linux users may need to install it separately. The installer uses Docker Compose to generate and run the local stack.

Installation

Install Proxus with the automated installer for your operating system. The installer creates the proxus-platform directory, generates docker-compose.yml and Configs/accounts.conf, then asks whether to start the stack.


Running the Platform

The installer can start the platform for you. If you skipped that step, start it later with:

cd proxus-platform
docker compose up -d
lightbulb
Permissions

You might need administrative privileges. Use sudo on Linux/macOS when required, or run PowerShell as Administrator on Windows.

Accessing the Interface

Once containers are running, open your browser:

open_in_new

Open Management Console

http://localhost:8080

  • Username: Admin
  • Password: (Leave blank)

Maintenance & Updates

Updating the Platform

To pull the latest images and restart the stack:

# Backup your data (see below)
# Pull latest images
cd proxus-platform
docker compose pull

# Restart containers
docker compose up -d

Modifying Configuration

To edit Proxus-config.toml inside the running volume without copying files back and forth:

VOLUME_PATH=$(docker volume inspect proxus_config --format '{{ .Mountpoint }}') &&
CONFIG_FILE="${VOLUME_PATH}/Proxus-config.toml" && nano "$CONFIG_FILE"

Copying Local Files to Containers

If you prefer to edit locally or need to add DLLs (like Oracle):

# Copy Config to UI Container
docker cp Proxus-config.toml proxus-ui:/app/config/Proxus-config.toml

# Copy Oracle DLL to Server Container
docker cp Oracle.ManagedDataAccess.dll proxus-server:/app/Oracle.ManagedDataAccess.dll

Backup & Restore

warning
Stop Containers First

It is recommended to stop the platform (docker compose down) before performing a restore to prevent data corruption.

Backup Script

This creates a compressed archive for each volume in a proxus_backup directory.

backup_dir="$(pwd)/proxus_backup"
mkdir -p "$backup_dir"

for volume in proxus-db-volume nats config proxus_modules; do
echo "Backing up $volume..."
docker run --rm \
-v "$volume:/data" \
-v "$backup_dir:/backup" \
busybox tar czf "/backup/${volume}_backup.tar.gz" -C /data .
echo "Backup of $volume completed."
done

Restore Script

Restores data from the proxus_backup directory to the Docker volumes.

backup_dir="$(pwd)/proxus_backup"

for backup_file in "${backup_dir}"/*_backup.tar.gz; do
volume="$(basename "${backup_file}" _backup.tar.gz)"
echo "Restoring ${volume} from ${backup_file}..."
docker run --rm \
-v "${volume}:/data" \
-v "${backup_dir}:/backup" \
busybox tar xzf "/backup/${volume}_backup.tar.gz" -C /data
echo "Restoration of ${volume} completed."
done

Troubleshooting

If the UI or Server fails to start, check the logs:

docker logs proxus-ui
docker logs proxus-server