f6714f9392c8df610a97654718d86ae15d77de43
- ARCHITECTURE.md: comprehensive pipeline description (copied from Gitea wiki) - test_pipeline.py: tests all services, memory, async timing, and recall Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Agap Home Server
Docker Compose configurations for the Agap self-hosted home server infrastructure.
Services
- Immich (
immich-app/) — Photo management and backup (port 2283) - Gitea (
gitea/) — Self-hosted Git server with web UI (port 3000, SSH 222) - Open WebUI (
openai/) — AI chat interface with Ollama, GPU-accelerated (port 3125)
Quick Start
Start Immich (main service)
docker compose up -d
Start Gitea (from gitea/ directory)
cd gitea
docker compose up -d
Start Open WebUI (from openai/ directory)
cd openai
docker compose up -d
Configuration
Environment variables are in the root .env file for Immich:
UPLOAD_LOCATION— where photo originals are storedTHUMB_LOCATION— thumbnail cache directoryENCODED_VIDEO_LOCATION— transcoded video cacheDB_DATA_LOCATION— Postgres database directoryDB_PASSWORD— Postgres password
Storage
Media is stored on:
/mnt/media/upload— Immich originals/mnt/ssd1/media/— Immich thumbnails, encoded video, and Postgres database/mnt/misc/gitea— Gitea repositories and data
GPU Support
For GPU acceleration (Open WebUI/Ollama, Immich ML):
- Install NVIDIA Docker runtime:
sudo ./nvidia-docker-install.sh - Install CUDA toolkit:
./install-cuda.sh
Documentation
See CLAUDE.md for detailed developer instructions and Gitea wiki integration guidelines.
See the Gitea wiki for infrastructure documentation (storage, network, services setup).
Description
Languages
Shell
100%