补充说明
本教程介绍 dufs-zh 从 GitHub Actions 自动发布(多架构二进制 + Docker 镜像)到目标服务器一键安装、卸载、升级的完整流程,适用于个人项目自建发布链路。
项目:dufs-zh|Dufs 文件服务器(中文界面版) 上游:https://github.com/sigoden/dufs 仓库:https://github.com/meimolihan/dufs-zh Docker 镜像:
mobufan/dufs-zh:latest
安装与卸载
安装 / 升级
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/dufs-zh/main/scripts/install.sh)"
- 静默安装 / 升级(指定端口、数据目录、版本)
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/dufs-zh/main/scripts/install.sh)" -p 5000 -d /var/lib/dufs -v 1.0.0 -y
- 未指定
-b且本地无构建产物时,脚本按uname -m映射平台并从 GitHub Release 下载对应架构 musl 静态二进制(x86_64 / aarch64 / armv7 / armv6l / i686),安装至/usr/local/bin/dufs并注册 systemd 服务。
注意:服务与二进制名均为
dufs(并非 dufs-zh);dufs-zh是仓库与镜像名。
卸载命令
bash scripts/uninstall.sh
- 默认保留数据目录(
/var/lib/dufs),加--purge连数据一起删除,--keep-data显式保留
bash scripts/uninstall.sh --purge
- 远程一键卸载
bash <(curl -sSL https://raw.githubusercontent.com/meimolihan/dufs-zh/main/scripts/uninstall.sh) --purge
Docker Compose 部署
mkdir -p /vol1/1000/compose/dufs-zh && cd /vol1/1000/compose/dufs-zh
services:
dufs-zh:
container_name: dufs-zh
image: mobufan/dufs-zh:latest
restart: always
command: /data
ports:
- "5000:5000"
volumes:
- ./data:/data
启动:
docker compose up -d
docker ps | grep dufs-zh
command: /data表示将空参数目录/data作为服务根目录对外提供文件服务;容器端口固定 5000。
脚本命令
| 命令 | 说明 |
|---|---|
bash scripts/install.sh [-p PORT] [-d DATA_DIR] [-v VERSION] [-b BIN] [-y] |
安装/升级为 systemd 服务 |
bash scripts/uninstall.sh [-y] [--purge|--keep-data] [-q] |
卸载 dufs(默认保留数据) |
bash scripts/build-and-push.sh v1.0.0 --yes [-m 备注] |
更新版本号 + 打 tag + 推送(触发 GitHub Actions) |
dufs --version |
显示版本信息 |
dufs --help |
显示全部命令行参数(认证、只读、WebDAV、TLS、隐藏文件等) |
日常管理命令
| 操作 | 命令 |
|---|---|
| 启动 | systemctl start dufs |
| 关闭 | systemctl stop dufs |
| 重启 | systemctl restart dufs |
| 状态 | systemctl status dufs |
| 查看实时日志 | journalctl -u dufs -f |
| 查看最近 30 行日志 | journalctl -u dufs -n 30 --no-pager |
| 关闭开机自启 | systemctl disable dufs |
| 端口放行 | firewall-cmd --permanent --add-port=5000/tcp && firewall-cmd --reload(firewalld) |
数据目录说明
- 默认数据目录:
/var/lib/dufs(即对外提供服务的根目录,安装时可用-d自定义) - 二进制位置:
/usr/local/bin/dufs - 安装记录:
/etc/dufs.conf(APP_NAME、BIN_PATH、PORT、DATA_DIR、VERSION、TARGET) - systemd 单元:
/etc/systemd/system/dufs.service(ExecStart为dufs --bind 0.0.0.0 --port 端口 数据目录,Environment=TZ=Asia/Shanghai) - 启动日志格式:
Listening on http://...:端口 - 支持静态文件服务、上传、搜索、权限控制(用户名密码 / 读写只读角色)、WebDAV、HTTPS(TLS)、ZIP 下载、在线编辑