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.

ferrishare logo

Self-host ferrishare

v1.1.3

End-to-end encrypted file sharing for self-hosting

ReleaseOpen SourceMIT
Docker ComposeCompose file & guide
docker compose up
Updated9 months ago
LanguageRust
Setup difficultyModerate
Stars
335
Port
3000 (HTTP application port)
Docker
ghcr.io/tobiasmarschner/ferrishare

What is ferrishare?

FerriShare is a Rust-based self-hosted file sharing tool that encrypts files and their names in the browser before they leave the user's machine. The decryption key remains in the URL fragment and never reaches the server. It packages everything — metadata, uploaded files, and configuration — into one container backed by SQLite. Users can set files to auto-expire after an hour, a day, or a week. A password-protected admin dashboard shows overall usage and lets admins delete files early. Built-in rate limiting works on both IPv4 and IPv6 /64 subnets with configurable thresholds. Maximum upload size and total storage quotas are adjustable. Optional privacy-policy and legal-notice pages ship with defaults. Deployment requires a reverse proxy (Traefik, Caddy, or nginx) to serve HTTPS for the Web Crypto API. Pre-built multi-arch images (amd64, arm64, arm/v7) live on GitHub Container Registry. An interactive wizard handles initial configuration. A public demo at ferrishare-demo.tobiasm.dev lets anyone try it with a 15-minute expiry and the admin password 'admin'.

Should you self-host ferrishare?

ferrishare scores 49/100 on selfhost.directory (how scoring works) and ranks #50 of 86 in File Sharing. It has 335 GitHub stars.

It shipped 1 stable release in the past year. The latest, v1.1.3, came out on 6 January 2026.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is MIT-licensed and written mostly in Rust.

Its closest alternative on selfhost.directory is copyparty (82/100, 47 159 stars). It scores higher overall, so compare the two before you pick. See ferrishare vs copyparty side by side.

Features

  • Admin Panel
  • Configurable Limits
  • End-to-end encryption
  • File expiration
  • Privacy Policy and Legal Notice
  • Rate Limiting
  • Single-Container Deployment

ferrishare README

How to install ferrishare

Install ferrishare with Docker Compose

  1. Ensure both Docker and Docker Compose are setup and working on your machine.
  2. Create a folder for the application on your machine and cd into it.
    • For example: mkdir ferrishare; cd ferrishare
  3. Download a copy of the repository's docker-compose.yml into said folder
  4. Download all of the images by invoking docker compose pull
  5. Configuration: Invoke docker compose run --rm -it ferrishare --init
    • This will start FerriShare's interactive configuration wizard that will guide you through all options and create all necessary files in the ./data-subdirectory.
  6. Launch: Invoke docker compose up to launch the app in the foreground
    • Alternatively: Use docker compose up -d to run the containers in the background
  7. Test it out: Use your favorite web browser to navigate to localhost:3000

Requires a reverse proxy (Traefik, Caddy, nginx) for HTTPS. The example docker-compose.yml includes Traefik.

ferrishare releases & version history

More in File Storage

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…