FirmFlow On-Premise Installation Guide (Docker)¶
This guide walks you through deploying the FirmFlow stack on your own hardware using Docker Compose.
Automated Setup (Recommended)¶
For a streamlined experience, use the provided installation wizard:
This script automates environment variable generation, pulls modern containers, and initializes the database.Prerequisites¶
- Ubuntu 22.04 LTS or Windows Server (with WSL2 & Docker Desktop).
- Docker Engine & Docker Compose V2.
- Minimum Specifications: 4-Core CPU, 16GB RAM, 500GB SSD.
1. Prepare the Directory Structure¶
Create a highly secure directory for FirmFlow data on the host machine:
2. Setup Environment Variables¶
Create the .env file in the root directory:
# Core
NODE_ENV="production"
AUTH_SECRET="<GENERATE_A_LONG_RANDOM_STRING_HERE>"
NEXTAUTH_URL="https://portal.yourfirm.com"
# Database
DATABASE_URL="postgresql://firmflow:secure_db_pass@db:5432/firmflow"
# Licensing & AI Bridge
GOOGLE_GENAI_API_KEY="<PROVIDED_BY_FIRMFLOW_TEAM>"
LICENSE_KEY="<YOUR_PURCHASED_LICENSE_KEY>"
3. Launch the Stack¶
Using the provided docker-compose.yml:
3000.
4. Run Initial Migrations¶
Before logging in, you must initialize the database schema.
5. Reverse Proxy Configuration¶
You exposed port 3000 via Docker. You must terminate SSL using Nginx or Caddy. Ensure you pass the required trust headers:
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
6. Setup Initial Admin¶
Open the application URL. Since the DB is fresh, navigate to /register (if open) or use the terminal to seed the main admin user, and begin configuring your firm settings.