Scripts2026年5月14日·1 分钟阅读

Alist — Self-Hosted Multi-Cloud File Listing Gateway

Alist is a self-hosted file listing program written in Go that provides a unified web interface for browsing and managing files across local storage and 30+ cloud providers including S3, Google Drive, OneDrive, and WebDAV.

Introduction

Alist solves a common pain point: managing files scattered across dozens of cloud storage services. Instead of logging into each provider separately, Alist aggregates them behind a single web UI with a consistent file-browser experience. It is written in Go with a Vue.js frontend.

What Alist Does

  • Provides a unified file listing interface for 30+ storage backends including local disk, S3, Google Drive, OneDrive, Aliyun Drive, Baidu Netdisk, and WebDAV
  • Supports direct streaming and download of video, audio, and documents without transferring through the server
  • Offers a built-in video player, image gallery, and document previewer in the browser
  • Exposes all storage backends as a single WebDAV endpoint so you can mount them on any OS
  • Provides a REST API for programmatic file operations and third-party integrations

Architecture Overview

Alist runs as a single Go binary with an embedded SQLite or MySQL database for configuration and metadata. On startup it registers driver adapters for each configured storage backend. File requests are proxied or redirected depending on the driver: some providers support direct-link mode where the client downloads straight from the CDN, while others require server-side proxying. The Vue 3 frontend communicates via a JSON REST API.

Self-Hosting & Configuration

  • Deploy with Docker, the one-line install script, or download the binary for Linux, macOS, or Windows
  • Configure storage backends through the web admin panel at port 5244
  • Set environment variables or edit data/config.json for database, port, and TLS settings
  • Add reverse proxy via Nginx or Caddy for HTTPS termination
  • Enable two-factor authentication and per-folder permissions for multi-user setups

Key Features

  • Supports 30+ storage providers with a pluggable driver architecture
  • Built-in media preview: video player (with subtitle support), audio player, image gallery, PDF, Office documents, and code files
  • WebDAV server that unifies all backends into a single mountable endpoint
  • Offline download integration with aria2 for fetching files directly to storage backends
  • Customizable UI with dark mode, i18n support, and optional password-protected shares

Comparison with Similar Tools

  • Nextcloud — full collaboration suite with heavier resource usage; Alist is read-mostly and far more lightweight
  • FileBrowser — manages a single local directory; Alist aggregates multiple remote cloud accounts
  • Rclone — powerful CLI for cloud storage sync; Alist adds a web UI and streaming capabilities
  • Seafile — focuses on file sync and team collaboration; Alist is primarily a listing and playback gateway
  • CloudReve — similar concept but smaller driver ecosystem and less active community

FAQ

Q: Does Alist store my files on its own server? A: No. Alist acts as a gateway and proxy. Files remain on their original storage backends; Alist only stores configuration and metadata.

Q: Can I use Alist to sync files between providers? A: Alist focuses on listing and streaming. For sync and migration, pair it with Rclone or use the built-in copy function for one-off transfers.

Q: How do I secure my Alist instance? A: Enable the built-in authentication, set strong admin passwords, use HTTPS via a reverse proxy, and configure per-folder guest access policies.

Q: What are the system requirements? A: Minimal — a single-core VM with 256 MB RAM can serve dozens of concurrent users since most file transfers go directly to the storage provider.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产