Deployment
May 15, 2026 · View on GitHub
Components
eddrit requires two components:
- the app itself
- a valkey instance (used to store OAuth tokens)
A proxy is also recommended for public instances, or if your hosting provider’s IP addresses are blocked by Reddit. A common solution is to use Cloudflare WARP as a proxy, as it has a proxy mode. You then need to configure the app to use it (see the configuration section below).
Installation
You can run the app through Docker, or directly if you know how to deploy a Python ASGI application.
Option 1: Docker (recommended)
The image is available from:
- Docker Hub as
corentingarcia/eddrit - ghcr.io as
ghcr.io/corenting/eddrit
The following tags are available:
latestfor the latest stable tagged release (recommended)devfor the latest development version (the latest commit on the master branch)- Version tags (like
0.1.1,0.1.2) for specific versions
ℹ️ Note: an example docker-compose.yml file is available here.
The following architectures are supported:
linux/amd64linux/arm64linux/arm/v7
Option 2: without Docker
If you know how to deploy a Python ASGI application, you can deploy it directly without Docker.
For example, with uvicorn:
- Make sure Python >= 3.14 is installed, as it is the minimum version supported by eddrit.
- Install Poetry, which is used to manage the project’s dependencies.
- Download or clone the repository and run
poetry install --only mainto install the application. - Run the app through uvicorn, for example:
poetry run uvicorn eddrit.app:app
Configuration
The application is configured through environment variables. If a .env file is present, it will also be read.
Mandatory configuration:
VALKEY_URL: the URL of your valkey instance. Example:valkeys://my_user:my_password@example.com:15345/1FORWARDED_ALLOW_IPS(required when using a reverse proxy such as nginx or traefik in front of the app): a comma-separated list of IP addresses of the proxy, trusted for determining the correct public URL of the instance.- Set to
*to disable IP checking. This is useful when you don’t know the proxy’s IP address in advance, but this is dangerous unless you have ensured through other means (e.g. a private network) that only your proxy can reach eddrit and not end clients directly. Otherwise, this makes you vulnerable to IP spoofing attacks. - Make sure that your proxy sets the correct
X-Forwarded-For,X-Forwarded-Protoetc. headers.
- Set to
Optional configuration:
DEBUG(default:false): enable starlette debug mode. Should not be needed outside of development.LOG_LEVEL(default:WARNING): only log messages at or above this level.PROXY(default: none): if set, requests to Reddit will be sent through the specified proxy.