C-Gate IoT Hub Installation¶
System Requirements¶
- Container runtime environment (e.g. Docker, Kubernetes, OpenShift, Podman, ...)
- 8 GB RAM
- 128 GB hard disk space
- 64-bit processor (4 cores recommended)
- Internet connection (during installation and update)
Warning
If more than 25 controllers are connected, the requirements may be greater.
Step-by-Step Guide¶
Info
If you are already familiar with Containers you can skip this section. See Manual installation. If you are not using a container runtime environment yet, the following instructions will guide you through the necessary steps for a basic container runtime environment with C-Gate.
Linux Recommended
We recommend Linux for production deployments. Windows is also supported but not as well established and stable as on Linux.
Linux¶
-
Install Docker for your Linux distribution.
Warning
Take care not to install Docker multiple times (e.g. via both
apt-getandsnap). -
Execute the following commands to install and start C-Gate:
sudo mkdir -p /opt/cloos/cgate cd /opt/cloos/cgate/ sudo curl -L https://c-gate.cloos.de/docs/static/docker-compose.yml -o docker-compose.yml sudo docker login docker.cloos.de # Enter the access data you received from CLOOS here. sudo docker compose up -d # C-Gate will now start in the background. # After 1-2 minutes you will be able to access C-Gate with your browser.
Windows¶
-
Install Rancher Desktop and start it.
Rancher Desktop settings
The following Rancher Desktop settings are required for C-Gate to be accessable from other hosts
- During setup, select Install for all users of the machine
(Administration priviledges required) - Use dockerd (moby) as the container engine:
Preferences -> Container Engine -> Select 'dockerd (moby)' - Disable Kubernetes:
Preferences -> Kubernetes -> Uncheck 'Enable Kubernetes'
- During setup, select Install for all users of the machine
-
Open a PowerShell window and execute the following commands to install and start C-Gate:
New-Item -ItemType Directory -Force -Path "$env:LOCALAPPDATA\programs\cgate" Set-Location "$env:LOCALAPPDATA\programs\cgate" Invoke-WebRequest -Uri "https://c-gate.cloos.de/docs/static/docker-compose.yml" -OutFile "docker-compose.yml" docker login docker.cloos.de # Enter the access data you received from CLOOS here. docker compose up -d # C-Gate will now start in the background. # After 1-2 minutes you will be able to access C-Gate with your browser.
After the Installation¶
The next steps and further information can be found on the C-Gate web interface.
- Access C-Gate locally after installation at:
http://localhost - Access from another computer at:
http://<server-ip>(replace<server-ip>with the IP address of your server or PC)
Manual installation¶
The C-Gate IoT Hub container is provided in the Docker Registry by CLOOS. You will receive the necessary access data when you purchase a C-Gate IoT Hub.
Registry and Image URL
Example — Test environment with Docker
Example — Productive environment with Docker Compose
services:
cgate:
container_name: cgate
image: docker.cloos.de/cgate:latest
restart: always
ports:
- "80:8080"
- "8080:8080"
- "4840:4840"
- "5000:5000/tcp"
- "5000:5000/udp"
- "5005:5005"
- "5010:5010"
- "5679:5679"
environment:
- APP_MAX_DATA_SIZE_GB=64
volumes:
- data:/data
ulimits:
nofile:
soft: 64000
hard: 64000
deploy:
resources:
limits:
memory: 6G
logging:
driver: "json-file"
options:
max-size: "100m"
volumes:
data:
Volumes
C-Gate stores all configurations and data in the directory /data. A volume should be used for this directory to persist the data.
Exposed Ports
| Port | Protocol | Purpose |
|---|---|---|
| 4840 | TCP | OPC UA Server |
| 5000 | TCP | Robot communication up to V6 |
| 5000 | UDP | Robot communication up to V6 |
| 5005 | TCP | Robot communication up to V6 |
| 5010 | TCP | Robot communication up to V6 |
| 5679 | TCP | IoT Connector RPC |
| 8080 | TCP | Web Interface |
Environment Variables
| Variable | Description | Default |
|---|---|---|
APP_ADMIN_PASSWORD |
Forces a password for the admin user | Empty |
APP_MAX_DATA_SIZE |
Sets the maximum size of total data stored by C-Gate in GB | 32 |
Offline installation¶
C-Gate can be installed without an active internet connection.
Requirements¶
Download the following files and copy them to the offline system
On Linux either you have to install a recent distribution that has includes docker on the install medium or install docker manually afterwards. This guide by Cyberwatch is a good starting point for the manual docker installation.
Linux¶
-
Prepare the target directory on the offline system:
-
Copy to the downloaded docker-compose file and docker image to /opt/cloos/cgate
-
Install and run the image
Windows¶
-
Install Rancher Desktop. During setup, select dockerd (moby) as the container engine.
-
Prepare the target directory on the offline system:
-
Copy the downloaded docker-compose and image files to the C-Gate program folder
%LOCALAPPDATA%\programs\cgate -
Install and run the image
Firewall Settings¶
For a visual overview of the network topology, refer to the Technical Structure section.
The following inboundconnections must be permitted in the firewall configuration:
Connector to Hub¶
| Protocol/Port | Purpose |
|---|---|
| TCP/80 | Webinterface / REST-API |
| TCP/443 | Secure Webinterface / REST-API |
| TCP/5679 | gRPC Connector Communication |
Customer Network to Hub¶
| Protocol/Port | Purpose |
|---|---|
| TCP/80 | REST-API |
| TCP/443 | Secure REST-API |
| TCP/4840 | OPC UA Server (Optional) |