安装

ThirtyFile 运行在 Docker 中。从下面两种方式中任选一种,都只需一分钟左右。

本页内容
  1. 开始之前
  2. 方法一:docker run
  3. 方法二:Docker Compose
  4. 登录
  5. 停止与启动

开始之前

在要存放文件的电脑或服务器上安装 Docker,无需其他软件。

方法一:docker run

docker run -d --name thirtyfile --restart unless-stopped \
  -p 8080:8080 \
  -v /srv/thirtyfile/data:/data \
  -v /srv/thirtyfile/storage:/storage \
  -e THIRTYFILE_ADMIN_PASSWORD='choose-a-password' \
  ghcr.io/thirtyfile/thirtyfile:latest

从 v0.6.0 起,版本镜像也会发布到 Docker Hub。在上方命令中使用 thirtyfile/thirtyfile:0.6 即可跟随该版本系列。使用 Compose 时,将 image: 中的 ghcr.io/thirtyfile/thirtyfile 改为 thirtyfile/thirtyfile,使用 Docker Hub 上已存在的标签,并保留原有卷配置。更早的版本仍可从 GHCR 下载。

部分作用
-p 8080:8080访问网站所用的端口。如需使用 80 端口,请写成 -p 80:8080
-v /srv/thirtyfile/data:/data账号和设置的存放位置,更新后仍会保留
-v /srv/thirtyfile/storage:/storage文件的存放位置。可以是另一块磁盘,或挂载的 NAS
THIRTYFILE_ADMIN_PASSWORD第一个账号的密码。请把 choose-a-password 换成你自己的密码:沿用这个示例会被视为未设置。此项可以省略:省略时会生成随机密码并写入日志

方法二:Docker Compose

把现成的 compose.yaml 下载到一个空文件夹中,并在该文件夹中启动:

curl -fLO https://github.com/ThirtyFile/ThirtyFile/releases/latest/download/compose.yaml
docker compose up -d

账号和设置保存在 data 文件夹,文件保存在 storage 文件夹,两者都位于 compose.yaml 旁边。其中是普通文件夹里的普通文件,每个空间一个文件夹(文件存放在哪里)。如需把文件放在另一块磁盘或 NAS 上,请把 compose.yaml 中的 ./storage 改为该路径。

ThirtyFile 会接管交给它的文件夹。启动时,如果 data 和 storage 属于其他用户,ThirtyFile 会把文件夹及其中的全部内容改为归它运行时使用的用户所有(id 1000,THIRTYFILE_RUN_AS)。如果你把 storage 指向其他程序或其他人也在使用的已有文件夹,他们的文件所有者也会随之改变。请使用空文件夹,或把 THIRTYFILE_RUN_AS 设为该文件夹现有的所有者。如需改用用户组访问 NAS 共享文件夹,请用 --group-add 2001(在 compose.yaml 中为 group_add:)加入该用户组:ThirtyFile 切换用户后仍会保留这个用户组。

现成的 compose.yaml 以只读的根文件系统运行容器,除了移交文件夹和切换用户所需的四项之外,移除所有 Linux capability,并设置 no-new-privileges。在 Kubernetes 上,或任何无法以 root 启动容器的环境中,请直接以该用户运行(--user 1000:1000,或 runAsUser: 1000 和 runAsGroup: 1000),并确保卷归该用户所有;ThirtyFile 就会跳过移交步骤。

如需自己设置管理员密码,请在首次启动前,在同一文件夹中创建名为 .env 的文件,内容如下:

THIRTYFILE_ADMIN_PASSWORD=choose-a-password

登录

  1. 打开 http://localhost:8080。从其他电脑访问时,请把 localhost 换成服务器的地址。
  2. 在锁屏界面上任意位置点击一下,然后以 admin 和你设置的密码登录。
  3. 打开左下角的账号菜单,选择修改密码。
没有设置密码?系统会生成随机密码并写入日志。可以用 docker logs thirtyfile 2>&1 | grep password 查看。

停止与启动

docker stop thirtyfile
docker start thirtyfile

使用 Docker Compose 时,请在 compose.yaml 所在的文件夹中运行 docker compose stop 和 docker compose start。