- Python 40.1%
- Dockerfile 31.7%
- Shell 25.1%
- Makefile 3.1%
| .forgejo | ||
| apps | ||
| media | ||
| monitoring | ||
| networking | ||
| scripts | ||
| templates | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .yamllint.yml | ||
| CATALOG.md | ||
| CHANGELOG.md | ||
| CODEOWNERS | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| RELEASES.md | ||
| renovate.json | ||
| RENOVATE_POLICY.md | ||
| SECURITY.md | ||
| STACK_METADATA.md | ||
| STANDARDS.md | ||
Homelab Compose
A curated collection of generic Docker Compose templates for self-hosted services.
This repository is organized by category and is intended to provide reusable starting points for applications, media services, networking tools, monitoring platforms, and supporting infrastructure.
Each stack is designed to include:
docker-compose.yml.env.exampleREADME.md- Optional example configuration files when needed
Real deployment values such as passwords, API keys, tokens, private keys, internal hostnames, private IP addresses, and production .env files should never be committed.
Repository Layout
apps/— General self-hosted applications and administrative toolsmedia/— Media servers, automation, processing, and related toolsnetworking/— DNS, reverse proxy, VPN, tunneling, and network-related servicesmonitoring/— Monitoring, status pages, observability, logs, metrics, and alerting toolstemplates/— Shared examples, environment templates, and reusable snippets
Getting Started
Browse the category folders and choose a stack.
Each stack README explains its purpose, configuration requirements, ports, persistent storage, networking, security considerations, backups, and upgrade guidance.
Before adapting a template for a real deployment:
-
Copy
.env.exampleto.env. -
Replace placeholder values with deployment-specific settings.
-
Keep
.envand other secret-bearing files untracked. -
Review the stack README before deploying.
-
Validate the Compose configuration:
docker compose --env-file .env.example -f docker-compose.yml config
Repository Standards
See STANDARDS.md for naming, documentation, configuration, security, and structure requirements.
Catalog
See CATALOG.md for an automatically generated index of available stacks.
Contributing
See CONTRIBUTING.md for contribution requirements, validation expectations, and template guidelines.
Security
Do not commit credentials, API keys, tokens, private certificates, private keys, webhook URLs, internal IP addresses, internal domains, or deployment-specific configuration files.
License
This repository is licensed under the Apache License 2.0. See LICENSE.