File Browser是轻量级个人网盘工具

手动安装使用

首先去 release 页面,根据你的系统和处理器架构选择下载最新的版本,比如这里下载 amd64 版本:

wget https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/linux-amd64-filebrowser.tar.gz

解压到你指定的目录,比如这里的 /usr/filebrowser

mkdir /usr/filebrowser
tar -xvf linux-amd64-filebrowser.tar.gz -C /home/filebrowser

进入到你的目录为 filebrowser 添加可执行权限:

cd /usr/filebrowser
chmod +x filebrowser

直接运行了:

./filebrowser -p 18001

配置参数运行

运行命令可以加上一些自定义参数,参数的官方文档:官方参数文档,下面是部分常用的参数:

  • -a, --address string:监听的地址(默认为 127.0.0.1)
  • -p, --port string:监听端口(默认为 8080)
  • -b, --baseurl string:网站路径
  • -t, --cert string:SSL 证书
  • -k, --key string:SSL 证书密钥
  • -l, --log string:日志默认为标准输出,如果要记录到文件的话可以直接指定文件,例如 /home/filebrowser/filebrowser.log
  • -c, --config string:配置文件路径
  • -d, --database string:数据库路径(默认值 "./filebrowser.db")
  • -r, --root string:数据存放路径

这里我为了方便,选择自己写一个配置文件,vi config.json

vi config.json

# 复制键入以下内容:
{
  "port": 18001,
  "baseURL": "",
  "address": "0.0.0.0",
  "log": "stdout",
  "database": "/usr/filebrowser/database.db",
  "root": "/home"
}

之后直接在程序目录执行:

./filebrowser -c config.json

然后在浏览器中打开你的网站登录即可,默认管理员用户和密码都为 admin,建议登录后先重新设置密码。

使用 SSL

File Browser 本身支持直接在运行时使用 tk 参数或者在配置文件中使用 certkey 参数设置 SSL 证书和密钥。但我这里选择使用 Nginx 前端反代:

server {
    listen ...;
    server_name ...;
    ssl_certificate ...; 
    ssl_certificate_key ...;
    ...
    location / {
        proxy_pass  http://127.0.0.1:18001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

如果你想使用二级目录,例如 yourdomain.com/file 的形式,需要修改前面配置文件中 "baseURL": "/file",以及 Nginx 配置文件中 location /file

后台运行配置

推荐使用 systemd 控制:

vi /etc/systemd/system/filebrowser.service

输入以下内容:

[Unit]
Description=File Browser
After=network.target

[Service]
ExecStart=/usr/filebrowser/filebrowser -c /usr/filebrowser/config.json

[Install]
WantedBy=multi-user.target

记得修改 ExecStart 后面为你自己的文件路径,之后执行:

systemctl daemon-reload
  • 运行:systemctl start filebrowser.service
  • 停止运行:systemctl stop filebrowser.service
  • 开机启动:systemctl enable filebrowser.service
  • 取消开机启动:systemctl disable filebrowser.service