Building from Source
Prerequisites
Section titled “Prerequisites”DiscoPanel manages Minecraft servers as Docker containers, so Docker is required both at build time and runtime.
- Go 1.24+
- Node.js 22+
- Docker (also used to run buf for protobuf code generation)
- Make
Build steps
Section titled “Build steps”# Clone the repogit clone https://github.com/nickheyer/discopanel.gitcd discopanel
# Generate protobuf code (Go + TypeScript) via Docker bufmake gen
# Install frontend dependencies and buildcd web/discopanel && npm install && npm run build && cd ../..
# Build the Go binary with embedded frontendgo build -o discopanel cmd/discopanel/main.goThe //go:embed directives bake the frontend build into the binary so it serves the UI without a separate web server.
Running
Section titled “Running”# Using default config (./config.yaml if it exists, otherwise defaults)./discopanel
# Or point to a specific config file./discopanel -config /path/to/config.yamlAll config options can also be set via environment variables with the DISCOPANEL_ prefix. For example, server.port becomes DISCOPANEL_SERVER_PORT. Environment variables take precedence over the config file.
For all available configuration options, see Configuration.