A front door for storage you already own
Filestash is a presentation and integration layer, not another place that insists on owning every file. Connect SFTP, S3, FTP, SMB, WebDAV, NFS, Git, or another backend, and users get one browser interface for browsing, uploading, previewing, editing, and sharing.
Filestash can also expose APIs, run file-triggered workflows, add search and OCR, and open specialist formats. Its viewers cover raw photography, GIS, engineering data, biomedical files, design formats, 3D models, and embroidery. An MCP plugin lets compatible AI agents work with files on configured remote storage.
This breadth comes from a strong architectural opinion: almost every debatable behavior belongs in a plugin. Storage, authentication, authorization, search, thumbnails, middleware, viewers, and frontend changes have extension points. For a company with a peculiar storage system or identity model, that can be the difference between adapting a product and replacing it. For a small self-hoster, it can make the product feel larger than the original file-browsing job.
The first container is easier than the finished service
The official guide asks for Docker and Compose, starts the downloaded stack, then sends the administrator to port 8334 to set a password and choose storage backends. Filestash says one CPU core and 128 MB of memory can be enough when the instance is not doing heavy video transcoding or serving thousands of users.
Configuration becomes more consequential once real users arrive. A backend can accept credentials directly from each user, or Filestash can sit behind a separate authentication source and map identity attributes to connection details and paths. Those mappings use Go templates. This can create per-user roots or group-driven destinations, but a typo can become an access problem. Test multiple identities against every allowed and forbidden path.
The base production build expects a reverse proxy to terminate TLS. Office viewing and editing add a Collabora container plus another layer of URLs and browser-origin rules. One current issue reports that a localhost Compose test could not open DOCX files: a same-origin workaround exposed a frontend message-parsing problem, while a two-origin arrangement needed proper HTTPS and hostnames. This shows why the two-container example is not finished production wiring.
The Compose file in the repository uses the latest Filestash image and sets canary mode to true. That is convenient for a demo and uncomfortable for controlled production. Pin tested artifacts, persist /app/data/state, back it up, and rehearse rollback before an update changes a plugin or viewer.
Plugins are the advantage and the buying trap
The plugin inventory is Filestash's biggest differentiator. A team can install only the storage and file applications it needs, or implement the published interfaces when an internal system has no connector. The storage interface is small: list, inspect, read, create, delete, move, save, and touch, plus connection and login-form concerns.
The public and commercial boundary needs careful reading. The installation guide lists OpenID, SAML, and LDAP as enterprise SSO plugins. It also says the enterprise build provides rules that restrict actions such as upload, move, and delete based on identity attributes. Buyers who need centralized sign-on and detailed role controls should budget for the commercial offering or confirm that another public plugin meets the requirement. The AGPL license also deserves review before modifying and serving the application over a network.
Gateway claims deserve even more caution. The README says storage can be exposed through SFTP, S3, FTP, WebDAV, MCP, and AS2 gateways. An open issue from April 2026 says the documented SFTP gateway and named plugin were absent from both the repository and Docker image. Other users repeated the concern, and the maintainer did not resolve where the implementation lived. Do not choose Filestash for a particular outbound protocol until you can run that gateway in the exact edition offered to you.
The MCP component is easier to verify in the public tree. Its guide describes an interface through which an agent can act on storage already configured in Filestash. That widens the security boundary. Give agents a narrow storage root and minimal write permissions rather than exposing a general administrative connection.
Healthy code, mixed support signals
Filestash dates to 2017, and the repository was pushed on August 17, 2026. Commits that month touched cryptographic nonce handling, while July work included NFS metadata, search flags, and delta downloads. Issues and pull requests were also active in August. The repository's open count of 122 combines both types, including feature requests and old contributions, so it is not a bug total.
The activity indicates a maintained project, but the issue experience is uneven. A current local-authentication report documents a confusing password mapping that caused invalid-account errors. Another detailed report identifies video transcoding failures when source builds link against ffmpeg 8. The gateway thread has waited months for product clarification. Commercial users can buy support, while individuals are directed to IRC, so unpaid evaluators should expect to investigate.
Filestash is at its best when the requirement is precise: put one attractive web interface over storage that must stay where it is. It is less convincing as an assumption-free replacement for Nextcloud or a protocol gateway sold from a feature checklist. Prototype with your real backend, identity provider, office documents, and permission cases. If those pass and the needed plugins are actually in your edition, the project offers rare file-handling flexibility without demanding a storage migration.