Quick start
Teldrive
Getting Started

Quick start

Run Teldrive with PostgreSQL and the official container image.

Requires Docker or Podman and a Telegram account.

1. Create a directory

mkdir -p ~/teldrive
cd ~/teldrive

2. Generate compose.yaml

Teldrive includes public Telegram application credentials; no api_id or api_hash is required.

Teldrive setup generator

Generates independent 256-bit secrets with the browser Web Crypto CSPRNG and encodes them as URL-safe Base64. Nothing is sent to a server.

Database password · 256-bit
Generating…
Signing key · 256-bit
Generating…
Data key · 256-bit
Generating…
File encryption key · 256-bit
Generating…
Generating secure values…
Back up the generated data and encryption keys. Losing the data key prevents Teldrive from decrypting stored credentials. Losing a file-encryption key makes files encrypted with that key unrecoverable.

Copy the Compose output to compose.yaml.

Back up security.data-key and every content-encryption key. Losing them can make protected data unrecoverable.

3. Start Teldrive

Docker:

docker compose up -d
docker compose logs -f teldrive

Podman:

podman compose up -d
podman compose logs -f teldrive

Teldrive applies required database migrations during startup.

4. Open the UI

http://127.0.0.1:8080

The generated Compose file only publishes Teldrive on host loopback. Use a reverse proxy with HTTPS for remote access.

Follow First login and verification to test storage and persistence.

5. Validate configuration

docker compose run --rm teldrive check

check validates configuration, database access, and required initialization without keeping the server running.

Next