Installation Guide
This guide will help you get FOG Docker up and running quickly.
Prerequisites
- Docker and Docker Compose installed
- At least 4GB RAM available
- 20GB+ free disk space
- Network access for downloading FOG client files
Quick Installation
Option 1: Quick Setup (Recommended)
- Create a directory and download the required files:
mkdir fog-docker && cd fog-docker curl -O https://raw.githubusercontent.com/88fingerslukee/fog-docker/main/docker-compose.yml curl -O https://raw.githubusercontent.com/88fingerslukee/fog-docker/main/.env.example cp .env.example .env - Edit .env with your settings:
# Required settings FOG_WEB_HOST=192.168.1.100 FOG_DB_ROOT_PASSWORD=your-secure-password # FOG 1.6 capture finalize (default; keep for single-container installs) FOG_STORAGE_NODE_SSH_HOST=127.0.0.1 - Start FOG:
docker compose up -d - Access FOG:
- Web Interface:
https://your-server-ip/fog/management/(accept the self-signed certificate on first visit) - Default login:
fog/password
- Web Interface:
Option 2: Full Repository Clone
git clone https://github.com/88fingerslukee/fog-docker.git
cd fog-docker
cp .env.example .env
# Edit .env with your settings
docker compose up -d
Windows (WSL2)
To run fog-docker on Windows for lab work (Web UI, FOG Agent trials), see Windows (WSL2). Full LAN PXE/imaging on WSL is limited; use a Linux server or VM for production imaging.
Development Setup
For development, testing, or custom FOG versions:
- Clone the repository:
git clone https://github.com/88fingerslukee/fog-docker.git cd fog-docker - Configure your environment:
cp .env.example .env # Edit .env: set FOG_WEB_HOST, FOG_DB_ROOT_PASSWORD, and optionally FOG_VERSION # FOG_VERSION is any FOG git ref (stable, 1.6.0-RC-11, working-1.6, …) # working-1.6 = upstream 1.6 dev branch (moving); pin 1.6.0-RC-11 to match a release candidate. # Production without local builds: use docker-compose.yml + ghcr image tags (see below). - Build and start the containers:
docker compose -f docker-compose-dev.yml up -d --build
Note: Development setup builds FOG from source. Web UI is published on 8080/8443 by default; TFTP/FTP stay on 69/21. Set FOG_VERSION in .env to any FOG git ref (stable, working-1.6, 1.6.0-RC-6, etc.).
Automatic Releases
This project automatically builds and publishes new Docker images when the FOG Project releases new versions:
- Automatic Detection: Checks for new FOG releases every 6 hours
- Final releases: Tagged
fog-<upstream-tag>and:latest - Release candidates: Tagged
fog-<upstream-tag>and:rc; published as a GitHub pre-release (not:latest) - Every push to
main: CI rebuilds both the newest final release (:latest) and the newest RC (:rc+fog-<RC>), so pinned and rolling tags pick up fog-docker fixes without waiting for a new upstream FOG tag - Not auto-built: alpha / beta / preview tags (use the dev compose file or a manual workflow dispatch if needed)
- Manual Trigger: You can manually trigger builds for specific FOG versions
Available Image Tags
| Tag | Meaning |
|---|---|
:latest | Newest final FOG release |
:fog-<release> | Pin to a specific published build (see GitHub Releases) |
:rc | Newest release candidate (pre-release channel) |
Full image reference: ghcr.io/88fingerslukee/fog-docker:<tag>. Custom FOG refs are built locally with docker-compose-dev.yml and FOG_VERSION.
Next Steps
After installation, continue with:
- Configuration Guide - Configure FOG for your environment
- Network Boot Setup - Set up PXE and HTTPBoot
- SSL/HTTPS Setup - Configure SSL certificates (optional)
Troubleshooting
If you encounter issues during installation:
- Check container logs:
docker compose logs fog-server docker compose logs fog-db - Verify environment variables:
cat .env - Check port availability:
netstat -tulpn | grep -E ':(80|443|69|21|2049)' -
Capture stuck on “Updating Database” or task Failed after upload: see Post_Stage2 / SSH finalize.
- See Troubleshooting Guide for other common issues and solutions.
Security Notes
Kernel NFS requires privileged: true. To run without privileged mode, set FOG_NFS_MODE=unfs3 and FOG_PRIVILEGED=false. See the configuration guide.
Important: Change the default FOG web UI admin password immediately after first login:
- Default Username:
fog - Default Password:
password - Action Required: Change this password in the FOG web interface for security!