Add README for dufs deployment

This commit is contained in:
cnphpbb
2026-05-15 17:19:36 +08:00
parent f5438a9f28
commit 659f7056fd

124
dufs/README.md Normal file
View File

@@ -0,0 +1,124 @@
# Dufs - 文件共享服务器
[Dufs](https://github.com/sigoden/dufs) 是一个轻量级的文件共享服务器,支持 WebDAV、上传、下载、搜索等功能。
## 服务信息
| 项目 | 值 |
|------|-----|
| 镜像 | `sigoden/dufs` |
| 版本 | `v0.45.0` |
| 端口 | `5000` |
| 路径前缀 | `/dufs` |
## 目录结构
```
dufs/
├── config/
│ └── config.yaml # Dufs 配置文件
├── env.cfg # 环境变量配置
└── stack.yml # Docker Compose 编排文件
```
## 部署前准备
1. 创建数据目录:
```bash
mkdir -pv /data/volumes/dufs/data
mkdir -pv /data/mygit/config/dufs
```
2. 修改 `./config/config.yaml` 中的配置,并将其复制到 `/data/mygit/config/dufs` 目录中:
```bash
cp ./config/config.yaml /data/mygit/config/dufs/
```
## 部署命令
### 拉取镜像
```bash
docker compose -p dufs --env-file ./dufs/env.cfg -f ./dufs/stack.yml pull
```
### 启动服务
```bash
docker compose -p dufs --env-file ./dufs/env.cfg -f ./dufs/stack.yml up -d
```
## 配置说明
### 环境变量 (`env.cfg`)
| 变量 | 说明 | 默认值 |
|------|------|--------|
| `IMAGE_TAG_VER` | 镜像版本号 | `v0.45.0` |
| `IMAGE_TAG` | 镜像完整标签 | `sigoden/dufs:${IMAGE_TAG_VER}` |
| `Volumes_Path` | 数据卷路径 | `/data/volumes/dufs` |
| `Config_Path` | 配置文件路径 | `/data/mygit/config` |
### 应用配置 (`config/config.yaml`)
#### 基本设置
- **serve-path**: 服务根目录,默认为 `.`(容器内 `/data`
- **bind**: 绑定地址,`0.0.0.0` 表示监听所有接口
- **port**: 服务端口,默认 `5000`
- **path-prefix**: URL 路径前缀,设为 `/dufs`
#### 隐藏文件规则
以下文件/目录在列表中不可见:
- `tmp``.git``.svn``.DS_Store`(系统/版本控制目录)
- `*.log``*.lock``*.db`(临时/数据库文件)
#### 访问控制auth
| 用户 | 密码 | 权限范围 |
|------|------|----------|
| `admin` | `admin` | `/` 目录读写 |
| `user` | `pass` | `/backups` 读写,`/shared` 只读 |
| 匿名 | - | `/` 只读 |
> ⚠️ **安全提示**:请在生产环境中修改默认用户名和密码!
#### 功能开关
| 功能 | 状态 | 说明 |
|------|------|------|
| allow-upload | ✅ | 允许上传文件 |
| allow-delete | ✅ | 允许删除文件 |
| allow-search | ✅ | 允许搜索文件 |
| allow-symlink | ✅ | 允许符号链接 |
| allow-archive | ✅ | 允许打包下载 |
| enable-cors | ✅ | 启用跨域请求 |
| render-index | ✅ | 渲染 index.html |
| render-try-index | ✅ | 尝试渲染 index.html |
| render-spa | ✅ | SPA 模式 |
#### 其他设置
- **compress**: 压缩级别为 `low`
- **log-format**: 访问日志格式
- **log-file**: 日志文件路径 `./dufs.log`
## 数据卷映射
| 容器路径 | 宿主机路径 | 说明 |
|----------|------------|------|
| `/data` | `${Volumes_Path}/data` | 共享文件数据 |
| `/config` | `${Config_Path}/dufs` | 配置文件(只读) |
| `/etc/timezone` | `/etc/timezone` | 时区(只读) |
| `/etc/localtime` | `/etc/localtime` | 本地时间(只读) |
## 访问方式
启动服务后,通过以下方式访问:
- **Web UI**: `http://<host-ip>:5000/dufs/`
- **WebDAV**: `http://<host-ip>:5000/dufs/`