Skip to main content

Docker

Server

Docker Command Line

docker run -d \
--name FileFlows \
-p 19200:5000 \
-e TempPathHost:/path/to/temp \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /path/to/data:/app/Data \
-v /path/to/logging:/app/Logs \
-v /path/to/temp:/temp \
-v /path/to/media:/media \
--restart unless-stopped \
revenz/fileflows

Docker Template

version: '3.7'
services:
fileflows:
image: revenz/fileflows
container_name: fileflows
environment:
- TZ=Pacific/Auckland
- TempPathHost=/path/to/temp
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /path/to/data:/app/Data
- /path/to/logs:/app/Logs
- /path/to/temp:/temp
- /path/to/media:/media
ports:
- 19200:5000
restart: unless-stopped

Docker with NVIDIA Hardware Encoding

docker run -d \
--name FileFlows \
-p 19200:5000 \
-e NVIDIA_DRIVER_CAPABILITIES=compute,video,utility \
-e NVIDIA_VISIBLE_DEVICES=all \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /mnt/docker/fileflows/data:/app/Data \
-v /mnt/docker/fileflows/logs:/app/Logs \
-v /mnt/docker/fileflows/temp:/temp \
-e /mnt/docker/fileflows/temp:/temp \
--runtime nvidia \
--restart unless-stopped \
revenz/fileflows

Docker compose

version: '3.7'
services:
fileflows:
image: revenz/fileflows
container_name: fileflows
runtime: nvidia
environment:
- TZ=Pacific/Auckland
- TempPathHost=/temp
- NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
- NVIDIA_VISIBLE_DEVICES=all
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /mnt/docker/fileflows/data:/app/Data
- /mnt/docker/fileflows/logs:/app/Logs
- /mnt/docker/fileflows/temp:/temp
ports:
- 19200:5000
restart: unless-stopped

Parameters

TypeVariableDescription
-p5000The port of the FileFlows interface
-eTempPathHostThis is the physical path on the host where the temp path is used. This is needed when a sibling docker container is created in the flow execution. This path will be mapped into the sibling container
-v.../docker.sockThis allows FIleFlows to start sibling docker containers, so 3rd party applications to be executed within the flow
-v/app/DataThe data directory of FileFlows. Where the database and configuration will be saved
-v/app/LogsWhere logs will be saved
-v/tempThe temp directory for the internal processing node.
-v/mediaOptional mapped path. You can map as many as you want
-vNVIDIA_VISIBLE_DEVICESThe Nvidia GPU UID that identifies your GPU, eg GPU-0d5bb4da-23e4-9e65-15b2-8c6d30

Docker Node

Node configuration is almost identical to the server, except you need to add the follow environmental values

NameVariableDescription
FFNODE1Tells container it is running as a Node
ServerUrlhttp://server:19200The URL address of the FileFlows server
Custom Name

If you need to use a different name for the Node instead of the machine name you can set the environmental variable NodeName.

This is only needed if you cannot set the machine name for the docker container.