Skip to main content

Docker and Docker Compose

Starting from version 2.0.0, FDM Monster uses SQLite as its database, so no separate database server is required.

Quick Start

Create a docker-compose.yml file:

services:
fdm-monster:
container_name: fdm-monster
image: fdmmonster/fdm-monster:2.0.0
restart: unless-stopped
deploy:
restart_policy:
delay: 5s
max_attempts: 3
window: 120s
ports:
- "4000:4000"
volumes:
- fdm-monster-media:/app/media
- fdm-monster-database:/app/database

volumes:
fdm-monster-media:
fdm-monster-database:

Run the container:

docker-compose up -d

Access FDM Monster at http://localhost:4000

Docker Image

The FDM Monster Docker image can be found on Docker Hub.

Image Tags

Multiple tags are available for the fdmmonster/fdm-monster image:

  • latest - The latest stable release
  • 2, 2.0, 2.0.0 - Specific version tags
  • main - Latest stable development version (same as latest)
  • develop - Latest development version (not recommended for production)
  • x.y.z-rc1-1234 - Release candidates (not recommended for production)

Environment Variables

FDM Monster can be customized using environment variables. See the complete Environment Variables Reference for all available options.

Quick Example

services:
fdm-monster:
container_name: fdm-monster
image: fdmmonster/fdm-monster:2.0.0
restart: unless-stopped
ports:
- "4000:4000"
environment:
- SERVER_PORT=4000
- NODE_ENV=production
- OVERRIDE_LOGIN_REQUIRED=true
volumes:
- fdm-monster-media:/app/media
- fdm-monster-database:/app/database

volumes:
fdm-monster-media:
fdm-monster-database:

Common environment variables include:

  • SERVER_PORT - Change the server port (default: 4000)
  • NODE_ENV - Set environment mode (default: production)
  • OVERRIDE_LOGIN_REQUIRED - Require login (default: true)
  • OVERRIDE_IS_DEMO_MODE - Enable demo mode (default: false)

For the complete list of environment variables, configuration examples, and detailed descriptions, see the Environment Variables Guide.

Additional Resources