apps.header.allAppsCount
Odysseus-AIO
apps.detail.types.app from RealityMolder's Repository
apps.detail.sections.overview
Readme
View on GitHubThis repo has been changed to only include AIO program/image. if you are looking for unraid templates go to: https://github.com/realitymolder/ca-templates
Odysseus AIO
All-in-one master container for Odysseus self-hosted AI workspace. One install deploys the full stack: Odysseus, ChromaDB, SearXNG, and ntfy.
What it does
On first start, the AIO container automatically pulls and provisions:
| Container | Image | Port |
|---|---|---|
odysseus-aio-app |
realitymolder/odysseus:stable |
7000 |
odysseus-aio-chromadb |
chromadb/chroma:latest |
8100 |
odysseus-aio-searxng |
searxng/searxng:latest |
8080 |
odysseus-aio-ntfy |
binwiederhier/ntfy |
8091 |
A built-in management UI at port 9000 handles deploy, stop, update, and status monitoring.
Image
docker.io/realitymolder/odysseus-aio:latest
Quick start
Unraid (CA template)
- Add this repo to CA: Apps → Settings → Template Repositories →
https://github.com/realitymolder/odysseus-aio - Install Odysseus-AIO
- Open
http://<your-ip>:9000for the management UI
Docker Compose
docker compose -f docker-compose.aio.yml up -d
Configuration
Choosing stable vs dev
The AIO pulls the upstream Odysseus image based on the ODYSSEUS_APP_IMAGE environment variable:
| Value | Description |
|---|---|
realitymolder/odysseus:stable |
Latest stable release (default) |
realitymolder/odysseus:dev |
Latest development build |
realitymolder/odysseus:YYYY-MM-DD |
Pin to a specific date |
Set it in the Unraid template or in docker-compose.aio.yml.
Environment variables
| Variable | Default | Description |
|---|---|---|
ODYSSEUS_APP_IMAGE |
realitymolder/odysseus:stable |
Upstream Odysseus image to deploy |
ODYSSEUS_APP_PORT |
7000 |
Host port for Odysseus web UI |
ODYSSEUS_CHROMADB_PORT |
8100 |
Host port for ChromaDB |
ODYSSEUS_SEARXNG_PORT |
8080 |
Host port for SearXNG |
ODYSSEUS_NTFY_PORT |
8091 |
Host port for ntfy |
ODYSSEUS_PUID |
99 |
User ID for file permissions |
ODYSSEUS_PGID |
100 |
Group ID for file permissions |
ODYSSEUS_AUTH_ENABLED |
true |
Enable authentication |
ODYSSEUS_ADMIN_USER |
admin |
Admin username |
ODYSSEUS_ADMIN_PASSWORD |
(auto-generated) | Pre-seed admin password |
ODYSSEUS_LLM_HOST |
Primary LLM server hostname | |
ODYSSEUS_OPENAI_API_KEY |
OpenAI API key | |
ODYSSEUS_OLLAMA_BASE_URL |
Ollama server URL | |
ODYSSEUS_NVIDIA_ENABLED |
false |
Enable NVIDIA GPU passthrough |
ODYSSEUS_DNS_SERVERS |
8.8.8.8,1.1.1.1 |
DNS for managed containers |
Requirements
- Docker socket access (
/var/run/docker.sock) for managing sibling containers - For GPU: NVIDIA Container Toolkit
Related repos
| Repo | Purpose |
|---|---|
| odysseus | Main Odysseus Docker image (stable + dev builds) |
| odysseus-ca-templates | Unraid CA templates for standalone install |
License
apps.marketingCta.appInstallTitle
apps.marketingCta.appInstallDescription
apps.detail.sections.categories
apps.downloadStats.title
apps.detail.sections.related
apps.detail.related.exploreCategories
apps.detail.related.exploreAllapps.detail.sections.links
apps.detail.sections.details
realitymolder/odysseus-aio:latestapps.detail.sections.runtime
- apps.detail.details.webui
http://[IP]:[PORT:9000]- apps.detail.details.network
bridge- apps.detail.details.shell
bash- apps.detail.details.privileged
- false
apps.detail.sections.configuration
AIO management web UI port
- apps.detail.config.target
- 9000
- apps.detail.config.default
- 9000
- apps.detail.config.value
- 9000
AIO master container persistent state
- apps.detail.config.target
- /data
- apps.detail.config.default
- /mnt/user/appdata/odysseus-aio/data
- apps.detail.config.value
- /mnt/user/appdata/odysseus-aio/data
Required for managing sibling containers. Must map to host /var/run/docker.sock
- apps.detail.config.target
- /var/run/docker.sock
- apps.detail.config.default
- /var/run/docker.sock
- apps.detail.config.value
- /var/run/docker.sock
Host path for app data (DB, uploads, user data). Leave blank for Docker volume.
- apps.detail.config.target
- ODYSSEUS_APP_DATA
- apps.detail.config.default
- /mnt/user/appdata/odysseus-aio/data
- apps.detail.config.value
- /mnt/user/appdata/odysseus-aio/data
Host path for SSH keys (Cookbook remote servers). Leave blank for Docker volume.
- apps.detail.config.target
- ODYSSEUS_APP_SSH
- apps.detail.config.default
- /mnt/user/appdata/odysseus-aio/ssh
- apps.detail.config.value
- /mnt/user/appdata/odysseus-aio/ssh
Host path for ChromaDB vector index data. Leave blank for Docker volume.
- apps.detail.config.target
- ODYSSEUS_CHROMADB_DATA
- apps.detail.config.default
- /mnt/user/appdata/odysseus-aio/chromadb
- apps.detail.config.value
- /mnt/user/appdata/odysseus-aio/chromadb
Docker image for the Odysseus app container. Use 'stable' for production or 'dev' for latest development builds.
- apps.detail.config.target
- ODYSSEUS_APP_IMAGE
- apps.detail.config.default
- realitymolder/odysseus:stable
- apps.detail.config.value
- realitymolder/odysseus:stable
Host port for the Odysseus web UI
- apps.detail.config.target
- ODYSSEUS_APP_PORT
- apps.detail.config.default
- 7000
- apps.detail.config.value
- 7000
Host port for ChromaDB
- apps.detail.config.target
- ODYSSEUS_CHROMADB_PORT
- apps.detail.config.default
- 8100
- apps.detail.config.value
- 8100
Host port for SearXNG
- apps.detail.config.target
- ODYSSEUS_SEARXNG_PORT
- apps.detail.config.default
- 8080
- apps.detail.config.value
- 8080
Host port for ntfy
- apps.detail.config.target
- ODYSSEUS_NTFY_PORT
- apps.detail.config.default
- 8091
- apps.detail.config.value
- 8091
Internal port Odysseus listens on (change only if using a custom image)
- apps.detail.config.target
- ODYSSEUS_APP_CONTAINER_PORT
- apps.detail.config.default
- 7000
- apps.detail.config.value
- 7000
Internal port ChromaDB listens on
- apps.detail.config.target
- ODYSSEUS_CHROMADB_CONTAINER_PORT
- apps.detail.config.default
- 8000
- apps.detail.config.value
- 8000
Internal port SearXNG listens on
- apps.detail.config.target
- ODYSSEUS_SEARXNG_CONTAINER_PORT
- apps.detail.config.default
- 8080
- apps.detail.config.value
- 8080
Internal port ntfy listens on
- apps.detail.config.target
- ODYSSEUS_NTFY_CONTAINER_PORT
- apps.detail.config.default
- 80
- apps.detail.config.value
- 80
User ID for file permissions
- apps.detail.config.target
- ODYSSEUS_PUID
- apps.detail.config.default
- 99
- apps.detail.config.value
- 99
Group ID for file permissions
- apps.detail.config.target
- ODYSSEUS_PGID
- apps.detail.config.default
- 100
- apps.detail.config.value
- 100
Enable authentication
- apps.detail.config.target
- ODYSSEUS_AUTH_ENABLED
- apps.detail.config.default
- true
- apps.detail.config.value
- true
First admin account username
- apps.detail.config.target
- ODYSSEUS_ADMIN_USER
- apps.detail.config.default
- admin
- apps.detail.config.value
- admin
Pre-seed admin password (leave blank for auto-generated)
- apps.detail.config.target
- ODYSSEUS_ADMIN_PASSWORD
DNS servers for managed containers (comma-separated)
- apps.detail.config.target
- ODYSSEUS_DNS_SERVERS
- apps.detail.config.default
- 8.8.8.8,1.1.1.1
- apps.detail.config.value
- 8.8.8.8,1.1.1.1
Enable NVIDIA GPU passthrough for the Odysseus app container (requires NVIDIA Container Toolkit)
- apps.detail.config.target
- ODYSSEUS_NVIDIA_ENABLED
- apps.detail.config.default
- false
- apps.detail.config.value
- false
Primary LLM server hostname or IP
- apps.detail.config.target
- ODYSSEUS_LLM_HOST
OpenAI API key
- apps.detail.config.target
- ODYSSEUS_OPENAI_API_KEY
Ollama server URL (e.g. http://host.docker.internal:11434)
- apps.detail.config.target
- ODYSSEUS_OLLAMA_BASE_URL
HuggingFace token for gated models
- apps.detail.config.target
- ODYSSEUS_HF_TOKEN
SearXNG secret key (auto-generated if empty)
- apps.detail.config.target
- ODYSSEUS_SEARXNG_SECRET
Public ntfy URL for push notifications
- apps.detail.config.target
- ODYSSEUS_NTFY_BASE_URL
Brave Search API key
- apps.detail.config.target
- ODYSSEUS_DATA_BRAVE_API_KEY
Google Custom Search API key
- apps.detail.config.target
- ODYSSEUS_GOOGLE_API_KEY
Tavily Search API key
- apps.detail.config.target
- ODYSSEUS_TAVILY_API_KEY
Serper API key
- apps.detail.config.target
- ODYSSEUS_SERPER_API_KEY