selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Olah logo

Self-host Olah

v0.5.4

Self-hosted lightweight Hugging Face mirror service

BetaOpen SourceMIT
Updated2 weeks ago
LanguagePython
Setup difficultyEasy
Stars
295
Port
8090 (HTTP mirror service)
Docker
xiahan2019/olah
Install with Docker

What is Olah?

Olah is a self-hosted lightweight Hugging Face mirror service that implements mirroring at the file block level rather than just reverse proxying. It caches files in chunks as users download them, so subsequent downloads are served from the local cache. It supports models, datasets, and spaces mirroring with configurable access control and cache policies including LRU, FIFO, and size-based eviction. Can be installed via pip, from source, or Docker. Runs on port 8090 by default and clients connect by setting HF_ENDPOINT to the mirror URL.

Should you self-host Olah?

Olah scores 43/100 on selfhost.directory (how scoring works) and ranks #91 of 125 in AI. It has 295 GitHub stars.

It shipped 7 stable releases in the past year. The latest, v0.5.4, came out on 7 October 2026. New versions land roughly every 6 days.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is ComfyUI (93/100, 143 714 stars). It scores higher overall, so compare the two before you pick. See Olah vs ComfyUI side by side.

Features

  • Access control with wildcards and regex
  • Cache control policies
  • Cache size limit with eviction strategies
  • Concurrent worker support
  • Datasets mirror
  • HTTPS Support
  • Hugging Face data cache
  • Local git mirror serving
  • Metadata caching with TTL
  • Models mirror
  • Offline Mode
  • Spaces mirror
  • Stale-if-error fallback
  • Xet pass-through

Olah README

How to install Olah

Install Olah with Docker

Environment variables
HF_ENDPOINT=http://localhost:8090

docker pull xiahan2019/olah:latest docker run -d --name olah -p 8090:8090 -v olah-repos:/data/repos xiahan2019/olah:latest --host 0.0.0.0

Multi-arch image (linux/amd64, linux/arm64). Use --host 0.0.0.0 to listen on all interfaces.

How to configure Olah

  • accessibility.cacheallow allDetermines if the repository will be cached

    Determines if the repository will be cached

  • accessibility.proxyallow allDetermines if the repository can be accessed through a proxy

    Determines if the repository can be accessed through a proxy

  • cache-clean-strategyLRUCache cleaning strategy

    Cache cleaning strategy

    values: LRU, FIFO, LARGE_FIRST

  • cache-size-limitCache size limit (e.g., 100G, 500GB, 2TB)

    Cache size limit (e.g., 100G, 500GB, 2TB)

  • hf-lfs-netloccdn-lfs.huggingface.coNetwork location for Hugging Face official site's LFS files

    Network location for Hugging Face official site's LFS files

  • hf-netlochuggingface.coNetwork location of the Hugging Face official site

    Network location of the Hugging Face official site

  • hf-schemehttpsNetwork protocol for the Hugging Face official site

    Network protocol for the Hugging Face official site

  • hostlocalhostSets the host address that Olah listens to

    Sets the host address that Olah listens to

  • metadata-cache-ttl600Seconds a cached repo/revision metadata response is reused before revalidating against Hugging Face

    Seconds a cached repo/revision metadata response is reused before revalidating against Hugging Face

  • metadata-stale-if-error86400Seconds a caller's last confirmed access to a repository may still be used when Hugging Face is rate-limiting or unavailable

    Seconds a caller's last confirmed access to a repository may still be used when Hugging Face is rate-limiting or unavailable

  • mirror-lfs-netloclocalhost:8090Network location for Olah mirror site's LFS

    Network location for Olah mirror site's LFS

  • mirror-netloclocalhost:8090Network location of the Olah mirror site

    Network location of the Olah mirror site

  • mirror-schemehttpNetwork protocol for the Olah mirror site

    Network protocol for the Olah mirror site

  • mirrors-path[./mirrors_dir]Additional mirror file directories

    Additional mirror file directories

  • offlinefalseWhether the Olah mirror site enters offline mode

    Whether the Olah mirror site enters offline mode

    values: true, false

  • port8090Sets the port that Olah listens to

    Sets the port that Olah listens to

  • repos-path./reposDirectory for storing cached data

    Directory for storing cached data

  • ssl-certFile path for SSL certificate when enabling HTTPS

    File path for SSL certificate when enabling HTTPS

  • ssl-keyFile path for SSL key when enabling HTTPS

    File path for SSL key when enabling HTTPS

Olah releases & version history

More in Proxy

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…