4.1 KiB
Service Catalog
Available services and their configuration options
Generated on: tir 29 jul 16:25:43 CEST 2025
This document catalogs all available homelab services, their configuration options, and integration capabilities.
Overview
Total Available Services: 4
Service Reference
gatus
Description: Gatus Status Page
Default Port: 8080
Current Deployments: 0 instance(s)
Core Configuration
homelab.services.gatus = {
enable = true;
port = 8080;
description = "Gatus Status Page";
};
Service-Specific Options
Available configuration options for gatus:
homelab.services.gatus = {
# ... core options above ...
# Service-specific configuration
alerting = {};
extraConfig = {};
storage = {"type":"memory"};
ui = {"buttons":[{"link":"https://grafana.procopius.dk","name":"Grafana"},{"link":"https://prometheus.procopius.dk","name":"Prometheus"}],"header":"Homelab Services Status","link":"https://status.procopius.dk","title":"Homelab Status"};
web = {"address":"0.0.0.0"};
};
Complete Example
# Full configuration example for gatus
homelab.services.gatus = {
enable = true;
port = 8080;
description = "Gatus Status Page";
};
grafana
Description: Grafana Metrics Dashboard
Default Port: 3000
Current Deployments: 0 instance(s)
Core Configuration
homelab.services.grafana = {
enable = true;
port = 3000;
description = "Grafana Metrics Dashboard";
};
Complete Example
# Full configuration example for grafana
homelab.services.grafana = {
enable = true;
port = 3000;
description = "Grafana Metrics Dashboard";
};
minio
Description: minio
Default Port: 9000
Current Deployments: 1 instance(s)
Core Configuration
homelab.services.minio = {
enable = true;
port = 9000;
description = "minio";
};
Service-Specific Options
Available configuration options for minio:
homelab.services.minio = {
# ... core options above ...
# Service-specific configuration
openFirewall = true;
webPort = 9001;
};
Complete Example
# Full configuration example for minio
homelab.services.minio = {
enable = true;
port = 9000;
description = "minio";
};
prometheus
Description: Prometheus Monitoring Server
Default Port: 9090
Current Deployments: 0 instance(s)
Core Configuration
homelab.services.prometheus = {
enable = true;
port = 9090;
description = "Prometheus Monitoring Server";
};
Service-Specific Options
Available configuration options for prometheus:
homelab.services.prometheus = {
# ... core options above ...
# Service-specific configuration
alertmanager = {"enable":true,"url":"alertmanager.lab:9093"};
extraAlertingRules = [];
extraFlags = [];
extraScrapeConfigs = [];
globalConfig = {"evaluation_interval":"15s","scrape_interval":"15s"};
retention = 15d;
ruleFiles = [];
systemdServices = ["prometheus.service","prometheus"];
};
Complete Example
# Full configuration example for prometheus
homelab.services.prometheus = {
enable = true;
port = 9090;
description = "Prometheus Monitoring Server";
};
Integration Summary
Available Integration Types
| Integration | Purpose | Configuration |
|---|---|---|
| Monitoring | Prometheus metrics + health checks | monitoring.enable = true |
| Logging | Centralized log collection | logging.enable = true |
| Proxy | Reverse proxy with SSL + auth | proxy.enable = true |
Integration Benefits
- 🔄 Automatic Discovery: Enabled integrations are automatically discovered by fleet-wide services
- 📊 Unified Monitoring: All metrics and health checks appear in Prometheus/Grafana
- 📝 Centralized Logging: All logs are collected and indexed in Loki
- 🌐 Consistent Access: All services get consistent subdomain access with SSL
This service catalog is generated from actual service configurations across your homelab fleet.