feat: add 18 AI/ML Portainer templates with gap analysis

This commit is contained in:
2026-03-10 14:30:02 -03:00
parent 199f5218bb
commit c2d54dd915
21 changed files with 1238 additions and 0 deletions

143
ai-templates/README.md Normal file
View File

@@ -0,0 +1,143 @@
# Portainer AI Templates
> **18 production-ready AI/ML Docker Compose stacks for Portainer** — filling the AI gap in the official v3 template library.
## Background
The official [Portainer v3 templates](https://raw.githubusercontent.com/portainer/templates/v3/templates.json) contain **71 templates** with **zero pure AI/ML deployments**. This repository provides a curated, Portainer-compatible template set covering the entire AI infrastructure stack.
See [docs/AI_GAP_ANALYSIS.md](docs/AI_GAP_ANALYSIS.md) for the full gap analysis.
## Quick Start
### Option A: Use as Custom Template URL in Portainer
1. In Portainer, go to **Settings → App Templates**
2. Set the URL to:
```
https://git.oe74.net/adelorenzo/portainer_scripts/raw/branch/master/ai-templates/portainer-ai-templates.json
```
3. Click **Save** — AI templates now appear in your App Templates list
### Option B: Deploy Individual Stacks
Each stack has its own `docker-compose.yml` in `stacks/<name>/`:
```bash
cd stacks/ollama
docker compose up -d
```
## Template Catalog
### LLM Inference & Model Serving
| Template | Port | GPU | Description |
|---|---|---|---|
| **Ollama** | 11434 | Yes | Local LLM engine — Llama, Mistral, Qwen, Gemma, Phi |
| **Open WebUI + Ollama** | 3000 | Yes | ChatGPT-like UI bundled with Ollama backend |
| **LocalAI** | 8080 | Yes | Drop-in OpenAI API replacement |
| **vLLM** | 8000 | Yes | High-throughput serving with PagedAttention |
| **Text Gen WebUI** | 7860 | Yes | Comprehensive LLM interface (oobabooga) |
| **LiteLLM Proxy** | 4000 | No | Unified API gateway for 100+ LLM providers |
### Image & Video Generation
| Template | Port | GPU | Description |
|---|---|---|---|
| **ComfyUI** | 8188 | Yes | Node-based Stable Diffusion workflow engine |
| **Stable Diffusion WebUI** | 7860 | Yes | AUTOMATIC1111 interface for image generation |
### AI Agents & Workflows
| Template | Port | GPU | Description |
|---|---|---|---|
| **Langflow** | 7860 | No | Visual multi-agent and RAG pipeline builder |
| **Flowise** | 3000 | No | Drag-and-drop LLM chatflow builder |
| **n8n (AI-Enabled)** | 5678 | No | Workflow automation with AI agent nodes |
### Vector Databases
| Template | Port | GPU | Description |
|---|---|---|---|
| **Qdrant** | 6333 | No | High-performance vector similarity search |
| **ChromaDB** | 8000 | No | AI-native embedding database |
| **Weaviate** | 8080 | No | Vector DB with built-in vectorization modules |
### ML Operations
| Template | Port | GPU | Description |
|---|---|---|---|
| **MLflow** | 5000 | No | Experiment tracking and model registry |
| **Label Studio** | 8080 | No | Multi-type data labeling platform |
| **Jupyter (GPU/PyTorch)** | 8888 | Yes | GPU-accelerated notebooks |
### Speech & Audio
| Template | Port | GPU | Description |
|---|---|---|---|
| **Whisper ASR** | 9000 | Yes | Speech-to-text API server |
## GPU Requirements
Templates marked **GPU: Yes** require:
- NVIDIA GPU with CUDA support
- [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) installed
- Docker configured with `nvidia` runtime
For AMD GPUs (ROCm), modify the `deploy.resources` section to use ROCm-compatible images and remove the NVIDIA device reservation.
## File Structure
```
ai-templates/
├── portainer-ai-templates.json # Portainer v3 compatible template definition
├── README.md # This file
├── docs/
│ └── AI_GAP_ANALYSIS.md # Analysis of official templates gap
└── stacks/
├── ollama/
│ └── docker-compose.yml
├── open-webui/
│ └── docker-compose.yml
├── localai/
│ └── docker-compose.yml
├── vllm/
│ └── docker-compose.yml
├── text-generation-webui/
│ └── docker-compose.yml
├── litellm/
│ └── docker-compose.yml
├── comfyui/
│ └── docker-compose.yml
├── stable-diffusion-webui/
│ └── docker-compose.yml
├── langflow/
│ └── docker-compose.yml
├── flowise/
│ └── docker-compose.yml
├── n8n-ai/
│ └── docker-compose.yml
├── qdrant/
│ └── docker-compose.yml
├── chromadb/
│ └── docker-compose.yml
├── weaviate/
│ └── docker-compose.yml
├── mlflow/
│ └── docker-compose.yml
├── label-studio/
│ └── docker-compose.yml
├── jupyter-gpu/
│ └── docker-compose.yml
└── whisper/
└── docker-compose.yml
```
## License
These templates reference publicly available Docker images from their respective maintainers. Each tool has its own license — refer to the individual project documentation.
---
*Generated March 2026 — Portainer AI Templates by Adolfo De Lorenzo*