安装
ThirtyFile 运行在 Docker 中。从下面两种方式中任选一种,都只需一分钟左右。
开始之前
在要存放文件的电脑或服务器上安装 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 改为该路径。
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
登录
- 打开
http://localhost:8080。从其他电脑访问时,请把localhost换成服务器的地址。 - 在锁屏界面上任意位置点击一下,然后以 admin 和你设置的密码登录。
- 打开左下角的账号菜单,选择修改密码。
docker logs thirtyfile 2>&1 | grep password 查看。停止与启动
docker stop thirtyfile
docker start thirtyfile
使用 Docker Compose 时,请在 compose.yaml 所在的文件夹中运行 docker compose stop 和 docker compose start。