This guide covers the deployment of FLO On-Premise using Docker. This is the recommended path for air-gapped or private cloud environments.

Prerequisites

You need to have Docker and Docker Compose installed on your machine.

Recommended: Docker Compose (Production)

For production environments, we recommend using Docker Compose to manage the FLO server along with its dependencies (PostgreSQL and Redis).
  1. Create a docker-compose.yml file:
version: '3.8'
services:
  flo:
    image: andai.azurecr.io/flo-stage/v2/flo-stage-v2:latest
    ports:
      - "8080:80"
    environment:
      - FLO_EDITION=ee
      - FLO_LICENSE_KEY=your_enterprise_license_key
      - FLO_DB_TYPE=POSTGRES
      - FLO_POSTGRES_HOST=postgres
      - FLO_REDIS_HOST=redis
    depends_on:
      - postgres
      - redis
  postgres:
    image: postgres:15
    environment:
      - POSTGRES_DB=flo
      - POSTGRES_PASSWORD=password
  redis:
    image: redis:7
  1. Run the deployment:
docker-compose up -d

Quick Test: Single Container

If you just want to test the Enterprise features locally:
docker run -d -p 8080:80 \
  -v ~/.flo:/root/.flo \
  -e FLO_EDITION=ee \
  -e FLO_LICENSE_KEY=your_enterprise_license_key \
  -e FLO_FRONTEND_URL="http://localhost:8080" \
  andai.azurecr.io/flo-stage/v2/flo-stage-v2:latest

Upgrade

To upgrade your On-Premise installation:
  1. Pull the latest image:
    docker pull andai.azurecr.io/flo-stage/v2/flo-stage-v2:latest
    
  2. Restart the containers:
    docker-compose up -d --force-recreate
    
Congratulations! You are now running FLO Enterprise On-Premise.