3.4 KiB
3.4 KiB
Filebrowser 的部署和使用
Filebrowser 是一款开源的,基于 Go 语言开发的 Web 端文件浏览器,可实现文件上传,下载等。
下载和安装
到 https://github.com/filebrowser/filebrowser 的 Release 中下载对应平台和系统的版本,解压即可使用。
部署
Filebrowser 基于数据库形式的配置文件进行工作,用户可通过 Filebrowser 命令直接操作该数据库,不需要直接与数据库打交道。可以使用 -d 参数指定数据库文件,如没有提供该参数,将使用 filebrowser 程序文件路径下的默认数据库文件,如果该数据库文件不存在则自动创建。
使用两个基本指令 config 和 users 即可完成 Filebrowser 的简单配置,config 指令的用法如下:
filebrowser config init <attribute> <value>
# 查看当前属性配置
filebrowser config cat
# 设置某属性
filebrowser config set <attribute> <value>
用于配置的几个主要属性如下:
Attribute | Usage |
---|---|
address | address to listen on |
port | port to listen on |
baseurl | base url |
cert | tls certificate |
key | tls key |
commands | a list of the commands a user can execute |
scope | scope for users |
signup | allow users to signup |
log | log output |
users 指令的基本用法如下:
# 列出所有用户
filebrowser users ls
# 删除某用户
filebrowser users rm <id|username>
# 添加用户
filebrowser users add <username> <password> [flags]
几个常用的的 flag 如下
Flags | Usage |
---|---|
perm.admin | admin perm for users |
scope | scope for users |
示例
部署 Filebrowser 并创建一个管理员账户的示例流程如下:
filebrowser -d /etc/filebrowser.db config init
filebrowser -d /etc/filebrowser.db config set --address 0.0.0.0
filebrowser -d /etc/filebrowser.db config set --port 8088
filebrowser -d /etc/filebrowser.db config set --log /var/log/filebrowser.log
filebrowser -d /etc/filebrowser.db users add root password --perm.admin
其中的 root 和 password 分别是用户名和密码,根据自己的需求更改。
部署完成后,可在管理员账户的系统设置界面对系统进行一些其他设置,如视图模式、普通用户权限、区域和语言等。
利用 Caddy 进行反向代理
可以利用 Caddy 为 Filebrowser 做反向代理
在 Root Domain 进行反向代理
不需要修改 Filebrowser 配置,Caddyfile 示例内容如下:
example.com {
proxy / 127.0.0.1:8080
}
在 Sub-directory 下进行反向代理
需要先修改 Filebrowser 配置,假设 Sub-directory 为 admin:
filebrowser config set --baseurl /admin
Caddyfile 的示例内容如下:
example.com {
proxy /admin 127.0.0.1:808
}
或
localhost:2015/admin {
proxy / 127.0.0.1:8080
}
Https
Filebrowser 内建了 HTTPS 支持,只需要配置 SSL 证书即可。
filebrowser config set --cert <crt> --key <key>