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 Docker Compose package of the release,
proxus-docker_<version>.zip, from the Proxus releases, and check it against the release'sSHA256SUMS.txt. It holds the installers,docker-compose.ymland the Keycloak files of that release.Unzip it and list the images the release uses:
cd proxus-docker_2.1.0 docker compose config --imagesFor 2.1.0 these are
proxusplatform/proxus-ui:2.1.0,proxusplatform/proxus-server:2.1.0,nats:2.15.1-alpine,postgres:16andbitnamilegacy/clickhouse:25.5.2. With Keycloak, alsoquay.io/keycloak/keycloak:26.0.7.Download them and save them into one file:
docker compose config --images | xargs -n1 docker pull docker save -o proxus-hub-images.tar $(docker compose config --images)If 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:2.1.0 nats:2-alpine
Copy the unzipped package folder 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 images with the tags above. Docker Compose uses an image that is already on the machine and downloads nothing.
Step 3: Start the hub
In the folder where Proxus should live (for example /opt), run the installer from the package folder you carried over:
cd /opt
bash /media/usb/proxus-docker_2.1.0/install.sh cd C:\Proxus
powershell -ExecutionPolicy Bypass -File E:\proxus-docker_2.1.0\install.ps1 The installer needs no internet access: it takes the compose files from the package folder it runs from, and the release from them. When Docker Hub cannot be reached, it uses the loaded images (and names any that are missing). It asks the same questions as a normal installation and writes proxus-platform/. Answer Y to Start Proxus now?.
With a compose file of your own 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 to proxus-platform/docker-compose.override.yml, then run docker compose up -d in that folder:
services:
proxus-ui:
environment:
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. |
| AI Assistant | Use Ollama (local) on a machine of your network. Cloud AI services cannot be reached. The AI Assistant's documentation search ships with the hub and works offline. See AI Assistant 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 the AI Assistant, does not. |
Upgrade without internet access
Repeat Step 1 for the new release on the connected machine, carry the package folder and the images over, then on the hub machine load the images and run the installer of the new package in the folder that contains proxus-platform:
docker load -i proxus-hub-images.tar
cd /opt
bash /media/usb/proxus-docker_2.2.0/install.sh updateThe installer backs up, switches to the new release and goes back by itself if it does not start, as in Upgrade. Read that page first: it says 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.