dufs文件服务器部署
前言
dufs(一个支持静态文件服务、上传、搜索、WebDAV 等功能的文件服务器)在 Linux/Docker 环境下的 部署手册。
环境准备
准备一台虚拟机(如 Ubuntu 22.04/CentOS 8 等)IP 假设为 192.168.100.136。
安装必要工具:docker
创建一个用于挂载/服务数据的目录,比如 /AppHome/docker/dufs
获取 dufs 软件
根据官方 README,dufs 支持几种安装方式。 GitHub
下面我列出常用方式:Docker 方式
Docker 方式
这是比较快速、隔离好、便于管理的方式。
docker pull sigoden/dufs:latest
然后你可以通过如下命令启动:
docker run -d \
-v /AppHome/docker/dufs:/data \
-p 5000:5000 \
--name dufs \
sigoden/dufs /data -A
这里 /data 是容器内部的数据目录,映射到宿主机 /srv/dufs-data。选项 -A 表示 “允许所有操作”。
配置 dufs
为了生产环境使用,需要做一些定制配置,比如:绑定地址、端口、SSL 证书、权限控制、隐藏目录、WebDAV、CORS 支持等。
生成配置文件(config.yaml)
例如创建 /etc/dufs/config.yaml(或者你想放在别处)内容如下:
serve-path: '/data'
bind: 0.0.0.0
port: 5000
path-prefix: '/files'
hidden:
- tmp
- '.git'
- '*.log'
auth:
- admin:admin@/:rw
allow-all: false
allow-upload: true
allow-delete: true
allow-search: true
allow-symlink: true
allow-archive: true
enable-cors: true
render-index: true
render-try-index: true
render-spa: true
log-format: '$remote_addr "$request" $status $http_user_agent'
log-file: /data/dufs.log
compress: low
#tls-cert: '/etc/ssl/certs/dufs.crt'
#tls-key: '/etc/ssl/private/dufs.key'
说明几点:
path-prefix:如果你希望访问路径前缀为/files,可以设置。auth:配置用户名/密码与路径权限。例如admin全读写、guest只读。格式参见官方。 GitHub- 隐藏文件/目录
hidden。 - SSL 证书路径:如需 HTTPS。
log-file指定日志输出。- 其它选项根据需求开启/关闭。
Docker 方式
docker run -d \
-v /AppHome/docker/dufs:/data \
-v /etc/dufs/config.yaml:/config.yaml \
-p 5000:5000 \
--name dufs \
docker.guoliangjun.com/sigoden/dufs:v0.45.0 /data --config /config.yaml
