Installation
Floci can be run three ways: as a Docker image, as a pre-built native binary, or built from source.
Docker (Recommended)
No installation required beyond Docker itself.
| Tag | Description |
|---|---|
latest |
Native image — sub-second startup, low memory (default) |
x.y.z |
Native image — specific release version |
latest-jvm |
JVM image — most compatible |
x.y.z-jvm |
JVM image — specific release version |
Requirements
- Docker 20.10+
docker composev2+ (plugin syntax, not standalonedocker-compose)
Native vs JVM
The latest tag is the native image — a self-contained executable with no JVM dependency.
docker-compose.yml
services:
floci:
image: hectorvent/floci:latest # native — recommended
ports:
- "4566:4566"
Use the JVM image if you need broader platform compatibility or encounter native image issues:
Startup comparison
| Image | Tag | Typical startup | Idle memory |
|---|---|---|---|
| Native | latest / x.y.z |
< 100 ms | ~50 MB |
| JVM | latest-jvm / x.y.z-jvm |
~2 s | ~250 MB |
Build from Source
Prerequisites
- Java 25+
- Maven 3.9+
- (Optional) GraalVM Mandrel for native compilation
Clone and run
git clone https://github.com/hectorvent/floci.git
cd floci
mvn quarkus:dev # dev mode with hot reload on port 4566
Build a production JAR
Build a native executable
Note
Native compilation requires GraalVM or Mandrel with the native-image tool on your PATH. Build time is typically 2–5 minutes.