A curated collection of production-ready Docker Compose templates for popular application stacks. Deploy development environments in seconds with pre-configured services like PostgreSQL, Redis, MySQL, and more.
This project is built on three core principles:
-
Simplicity First Minimal configurations with sane defaults. No unnecessary abstractions or complex tooling.
-
Zero Black Magic Explicit configurations over hidden automation. You always know exactly what's running.
-
Modular by Design Mix-and-match components like LEGO blocks. Each service is self-contained yet interoperable.
We believe in documentation-driven development - every template comes with detailed setup guides and operational notes.
- 🚀 Production-inspired configurations
- 🔒 Secure defaults (proper user permissions, isolated networks)
- 📁 Environment variable driven setups
- 🔄 Easy version switching
- 📈 Optional monitoring stacks
- 🔍 Healthchecks and proper service dependencies
- Docker Engine ≥ 20.10
- Docker Compose ≥ 2.17
-
Clone the repository:
git clone https://github.com/ithaquaKr/stack-compose.git cd stack-compose
-
Navigate to desired component:
cd composes/postgres
-
Start the stack:
docker compose up -d
Example - PostgreSQL + pgAdmin:
docker compose -f docker-compose.yml -f docker-compose.pgadmin.yml up -d
Example - Redis with Persistent Storage:
docker compose -f docker-compose.yml -f docker-compose.persistence.yml up -d
stack-compose/
├── composes/
│ ├── postgres/
│ │ ├── docker-compose.yml
│ │ ├── docker-compose.pgadmin.yml # Optional extensions
│ │ └── README.md # Component-specific docs
│ ├── redis/
│ ├── mysql/
│ └── .../
├── .env.example # Common environment variables
└── README.md # This global documentation
Each component includes:
- Base
docker-compose.yml
file - Optional extension files for additional tooling
- Detailed README with:
- Service configuration details
- Connection strings
- Security considerations
- Backup/restore procedures
- Common troubleshooting steps
-
Environment Variables Copy
.env.example
to.env
and modify values:cp .env.example .env
-
Docker Compose Overrides Create
docker-compose.override.yml
for local customizations that won't affect upstream:version: "3.8" services: postgres: ports: - "5432:5432" volumes: - ./local-data:/var/lib/postgresql/data
We welcome contributions through:
- 🐛 Bug reports
- 💡 Feature requests
- 📚 Documentation improvements
- 🧪 New stack components
Please read our Contribution Guidelines before submitting changes.
This project is licensed under the MIT License - see the LICENSE file for details.
For help or questions:
- Open an Issue
- Join our Community Discussion Forum (link your preferred platform)
- Inspired by real-world deployment patterns
- Security guidance from CIS Docker Benchmarks
- Documentation templates from Awesome Compose
Happy Containerizing! 🐳 + ❤️ = 😊