To self-host Ghostfolio for your Gonen Statutory Trust portal, you’ll use a docker-compose.yml file. This is the “blueprint” that tells your server how to run the app, its database (PostgreSQL), and its cache (Redis).
- The Docker Compose Blueprint
Create a folder on your server (e.g., /opt/gonen-portal) and create a file named docker-compose.yml inside it.
version: ‘3.9’
services:
ghostfolio:
image: ghostfolio/ghostfolio:latest
container_name: ghostfolio
ports:
– “3333:3333”
env_file:
– .env
depends_on:
– ghostfolio-db
– ghostfolio-redis
restart: always
ghostfolio-db:
image: postgres:15-alpine
container_name: ghostfolio-db
environment:
POSTGRES_DB: ghostfolio_db
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
– ./data/postgres:/var/lib/postgresql/data
restart: always
ghostfolio-redis:
image: redis:alpine
container_name: ghostfolio-redis
command: [“redis-server”, “–requirepass”, “${REDIS_PASSWORD}”]
restart: always
- The Secret Environment File (.env)
In the same folder, create a file named .env. This keeps your passwords and keys separate from the main code.
Database Settings
POSTGRES_USER=gonen_admin
POSTGRES_PASSWORD=ChooseASecurePassword123
Redis Settings
REDIS_PASSWORD=ChooseAnotherSecurePassword456
Ghostfolio Security
JWT_SECRET_KEY=A_Very_Long_Random_String_For_Security
ACCESS_TOKEN_SALT=Another_Random_String
Trust Branding
BASE_CURRENCY=USD
- How to Launch
- Connect to your server via SSH.
- Install Docker: If not already installed, use curl -sSL https://get.docker.com | sh.
- Run the command: “`bash
docker compose up -d - Access your portal: Open your browser to http://your-server-ip:3333. The first account you create will automatically be the Admin.
System Requirements for 2026
Since you’ll be handling investor data and potentially 4K video updates for your real estate properties: - CPU: 1-2 vCPU Cores (Intel i3/Ryzen 3 equivalent or better).
- RAM: 4GB is the sweet spot for smooth performance.
- Storage: 50GB NVMe (for fast database lookups).
- Upload Speed: Your 195 Mbps is perfect for serving high-resolution property photos and PDF agreements to multiple investors simultaneously.
Pro-Tip: Security for the Trust
Since this is for a Statutory Trust, do not leave the portal on port 3333. You should use a Reverse Proxy (like Nginx Proxy Manager) to add an SSL certificate (https://) and map it to a professional domain like invest.gonentrust.com.
Would you like me to show you how to set up that Nginx Reverse Proxy so your investors see a secure padlock and a professional domain name?