Docker
Server
Docker Command Line
docker run -d \
--name FileFlows \
-p 5000: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:
- 5000:5000
restart: unless-stopped
Docker with NVIDIA Hardware Encoding
docker run -d \
--name FileFlows \
-p 5000: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:
- 5000:5000
restart: unless-stopped
Parameters
Type | Variable | Description |
---|---|---|
-p | 5000 | The port of the FileFlows interface |
-e | TempPathHost | This 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.sock | This allows FIleFlows to start sibling docker containers, so 3rd party applications to be executed within the flow |
-v | /app/Data | The data directory of FileFlows. Where the database and configuration will be saved |
-v | /app/Logs | Where logs will be saved |
-v | /temp | The temp directory for the internal processing node. |
-v | /media | Optional mapped path. You can map as many as you want |
-v | NVIDIA_VISIBLE_DEVICES | The 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
Name | Variable | Description |
---|---|---|
FFNODE | 1 | Tells container it is running as a Node |
ServerUrl | http://server:5000 | The 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.