Multi-architecture Docker image for FairCom Edge IoT hub (~400MB) ยท linux/amd64 and linux/arm64
3.4K
FairCom Edge Docker
Multi-architecture Docker image for FairCom Edgeโ (~400MB) targeting linux/amd64 and linux/arm64.
FairCom Edge is an IoT hub designed to run on the edge, from factory floors to warehouses to wind farms. It combines a database, MQTT broker, IoT connector, and transformation engine in a single platform so you can collect, process, and deliver machine data without stitching together separate tools.
Evaluation License This image ships with an evaluation license that limits runtime to 3 hours. Restart the container to resume, or bind-mount a production license file to remove the limit. By pulling or running this image you agree to the FairCom Edge Developer License Agreementโ . For production licensing, contact FairComโ .
curl -fsSL https://raw.githubusercontent.com/toddstoffel/faircom/main/faircom_quick_start.sh | bash
Or clone the repo and run the script directly:
./faircom_quick_start.sh
Available commands:
./faircom_quick_start.sh start # Start the container (default)
./faircom_quick_start.sh stop # Stop and remove the container
./faircom_quick_start.sh restart # Restart the container
./faircom_quick_start.sh logs # View container logs
.\faircom_quick_start.ps1
If script execution is blocked, run this first:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Available commands:
.\faircom_quick_start.ps1 start # Start the container (default)
.\faircom_quick_start.ps1 stop # Stop and remove the container
.\faircom_quick_start.ps1 restart # Restart the container
.\faircom_quick_start.ps1 logs # View container logs
The image includes a built-in HEALTHCHECK on port 8080. Use condition: service_healthy in dependent services to wait for FairCom Edge to be fully ready before starting:
services:
faircom-edge:
image: faircomteam/edge:latest
container_name: faircom-edge
restart: unless-stopped
ports:
- "8080:8080" # HTTP (web apps and REST API)
- "9001:9001" # MQTT over WebSocket
- "1883:1883" # MQTT
- "6597:6597" # FairCom database
your-app:
image: your-app:latest
depends_on:
faircom-edge:
condition: service_healthy
Check health status at any time:
docker inspect --format='{{json .State.Health.Status}}' faircom-edge
docker run -d \
--name faircom-edge \
-p 8080:8080 \
-p 9001:9001 \
-p 1883:1883 \
-p 6597:6597 \
faircomteam/edge:latest
Mount a volume to retain data across container restarts:
docker run -d \
--name faircom-edge \
-p 8080:8080 -p 9001:9001 -p 1883:1883 -p 6597:6597 \
-v faircom-data:/opt/faircom/data \
faircomteam/edge:latest
Once running, the following are available:
| URL | Description |
|---|---|
| http://localhost:8080โ | Web interface |
| http://localhost:8080/apiโ | REST API |
| localhost:6597 | SQL connection |
Default credentials: ADMIN / ADMIN
| App | Description |
|---|---|
| MQExplorer | MQTT broker management |
| AceMonitor | Server monitoring and metrics |
| SQLExplorer | SQL query interface |
| ISAMExplorer | Low-level database explorer |
| Port | Protocol | Description |
|---|---|---|
| 8080 | HTTP | Web apps and REST API |
| 9001 | MQTT/WS | MQTT over WebSocket |
| 1883 | MQTT | MQTT broker |
| 6597 | TCP | FairCom database |
| Property | Value |
|---|---|
| Base image | debian:stable-slim |
| Architectures | linux/amd64, linux/arm64 |
| Run as | Non-root (faircom, uid 1000) |
| Health check | HTTP GET localhost:8080 every 30s |
| OCI labels | Full org.opencontainers.image.* set |
Docker Desktop with buildx support
FairCom Edge binary tarballs downloaded from faircom.com/products/download-edgeโ :
FairCom-Edge.linux.el8.x64.64bit.<version>.tar (for linux/amd64)FairCom-Edge.linux.arm_generic.64bit.<version>.tar (for linux/arm64)Place both files in build/source/ before building.
Optional custom transform/code package artifacts: place custom .jar and/or .js files under build/source/code-packages/. During build, these files are baked into /opt/faircom/server/packages, and startup logs print how many custom package files were found.
Example:
build/source/code-packages/
decode_modbus_sim.js
decode_mixing_tank.js
your-java-transform.jar
The image includes a Java runtime (openjdk-21-jre-headless) so Java-based package execution dependencies are available by default.
Builds for linux/amd64 and linux/arm64, pushes both the versioned tag and latest to Docker Hub, and updates the Docker Hub overview in one step:
cd build/docker
./build-and-push.sh faircomteam/edge
This auto-detects the version from the tarball filename and pushes two tags, e.g.:
faircomteam/edge:5.1.0.84.260213faircomteam/edge:latestTo also run Docker Scout vulnerability scan after push:
./build-and-push.sh faircomteam/edge --scout
cd build/docker
./build-local.sh faircomteam/edge latest
cd build/docker
./build-and-push.sh faircomteam/edge --readme-only
FairCom Edge is commercial software. This image packages FairCom Edge v5.1.0.84.
This image ships with an evaluation license (3-hour runtime limit). To remove the limit, bind-mount a production license file to /opt/faircom/server/ctsrvr.lic.
By downloading or using this image you agree to the FairCom Edge Developer License Agreementโ .
Content type
Image
Digest
sha256:5beb771d0โฆ
Size
544.3 MB
Last updated
3 months ago
docker pull faircomteam/edge