Run Multiple BloodHound CE Instances with Docker

I’ve just published a new GitHub repository that provides a simple way to run multiple BloodHound Community Edition instances using Docker.

When working with different SharpHound data, labs, or demo environments, I often need several isolated BloodHound environments. Managing these manually quickly becomes messy — especially when dealing with ports, databases, and local storage.

This repository provides a clean and reproducible setup to run multiple BloodHound CE instances on the same host, each with:

  • dedicated Neo4j database
  • separate local data directories
  • customizable port mappings
  • individual environment configuration

The setup is based on Docker Compose and environment files, making it easy to start, stop, or update each instance independently.

Example usage:


docker compose --env-file herr-hozi.env pull 
docker compose --env-file herr-hozi.env up 
docker compose --env-file herr-hozi.env down

Using 0.0.0.0 for the exposed ports also allows access from external systems, which is useful for labs, demonstrations, or team environments.

If you frequently work with BloodHound in multiple environments, this setup can help keep things organized and reproducible.

You can find the repository here:
https://github.com/HerrHozi/BloodHoundCE-Multi-Instance-Docker-Setup .

Leave a comment