https://github.com/pkeffect/compose_creator
Docker compose creation tool
https://github.com/pkeffect/compose_creator
Last synced: 5 months ago
JSON representation
Docker compose creation tool
- Host: GitHub
- URL: https://github.com/pkeffect/compose_creator
- Owner: pkeffect
- License: mit
- Created: 2025-08-04T23:09:32.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-14T21:19:23.000Z (10 months ago)
- Last Synced: 2025-08-14T23:21:47.876Z (10 months ago)
- Language: HTML
- Size: 30.3 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π Open WebUI Docker Compose Creator
A modern, user-friendly web interface for generating Docker Compose configurations for [Open WebUI](https://github.com/open-webui/open-webui) - the extensible, feature-rich, and user-friendly self-hosted WebUI designed to operate entirely offline.
[]([https://your-domain.com](https://internode.info/dev/oi/compose/))
[](LICENSE)
[](https://github.com/open-webui/open-webui)
Live Demo https://internode.info/dev/oi/compose/
## β¨ Features
### π¨ **Modern Interface**
- **Multi-theme support**: Dark, Light, and Ultra-dark themes with persistent preferences
- **Responsive design**: Works seamlessly on desktop, tablet, and mobile devices
- **Real-time preview**: Instant YAML generation as you configure settings
- **Professional UI**: Clean, intuitive interface with smooth animations
### βοΈ **Configuration Options**
- **General Settings**: Container naming, port mapping, image tag selection
- **Feature Toggles**: Authentication, user signup, default models configuration
- **Advanced Options**: Memory limits, restart policies, secret key management
- **Ollama Integration**: Easy connection to local or remote Ollama instances
### π **Export & Usage**
- **One-click copy**: Copy generated compose.yml to clipboard
- **Direct download**: Download ready-to-use Docker Compose files
- **Optimized output**: Only non-default values included for clean, minimal configs
## π Quick Start
### π Prerequisites
- Docker and Docker Compose installed ([Get Docker](https://docs.docker.com/get-docker/))
- Basic understanding of Docker containers
### π― Usage Steps
1. **Configure**: Use the web interface to set up your Open WebUI preferences
2. **Generate**: Watch the real-time YAML preview update as you configure
3. **Download**: Click "Download File" to save your `compose.yml`
4. **Deploy**: Run `docker compose up -d` in your project directory
5. **Access**: Open `http://localhost:3000` (or your configured port)
### π» Local Development
```bash
# Clone the repository
git clone https://github.com/your-username/open-webui-composer.git
cd open-webui-composer
# Serve locally (any static server works)
python -m http.server 8000
# or
npx serve .
# or
php -S localhost:8000
# Open http://localhost:8000
```
## ποΈ Project Structure
```
βββ index.html # Main HTML structure
βββ style.css # Comprehensive styling with theme system
βββ main.js # Core JavaScript functionality
βββ paste.txt # Comprehensive Open WebUI analysis
βββ README.md # This file
```
## π§ Current Configuration Support
| Category | Supported Options | Status |
|----------|------------------|---------|
| **Basic Setup** | Container name, ports, image tags | β
Complete |
| **Authentication** | Enable/disable auth and signup | β
Complete |
| **Ollama Integration** | Base URL configuration | β
Complete |
| **Resource Management** | Memory limits, restart policies | β
Complete |
| **Advanced Features** | Secret key management | β
Complete |
## πΊοΈ Project Roadmap
### π **Phase 1: Enhanced Core Features**
#### π **Authentication & Security**
- [ ] **OAuth Provider Wizard**: Google, Microsoft, GitHub, OIDC setup with guided configuration
- [ ] **LDAP/Active Directory**: Enterprise directory integration with certificate management
- [ ] **Security Hardening**: JWT configuration, CORS settings, cookie policies
- [ ] **Secret Management**: Docker secrets integration and external vault support
#### ποΈ **Database & Storage**
- [ ] **Database Selection**: PostgreSQL setup wizard with connection string generation
- [ ] **Vector Database Support**: ChromaDB, Qdrant, Elasticsearch, Pinecone configuration
- [ ] **Storage Options**: External volume mounting, backup configuration
- [ ] **Migration Tools**: SQLite to PostgreSQL migration assistance
#### π€ **AI Provider Integration**
- [ ] **Multi-Provider Setup**: OpenAI, Anthropic, Google, Azure OpenAI configuration
- [ ] **Load Balancing**: Multiple endpoint configuration with failover
- [ ] **API Key Management**: Secure credential handling and rotation
- [ ] **Model Configuration**: Default models, restrictions, and performance tuning
### π’ **Phase 2: Enterprise Features**
#### π **Deployment Patterns**
- [ ] **Template Library**: Pre-configured deployment patterns
- [ ] Standalone WebUI (current)
- [ ] WebUI + Ollama Bundle
- [ ] Enterprise Multi-Node
- [ ] GPU-Accelerated Setup
- [ ] Pipeline-Enhanced Architecture
- [ ] **High Availability**: Redis clustering, load balancer configuration
- [ ] **Scaling Configuration**: Multi-instance deployment with shared state
#### π **Advanced Features**
- [ ] **RAG Configuration**: Embedding engines, content extraction, hybrid search
- [ ] **Multi-Modal Setup**: Image generation, speech processing, file handling
- [ ] **Monitoring Integration**: Langfuse, Portkey, custom observability
- [ ] **Performance Tuning**: Thread pools, caching, resource optimization
#### β
**Validation & Testing**
- [ ] **Pre-deployment Validation**: Configuration compatibility checking
- [ ] **Health Check Generation**: Automatic health endpoint configuration
- [ ] **Dependency Resolution**: Service startup order and dependencies
- [ ] **Environment Testing**: Development, staging, production profiles
### π§ **Phase 3: Intelligence & Automation**
#### π§ββοΈ **Smart Configuration**
- [ ] **Setup Wizards**: Guided configuration for complex scenarios
- [ ] **Requirement Analysis**: Automatic resource estimation and recommendations
- [ ] **Best Practices**: Built-in security and performance recommendations
- [ ] **Configuration Validation**: Real-time error checking and suggestions
#### π± **Enhanced User Experience**
- [ ] **Progressive Web App**: Offline functionality and mobile optimization
- [ ] **Configuration Import**: Load existing Docker Compose files for editing
- [ ] **Version Control**: Configuration history and rollback capabilities
- [ ] **Team Collaboration**: Shared configurations and team management
#### π **Extensibility**
- [ ] **Plugin System**: Custom configuration modules and extensions
- [ ] **API Integration**: REST API for programmatic configuration generation
- [ ] **CLI Tool**: Command-line interface for automation and CI/CD
- [ ] **Helm Charts**: Kubernetes deployment support
### π **Phase 4: Ecosystem Integration**
#### π **Enterprise Platform**
- [ ] **Multi-Tenant Support**: Organization and team management
- [ ] **Compliance Tools**: Security scanning, audit logs, compliance reporting
- [ ] **Integration Hub**: Third-party service connections and marketplace
- [ ] **Professional Services**: Deployment assistance and consulting integration
## π€ Contributing
We welcome contributions! Here's how you can help:
### π― **Priority Areas**
1. **Authentication wizards** for OAuth and LDAP setup
2. **Database configuration** tools and migration assistance
3. **Validation engine** for configuration checking
4. **Template system** for common deployment patterns
### π **Development Guidelines**
- **Vanilla JavaScript**: Keep dependencies minimal
- **Progressive Enhancement**: Ensure core functionality works without JS
- **Accessibility**: Follow WCAG guidelines for inclusive design
- **Mobile-First**: Responsive design for all screen sizes
### π **Contribution Process**
```bash
# Fork the repository
git fork https://github.com/your-username/open-webui-composer.git
# Create feature branch
git checkout -b feature/oauth-wizard
# Make changes and test
# Add tests for new functionality
# Submit pull request
# Include detailed description and testing notes
```
## π **Technical Documentation**
### ποΈ **Architecture Decisions**
- **Static-first**: No build process required, easy deployment
- **Theme System**: CSS custom properties for maintainable theming
- **Event-driven**: Reactive configuration updates
- **Progressive Enhancement**: Works without JavaScript for basic functionality
### π§ **Environment Variables Supported**
Currently supports 15+ environment variables with plans to expand to 100+:
- Core application configuration
- Authentication and security settings
- Performance and resource management
- Feature toggles and customization
### π **Open WebUI Integration**
Based on comprehensive analysis of Open WebUI capabilities:
- **100+ environment variables** available for configuration
- **Multiple deployment patterns** from simple to enterprise
- **Extensive integration options** with AI providers and databases
- **Enterprise security features** and compliance requirements
## π License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## π Acknowledgments
- [Open WebUI Team](https://github.com/open-webui/open-webui) for creating an amazing AI interface
- Community contributors and feedback providers
- Docker and container ecosystem maintainers
## π Support & Community
- **Issues**: [GitHub Issues](https://github.com/pkeffect/compose_creator/issues)
- **Discussions**: [GitHub Discussions](https://github.com/pkeffect/compose_creator/discussions)
---
**Made with β€οΈ for the Open WebUI community**