- Updated docker-compose.yml to allow disabling embedded Ollama via environment variable. - Refactored Dockerfile and Dockerfile.dev for improved dependency management and installation process. - Enhanced FastAPI migration scripts to handle orphaned Alembic revisions and added new database migration logic. - Improved error handling in background tasks and Codex authentication endpoints. - Added support for font file uploads with better validation and extraction of font names. - Introduced new image search functionality with support for Pexels and Pixabay APIs.
167 lines
5.7 KiB
YAML
167 lines
5.7 KiB
YAML
services:
|
|
production:
|
|
# image: ghcr.io/presenton/presenton:latest
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
ports:
|
|
# You can replace 5000 with any other port number of your choice to run Presenton on a different port number.
|
|
- "5000:80"
|
|
# Required for Codex OAuth callback (OpenAI redirects browser directly to localhost:1455)
|
|
- "1455:1455"
|
|
volumes:
|
|
- ./app_data:/app_data
|
|
environment:
|
|
- MIGRATE_DATABASE_ON_STARTUP=true
|
|
- CAN_CHANGE_KEYS=${CAN_CHANGE_KEYS}
|
|
- LLM=${LLM}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- OPENAI_MODEL=${OPENAI_MODEL}
|
|
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
|
|
- GOOGLE_MODEL=${GOOGLE_MODEL}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
|
- ANTHROPIC_MODEL=${ANTHROPIC_MODEL}
|
|
- OLLAMA_URL=${OLLAMA_URL}
|
|
- OLLAMA_MODEL=${OLLAMA_MODEL}
|
|
- CUSTOM_LLM_URL=${CUSTOM_LLM_URL}
|
|
- CUSTOM_LLM_API_KEY=${CUSTOM_LLM_API_KEY}
|
|
- CUSTOM_MODEL=${CUSTOM_MODEL}
|
|
- CODEX_MODEL=${CODEX_MODEL}
|
|
- PEXELS_API_KEY=${PEXELS_API_KEY}
|
|
- EXTENDED_REASONING=${EXTENDED_REASONING}
|
|
- TOOL_CALLS=${TOOL_CALLS}
|
|
- DISABLE_THINKING=${DISABLE_THINKING}
|
|
- WEB_GROUNDING=${WEB_GROUNDING}
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- DISABLE_ANONYMOUS_TRACKING=${DISABLE_ANONYMOUS_TRACKING}
|
|
- COMFYUI_URL=${COMFYUI_URL}
|
|
- COMFYUI_WORKFLOW=${COMFYUI_WORKFLOW}
|
|
|
|
production-gpu:
|
|
# image: ghcr.io/presenton/presenton:latest
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: 1
|
|
capabilities: [gpu]
|
|
ports:
|
|
# You can replace 5000 with any other port number of your choice to run Presenton on a different port number.
|
|
- "5000:80"
|
|
# Required for Codex OAuth callback (OpenAI redirects browser directly to localhost:1455)
|
|
- "1455:1455"
|
|
volumes:
|
|
- ./app_data:/app_data
|
|
environment:
|
|
- MIGRATE_DATABASE_ON_STARTUP=true
|
|
- CAN_CHANGE_KEYS=${CAN_CHANGE_KEYS}
|
|
- LLM=${LLM}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- OPENAI_MODEL=${OPENAI_MODEL}
|
|
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
|
|
- GOOGLE_MODEL=${GOOGLE_MODEL}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
|
- ANTHROPIC_MODEL=${ANTHROPIC_MODEL}
|
|
- OLLAMA_URL=${OLLAMA_URL}
|
|
- OLLAMA_MODEL=${OLLAMA_MODEL}
|
|
- CUSTOM_LLM_URL=${CUSTOM_LLM_URL}
|
|
- CUSTOM_LLM_API_KEY=${CUSTOM_LLM_API_KEY}
|
|
- CUSTOM_MODEL=${CUSTOM_MODEL}
|
|
- CODEX_MODEL=${CODEX_MODEL}
|
|
- PEXELS_API_KEY=${PEXELS_API_KEY}
|
|
- EXTENDED_REASONING=${EXTENDED_REASONING}
|
|
- TOOL_CALLS=${TOOL_CALLS}
|
|
- DISABLE_THINKING=${DISABLE_THINKING}
|
|
- WEB_GROUNDING=${WEB_GROUNDING}
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- DISABLE_ANONYMOUS_TRACKING=${DISABLE_ANONYMOUS_TRACKING}
|
|
- COMFYUI_URL=${COMFYUI_URL}
|
|
- COMFYUI_WORKFLOW=${COMFYUI_WORKFLOW}
|
|
|
|
development:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.dev
|
|
ports:
|
|
- "5000:80"
|
|
# Required for Codex OAuth callback (OpenAI redirects browser directly to localhost:1455)
|
|
- "1455:1455"
|
|
volumes:
|
|
- .:/app
|
|
- ./app_data:/app_data
|
|
environment:
|
|
# Dockerfile.dev does not install ollama; use a host daemon via OLLAMA_URL or omit.
|
|
- START_EMBEDDED_OLLAMA=false
|
|
- MIGRATE_DATABASE_ON_STARTUP=true
|
|
- CAN_CHANGE_KEYS=${CAN_CHANGE_KEYS}
|
|
- LLM=${LLM}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- OPENAI_MODEL=${OPENAI_MODEL}
|
|
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
|
|
- GOOGLE_MODEL=${GOOGLE_MODEL}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
|
- ANTHROPIC_MODEL=${ANTHROPIC_MODEL}
|
|
- OLLAMA_URL=${OLLAMA_URL}
|
|
- OLLAMA_MODEL=${OLLAMA_MODEL}
|
|
- CUSTOM_LLM_URL=${CUSTOM_LLM_URL}
|
|
- CUSTOM_LLM_API_KEY=${CUSTOM_LLM_API_KEY}
|
|
- CUSTOM_MODEL=${CUSTOM_MODEL}
|
|
- CODEX_MODEL=${CODEX_MODEL}
|
|
- PEXELS_API_KEY=${PEXELS_API_KEY}
|
|
- EXTENDED_REASONING=${EXTENDED_REASONING}
|
|
- TOOL_CALLS=${TOOL_CALLS}
|
|
- DISABLE_THINKING=${DISABLE_THINKING}
|
|
- WEB_GROUNDING=${WEB_GROUNDING}
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- DISABLE_ANONYMOUS_TRACKING=${DISABLE_ANONYMOUS_TRACKING}
|
|
- COMFYUI_URL=${COMFYUI_URL}
|
|
- COMFYUI_WORKFLOW=${COMFYUI_WORKFLOW}
|
|
|
|
development-gpu:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.dev
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: 1
|
|
capabilities: [gpu]
|
|
ports:
|
|
- "5000:80"
|
|
# Required for Codex OAuth callback (OpenAI redirects browser directly to localhost:1455)
|
|
- "1455:1455"
|
|
volumes:
|
|
- .:/app
|
|
- ./app_data:/app_data
|
|
environment:
|
|
- START_EMBEDDED_OLLAMA=false
|
|
- MIGRATE_DATABASE_ON_STARTUP=true
|
|
- CAN_CHANGE_KEYS=${CAN_CHANGE_KEYS}
|
|
- LLM=${LLM}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- OPENAI_MODEL=${OPENAI_MODEL}
|
|
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
|
|
- GOOGLE_MODEL=${GOOGLE_MODEL}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
|
- ANTHROPIC_MODEL=${ANTHROPIC_MODEL}
|
|
- OLLAMA_URL=${OLLAMA_URL}
|
|
- OLLAMA_MODEL=${OLLAMA_MODEL}
|
|
- CUSTOM_LLM_URL=${CUSTOM_LLM_URL}
|
|
- CUSTOM_LLM_API_KEY=${CUSTOM_LLM_API_KEY}
|
|
- CUSTOM_MODEL=${CUSTOM_MODEL}
|
|
- CODEX_MODEL=${CODEX_MODEL}
|
|
- PEXELS_API_KEY=${PEXELS_API_KEY}
|
|
- EXTENDED_REASONING=${EXTENDED_REASONING}
|
|
- TOOL_CALLS=${TOOL_CALLS}
|
|
- DISABLE_THINKING=${DISABLE_THINKING}
|
|
- WEB_GROUNDING=${WEB_GROUNDING}
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- DISABLE_ANONYMOUS_TRACKING=${DISABLE_ANONYMOUS_TRACKING}
|
|
- COMFYUI_URL=${COMFYUI_URL}
|
|
- COMFYUI_WORKFLOW=${COMFYUI_WORKFLOW}
|