Skip to content

Introduction

S3 Lens is a self-hosted web application for browsing and managing objects in S3-compatible storage. Connect one or more providers in a YAML config file, open the UI in your browser, and work with buckets and objects through a clean interface or the HTTP API.

  • Browse buckets and objects across multiple S3-compatible backends from one UI
  • Upload, download, copy, rename, and delete objects — including bulk operations
  • Generate presigned URLs for temporary access
  • Restrict who can see or change what using OIDC login and fine-grained access policies
  • Deploy as a single binary with the web UI embedded, or run from Docker
  1. Install S3 Lens — build from source or use Docker
  2. Copy s3lens.yaml.example to s3lens.yaml and add your storage providers
  3. Start the server:
Terminal window
s3lens --config s3lens.yaml --host 127.0.0.1 --port 8080
  1. Open http://127.0.0.1:8080

For production deployments, enable authentication and configure access policies before exposing S3 Lens to your network.

Guide Description
Installation Build, Docker, and running the server
Configuration Server settings, providers, and environment variables
Storage providers AWS, Google Cloud Storage, Garage, SeaweedFS, and other S3-compatible backends
Authentication OIDC login, sessions, and identity mapping
Access policies Roles, allow/deny rules, and IAM-compatible policy files

When S3 Lens is running, interactive API documentation is available at /api/scalar on the same host and port as the UI (for example http://127.0.0.1:8080/api/scalar). The OpenAPI schema is at /api/openapi.json.