This guide walks through a self-hosted installation of Open QuarterMaster. The system uses a modular architecture with a Core API and Base Station frontend, designed to be flexible and run on various environments from cloud servers to Raspberry Pi devices.
For Docker installation, see Docker.
For Debian-based systems, you can use the official setup script:
bash <(wget -q -O - https://deployment.openquartermaster.com/repos/main/deb/setup-repo.sh)
This script will set up the repository and install Open QuarterMaster with minimal configuration required.
mkdir open-quartermaster && cd open-quartermaster
Create a docker-compose.yml file with the following content:
version: '3.8'
services:
oqm-core:
image: epicbreakfastproductions/openquartermaster-core:latest
container_name: oqm-core
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./data:/app/data
- ./config:/app/config
environment:
- OQM_DATABASE_URL=jdbc:h2:file:/app/data/oqm
- OQM_DATABASE_DRIVER=org.h2.Driver
- OQM_SERVER_PORT=8080
networks:
- oqm-network
oqm-station:
image: epicbreakfastproductions/openquartermaster-station:latest
container_name: oqm-station
restart: unless-stopped
ports:
- "80:80"
depends_on:
- oqm-core
volumes:
- ./config:/app/config
environment:
- OQM_CORE_URL=http://oqm-core:8080
networks:
- oqm-network
networks:
oqm-network:
driver: bridge
docker compose up -d
Access the application at http://your-server-ip:80.
Install Git and Java to clone the project repository and build from source.
sudo apt-get update && sudo apt-get install -y git openjdk-17-jdk
Download the source code to the server.
git clone https://github.com/Epic-Breakfast-Productions/OpenQuarterMaster open-quartermaster
Move into the project folder to access deployment files.
cd open-quartermaster
Follow the build instructions in the project’s documentation for compiling from source.
Prefer automation? See Open QuarterMaster Ansible Setup for an example playbook.
Prefer containers? See Open QuarterMaster Docker Setup.
Any questions?
Feel free to contact us. Find all contact information on our contact page.