
khairul169/garage-webuiGarage Web UI 是 Garage 的简单管理界面,而 Garage 是一款自托管、S3 兼容的分布式对象存储服务。该 Web UI 提供可视化界面,简化 Garage 存储集群的管理操作。
适用于需要可视化管理 Garage 存储集群的场景,包括:
直接通过 Docker 命令行启动:
sh$ docker run -p 3909:3909 -v ./garage.toml:/etc/garage.toml:ro --restart unless-stopped --name garage-webui khairul169/garage-webui:latest
若 Garage 已通过 Docker 部署,可使用以下 Compose 配置将 Web UI 与 Garage 一同部署:
ymlservices: garage: image: dxflrs/garage:v1.0.1 container_name: garage volumes: - ./garage.toml:/etc/garage.toml - ./meta:/var/lib/garage/meta - ./data:/var/lib/garage/data restart: unless-stopped ports: - 3900:3900 - 3901:3901 - 3902:3903 - 3903:3903 webui: image: khairul169/garage-webui:latest container_name: garage-webui restart: unless-stopped volumes: - ./garage.toml:/etc/garage.toml:ro ports: - 3909:3909 environment: API_BASE_URL: "[***]" # Garage admin API 端点 S3_ENDPOINT_URL: "[***]" # S3 API 端点
为简化安装,Web UI 会读取 Garage 配置文件中的以下关键参数:
rpc_public_addradmin.admin_tokens3_web.root_domain示例 config.toml 内容:
tomlmetadata_dir = "/var/lib/garage/meta" data_dir = "/var/lib/garage/data" db_engine = "sqlite" metadata_auto_snapshot_interval = "6h" replication_factor = 3 compression_level = 2 rpc_bind_addr = "[::]:3901" rpc_public_addr = "localhost:3901" # 必需配置 rpc_secret = "YOUR_RPC_SECRET_HERE" [s3_api] s3_region = "garage" api_bind_addr = "[::]:3900" root_domain = ".s3.domain.com" [s3_web] # 可选,如需将桶作为网站暴露 bind_addr = "[::]:3902" root_domain = ".web.domain.com" index = "index.html" [admin] # 必需配置 api_bind_addr = "[::]:3903" admin_token = "YOUR_ADMIN_TOKEN_HERE" metrics_token = "YOUR_METRICS_TOKEN_HERE"
若配置文件加载失败,可通过以下环境变量手动指定:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
CONFIG_PATH | Garage 配置文件路径 | /etc/garage.toml |
API_BASE_URL | Garage admin API 端点 URL | - |
API_ADMIN_KEY | Admin API 密钥 | - |
S3_REGION | S3 区域 | - |
S3_ENDPOINT_URL | S3 端点 URL | - |
启动后,通过 [***] 访问 Web UI。建议通过反向代理(如 Nginx)配置 SSL 以增强安全性。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务