How-to guide · for Administrators
Install without internet access
Install the hub and edge gateways on a network with no internet access. Carry the images over as files, load them, start, and activate the license offline.
At the end of this guide, the Proxus hub runs on a machine that cannot reach the internet, its license is active, and edge gateways on the same closed network can be installed. You prepare the files on a machine that has internet access and carry them over, for example on a USB drive.
Proxus collects, stores, shows and sends data inside your network without any internet connection. Two things normally come from the internet, and this page replaces both: the installer (from proxus.io) and the container images (from Docker Hub).
Before you start
You need:
- A connected machine with Docker, to download the files. Use one with the same processor type as the target machines (x86-64 or ARM64), or add
--platform, for example--platform linux/arm64, to eachdocker pull. - The hub machine on the closed network, with Docker Engine and the Docker Compose plugin already installed, and the system requirements met. Docker itself is not part of the Proxus files: install it from your operating system's offline packages first.
- A way to carry about 2 to 3 GB of files to the hub machine.
- A license key, or a way to send the hub's License ID to Proxus or your distributor from another machine (see Step 5).
Step 1: Download the files on the connected machine
Download the installer for the hub machine's operating system:
curl -fsSL https://proxus.io/install.sh -o install.shInvoke-WebRequest https://proxus.io/install.ps1 -OutFile install.ps1If your Proxus delivery came with a prepared
docker-compose.yml, you can use that file instead of the installer.Download the images the hub uses:
docker pull proxusplatform/proxus-ui:latest docker pull proxusplatform/proxus-server:latest docker pull nats:alpine docker pull postgres:16 docker pull bitnamilegacy/clickhouse:latestThese are the images named in the compose file that the installer writes. If you use a compose file from your delivery,
docker compose config --imagesin its folder lists the images it needs.Save them into one file:
docker save -o proxus-hub-images.tar \ proxusplatform/proxus-ui:latest proxusplatform/proxus-server:latest \ nats:alpine postgres:16 bitnamilegacy/clickhouse:latestIf you will install edge gateways on other machines of the closed network, save their images too. A gateway runs the same
proxus-serverimage next to a small message server of its own:docker pull nats:2-alpine docker save -o proxus-edge-images.tar proxusplatform/proxus-server:latest nats:2-alpine
Copy install.sh (or install.ps1, or your docker-compose.yml) and the .tar files to the drive.
Step 2: Load the images on the hub machine
Copy the files to the hub machine, then load the images:
docker load -i proxus-hub-images.tar
docker image lsdocker image ls lists the five images with the tags above. Docker Compose uses an image that is already on the machine and downloads nothing.
Step 3: Start the hub
Run the installer you carried over, in the folder where Proxus should live:
bash install.sh powershell -ExecutionPolicy Bypass -File .\install.ps1 The installer needs no internet access. It asks for the culture and the time zone, detects the machine's address for edge gateways, and writes proxus-platform/docker-compose.yml. Answer Y to Start the platform now?: the stack starts from the loaded images.
With a compose file from your delivery instead, follow Install from a compose file. Its docker compose up -d also uses the loaded images.
Check that every service is running and healthy:
cd proxus-platform
docker compose psStep 4: Tell the hub it has no internet access
The edge gateway install window offers the hub's public internet address, which the hub looks up on the internet. On a closed network the lookup finds nothing and the list shows only the local addresses. To skip the lookup, add this line under environment: of the proxus-ui service in docker-compose.yml, then run docker compose up -d:
Service__DetectPublicAddress: "false"Step 5: Activate the license
The license check runs on the hub against the key's signature. Activation does not contact Proxus, so it works the same way on a closed network.
- Open
https://<host>:8443, sign in asAdminwith an empty password, as in Sign in for the first time. - In the License Activation window, select Copy next to the License ID and write it down or save it to a file.
- From any machine with e-mail or internet access, send the License ID to Proxus or your distributor. The key you get back works only for this ID.
- Paste the key into License key, accept the agreement and select Activate License.
The License ID comes from the hub's host and its configuration volume. Keep both when you move or restore the hub, or ask for a new key. See License.
Install edge gateways on the closed network
An edge gateway needs to reach only the hub, on port 7422 and on the hub's HTTPS port (8443 by default).
On the gateway machine, load the images you saved in Step 1:
docker load -i proxus-edge-images.tarCreate the gateway in the hub and run its install command, as in Install an edge gateway. The command comes from the hub, so it works without internet access. When the image cannot be downloaded, the installer uses the images already on the machine and continues.
To take the gateway image from a registry on your own network instead, set EdgeDeployment__Image on the proxus-ui service to the image's full name in that registry, for example registry.plant.local/proxusplatform/proxus-server:latest. The install command then uses that name.
What needs the internet, and what to use instead
| Feature | Without internet access |
|---|---|
| Install, upgrade | Carry the images over as on this page. |
| License | Works. Only the License ID and the key travel, by any channel you choose. |
| Copilot | Use Ollama (local) on a machine of your network. Cloud AI services cannot be reached. Copilot's documentation search ships with the hub and works offline. See Copilot settings. |
| Outbound targets | A target on your network works. A cloud target works only if the gateway that sends to it can reach it. For AWS IoT Core, choose Amazon Root CA 1 together with the certificates: the hub cannot download it itself. See Secure connections to targets. |
| Notification channels | E-mail works with a mail server on your network. Services on the internet, such as Slack, Teams or Telegram, cannot be reached. |
| Documentation | This site needs the internet. The hub's own copy of the documentation, used by Copilot, does not. |
Upgrade without internet access
Repeat Step 1 for the new release on the connected machine, then on the hub machine:
docker load -i proxus-hub-images.tar
cd proxus-platform
docker compose up -dLoading replaces the latest images, and Compose recreates the containers whose image changed. Read Upgrade first: it says what to back up and what to do after each release.
On each gateway machine, load the new edge images and recreate the gateway in its folder, skipping the pull step of Upgrade the edge gateways:
docker load -i proxus-edge-images.tar
cd /opt/proxus/proxus-edge-3
sudo docker compose -p proxus-edge-3 -f compose.yaml up -dWhat's next
- Harden the installation before you connect the plant network.
- Back up the installation, including the
configvolume. - Run Proxus with Docker for the day-to-day commands.
Was this page helpful?
Evaluating Proxus? See it on your own machines in a 30-minute technical session.