Filestash
Modern web client for cloud storage.
Overview
Filestash is a modern, web-based file manager that serves as a universal interface for cloud storage services and file systems. Originally developed as an open-source alternative to traditional file management solutions, Filestash bridges the gap between multiple storage backends through a single, intuitive web interface. The application supports an extensive range of storage protocols including S3-compatible storage, FTP/SFTP servers, WebDAV, and popular cloud services like Dropbox and Google Drive. This Docker deployment runs Filestash as a standalone web application, providing organizations with a self-hosted file management portal that can connect to multiple storage backends simultaneously. The containerized setup isolates the application while maintaining persistent configuration data, making it ideal for teams that need centralized access to distributed file storage systems without vendor lock-in. This configuration is particularly valuable for organizations seeking to consolidate file access across hybrid cloud environments, provide secure external file sharing, or replace expensive commercial file management platforms with a customizable open-source solution.
Key Features
- Multi-protocol storage backend support including S3, FTP, SFTP, WebDAV, Git repositories, and major cloud providers
- Built-in file preview capabilities for documents, images, videos, and code files without downloading
- Integrated text and code editor with syntax highlighting for direct file modification
- Plugin ecosystem supporting office document viewing, video streaming, and PDF rendering
- White-label customization options for branding, themes, and user interface modifications
- Administrative dashboard for backend configuration, user management, and system monitoring
- File sharing and collaboration features with customizable access permissions
- Mobile-responsive interface optimized for cross-device file management
Common Use Cases
- 1Centralized file management portal for organizations using multiple cloud storage providers
- 2Secure file sharing platform for teams working with sensitive documents across different storage systems
- 3Self-hosted alternative to commercial file management services for privacy-conscious organizations
- 4Development team collaboration hub connecting to Git repositories and project file storage
- 5Remote access gateway for on-premises file servers through SFTP or WebDAV protocols
- 6Client file portal for service providers needing branded file sharing with external users
- 7Hybrid cloud file management for organizations migrating between storage providers
Prerequisites
- Docker and Docker Compose installed on the host system
- Minimum 512MB RAM available for the Filestash container
- Port 8334 available and not conflicting with other services
- Access credentials for target storage backends (S3 keys, FTP credentials, API tokens)
- Basic understanding of storage protocols and authentication methods for backend configuration
- SSL certificate and reverse proxy setup recommended for production deployments with external access
For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms
docker-compose.yml
docker-compose.yml
1services: 2 filestash: 3 image: machines/filestash:latest4 container_name: filestash5 restart: unless-stopped6 volumes: 7 - filestash_data:/app/data/state8 ports: 9 - "8334:8334"1011volumes: 12 filestash_data: .env Template
.env
1# Configure backends in admin panelUsage Notes
- 1Docs: https://www.filestash.app/docs/
- 2Access at http://localhost:8334 - admin config at /admin
- 3Backends: S3, FTP, SFTP, WebDAV, Dropbox, Google Drive, Git
- 4File preview, editor, image viewer built-in
- 5Plugins: office viewer, video player, PDF viewer
- 6White-label ready - custom branding support
Quick Start
terminal
1# 1. Create the compose file2cat > docker-compose.yml << 'EOF'3services:4 filestash:5 image: machines/filestash:latest6 container_name: filestash7 restart: unless-stopped8 volumes:9 - filestash_data:/app/data/state10 ports:11 - "8334:8334"1213volumes:14 filestash_data:15EOF1617# 2. Create the .env file18cat > .env << 'EOF'19# Configure backends in admin panel20EOF2122# 3. Start the services23docker compose up -d2425# 4. View logs26docker compose logs -fOne-Liner
Run this command to download and set up the recipe in one step:
terminal
1curl -fsSL https://docker.recipes/api/recipes/filestash/run | bashTroubleshooting
- Backend connection timeout errors: Verify firewall rules allow outbound connections to storage services and check credential validity
- File upload failures on large files: Increase Docker container memory limits and check backend storage quotas
- Admin interface not accessible at /admin: Clear browser cache and ensure container has fully started by checking logs
- Authentication failures with cloud providers: Regenerate API tokens and verify OAuth application permissions are properly configured
- Plugin loading errors for office documents: Restart container to reload plugin configurations and check plugin compatibility versions
- Performance issues with large directories: Enable directory caching in admin settings and consider backend-specific optimizations
Community Notes
Loading...
Loading notes...
Download Recipe Kit
Get all files in a ready-to-deploy package
Includes docker-compose.yml, .env template, README, and license
Ad Space
Shortcuts: C CopyF FavoriteD Download