OVHserver/opt/02-core/presenton
SamoilenkoVadym c5401eb33c fix: улучшения скриптов мониторинга и backup
Исправлены критические проблемы и добавлены улучшения:

1. **server-full-report.sh**:
   - Улучшены Slack уведомления с детектором проблем
   - Добавлены автоматические рекомендации по исправлению
   - Добавлена цветная индикация статуса (good/warning/danger)
   - Улучшена структура уведомлений с приоритетами

2. **generate-summary.sh**:
   - Исправлено дублирование контента в отчетах
   - Удален незакрытый heredoc, вызывавший проблемы
   - Добавлены правильные разделители секций

3. **backup-full-enhanced.sh** v2.0.0 → v2.1.0:
   - Добавлен полный auto-discovery для всех типов БД
   - Добавлена поддержка MongoDB backup
   - Улучшена детекция PostgreSQL/MariaDB через образы
   - Автоматическое определение пользователей БД
   - Удален hardcoded список баз данных

4. **health-check-alerting.sh**:
   - Добавлена проверка наличия 'bc' перед использованием
   - Добавлен fallback на integer comparison без bc
   - Улучшена надежность проверки R2 storage

Slack уведомления теперь включают:
- Автоматическое обнаружение проблем (unhealthy, down sites, high disk)
- Конкретные команды для исправления проблем
- SSH инструкции и ссылки на admin tools
- Цветовую индикацию серьезности (danger/warning/good)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 10:47:20 +00:00
..
app_data fix: улучшения скриптов мониторинга и backup 2025-11-06 10:47:20 +00:00
.env.example docs: update Presenton config with Google Gemini Flash for images 2025-11-06 10:01:57 +00:00
docker-compose.yml chore: reset Presenton to clean installation 2025-11-06 10:13:20 +00:00
litellm-config.yaml.example feat: fix Presenton Azure OpenAI integration and add project documentation 2025-11-06 09:19:27 +00:00
README.md feat: add Presenton AI presentation generator with Azure OpenAI integration 2025-11-05 23:03:18 +00:00

Presenton - AI Presentation Generator

AI-powered presentation generator with Azure OpenAI integration.

Overview

Presenton is an open-source AI presentation generator that creates professional presentations from prompts, documents, or existing PowerPoint files. Privacy-focused alternative to Gamma, Beautiful.ai, and Decktopus.

Features

  • AI-generated presentations from text prompts
  • Document upload support (PDF, DOCX, PPTX)
  • Custom template creation (HTML + Tailwind CSS)
  • Export to PPTX and PDF formats
  • Model Context Protocol (MCP) server support
  • Local data processing (privacy-focused)

Architecture

presenton/
├── docker-compose.yml    # Container configuration with Traefik
├── .env                  # Azure OpenAI credentials
├── README.md            # This file
└── app_data/            # Persistent storage (auto-created)
    ├── presentations/   # Generated presentations
    ├── templates/       # Custom templates
    └── uploads/         # Uploaded documents

Technology Stack

Frontend:

  • Next.js (React)
  • Node.js 20
  • Port: 3000 (internal)

Backend:

  • FastAPI (Python 3.11)
  • Port: 8000 (internal)

Additional Services:

  • MCP Server (Port: 8001)
  • Nginx (Port: 80 - exposed via Traefik)

AI Integration:

  • Azure OpenAI GPT-5 (text generation)
  • Azure OpenAI DALL-E 3 (image generation)

Configuration

Environment Variables (.env)

LLM Configuration:

  • LLM=custom - Use custom Azure OpenAI endpoint
  • CUSTOM_LLM_URL - Azure OpenAI chat completions URL
  • CUSTOM_LLM_API_KEY - Azure API key
  • CUSTOM_MODEL=gpt-5 - Model name
  • TOOL_CALLS=true - Enable function calling

Image Generation:

  • IMAGE_PROVIDER=dall-e-3 - Use DALL-E 3 for images
  • OPENAI_API_KEY - Azure DALL-E API key

Advanced Features:

  • CAN_CHANGE_KEYS=true - Allow API key changes in UI
  • EXTENDED_REASONING=true - Enable for GPT-5
  • DISABLE_ANONYMOUS_TELEMETRY=true - Privacy

Traefik Integration

Presenton is configured to work with Traefik reverse proxy:

  • Domain: presentation.ai-impress.com
  • SSL: Automatic via Let's Encrypt (Cloudflare DNS)
  • Network: traefik-public

Usage

Start the service

cd /opt/02-core/presenton
docker compose up -d

View logs

docker logs presenton -f

Stop the service

docker compose down

Restart the service

docker compose restart

Update to latest version

docker compose pull
docker compose up -d

API Access

API Documentation:

Generate Presentation Endpoint:

POST /api/v1/ppt/presentation/generate

Example Request:

curl -X POST "https://presentation.ai-impress.com/api/v1/ppt/presentation/generate" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Create a presentation about AI trends in 2025",
    "slide_count": 10,
    "language": "en",
    "tone": "professional",
    "export_format": "pptx"
  }'

Troubleshooting

Container won't start

Check logs for errors:

docker logs presenton --tail 100

Check if Traefik network exists:

docker network ls | grep traefik-public

Azure OpenAI connection issues

Verify environment variables:

docker exec presenton env | grep -E "LLM|CUSTOM|OPENAI"

Test Azure OpenAI endpoint:

curl -X POST "https://aipmress-ai-n8n.cognitiveservices.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2025-01-01-preview" \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{"messages":[{"role":"user","content":"Hello"}]}'

DALL-E image generation not working

Azure DALL-E uses a different API format than OpenAI. If images fail to generate:

  1. Check logs: docker logs presenton | grep -i "dall-e"
  2. Verify DALL-E endpoint is accessible
  3. Consider using Pexels as alternative (free stock photos)

To switch to Pexels:

# Edit .env
IMAGE_PROVIDER=pexels
PEXELS_API_KEY=your_pexels_key  # Get free at https://www.pexels.com/api/

Performance issues

Increase container resources in docker-compose.yml:

deploy:
  resources:
    limits:
      cpus: '4'
      memory: 4G

Maintenance

Backup presentations

# Create backup
tar -czf presenton-backup-$(date +%Y%m%d).tar.gz app_data/

# Restore from backup
tar -xzf presenton-backup-YYYYMMDD.tar.gz

Clear cache and temp files

docker exec presenton sh -c "rm -rf /tmp/*"

Monitor disk usage

du -sh app_data/

Security

  • API keys stored in .env (excluded from Git)
  • SSL/HTTPS via Traefik with Let's Encrypt
  • Local data processing (no cloud uploads)
  • API key changes allowed via UI (can be locked with CAN_CHANGE_KEYS=false)

Resources

  • CPU: 1-2 cores (recommended)
  • RAM: 1-2 GB
  • Disk: ~1 GB (image) + presentations storage

Support

For issues specific to this deployment:

  • Check container logs: docker logs presenton
  • Review Traefik logs: docker logs traefik
  • Contact: AI-Impress Infrastructure Team

Last Updated: 2025-11-05 Version: latest Deployment: Production