Deploying with Docker
This guide will show you how to run a Fluss cluster using Docker.
We will introduce the prerequisites of the Docker environment, and how to quickly create a Fluss cluster using docker run commands
or a docker compose file.
Prerequisites
Hardware
Recommended configuration: 4 cores, 16GB memory.
Software
Docker and the Docker Compose plugin. All commands were tested with Docker version 27.4.0 and Docker Compose version v2.30.3.
Deploy with Docker
The following is a brief overview of how to quickly create a complete Fluss testing cluster
using the docker run commands.
Create a shared tmpfs volume
Create a shared tmpfs volume:
docker volume create shared-tmpfs
Create a Network
Create an isolated bridge network in docker
docker network create fluss-demo
Start Zookeeper
Start Zookeeper in daemon mode. This is a single node zookeeper setup. Zookeeper is the central metadata store for Fluss and should be set up with replication for production use. For more information, see Running zookeeper cluster.
docker run \
--name zookeeper \
--network=fluss-demo \
--restart always \
-p 2181:2181 \
-d zookeeper:3.9.2
Start Fluss CoordinatorServer
Start Fluss CoordinatorServer in daemon and connect to Zookeeper.
docker run \
--name coordinator-server \
--network=fluss-demo \
--env FLUSS_PROPERTIES="zookeeper.address: zookeeper:2181
bind.listeners: INTERNAL://coordinator-server:0, CLIENT://coordinator-server:9123
advertised.listeners: CLIENT://localhost:9123
internal.listener.name: INTERNAL
" \
-p 9123:9123 \
-d apache/fluss:0.8.0-incubating coordinatorServer
Start Fluss TabletServer
You can start one or more tablet servers based on your needs. For a production environment, ensure that you have multiple tablet servers.