I. 前提条件
1.1 环境要求
1.安装 Seafile 专业版至少需要 4 核 CPU 和 4GB 内存。
2.确保 mmapfs 计数不会导致像内存不足这样的异常
| |
添加以下参数:
| |
加载配置文件:
| |
查询是否生效:
| |
3.如果你的机器没有足够的配置,在首次部署 Seafile Pro Docker 之后,可以通过以下两种方式之一来满足最低要求为 2 个核心和 2GB 内存:
- 使用 SeaSearch ,一个基于开源搜索引擎 ZincSearch 构建的轻量级搜索引擎,作为索引器。
- 在另一台机器上部署 Elasticsearch,并在
seafevents.conf文件中修改es_host和es_port。
1.2 本文约定
本文使用以下约定:
/opt/seafile是存储 Seafile docker compose 文件的目录。如果您将 Seafile 放在不同的目录中,请相应地调整所有路径。- Seafile 使用两个 Docker 卷
来保存其数据库和 Seafile Docker 容器中生成的数据。卷的主机路径分别是
/opt/seafile-mysql和/opt/seafile-data,不建议更改这些路径。 如果您修改了路径,请在按照这些说明进行操作时考虑到这一点。 - Seafile 和 Nginx 的所有配置和日志文件都存储在 Seafile 容器的卷中。
II. 安装 Docker
III. 环境准备
3.1 下载镜像
| |
3.2 环境配置
从 Seafile Docker 12.0开始,我们使用以下三个配置文件: .env , seafile-server.yml 和 caddy.yml 。
| |
打开 .env 配置,为以下字段设置符合要求的值(具体值要求请查看官方部署文档
)
| |
创建 Elasticsearch 数据目录
| |
3.3 修改端口
文件 caddy.yml 默认使用 80 、443 端口,在启动容器前请检查端口是否被占用
:
| |
若已被占用,请修改为其它端口,示例:
| |
3.4 放行端口
如在云平台部署,除云服务器自身防火墙外,还需在云安全组中开放相关端口。
IV. 启动容器
4.1 启动容器
在 /opt/seafile 目录执行 docker compose 启动容器:
| |
4.2 访问资源
访问 SEAFILE_SERVER_HOSTNAME 配置的主机名,如果 caddy.yml 文件绑定的是非 80 端口,还需在主机名后加入端口访问,如:seafile.example.com:8080 ,默认用户名是 INIT_SEAFILE_ADMIN_EMAIL 设置的值,默认密码是 INIT_SEAFILE_ADMIN_PASSWORD 设置的值。
V. 排错
5.1 502 Bad Gateway
5.1.1 错误提示
访问 http://seafile.example.com 提示:502 Bad Gateway
5.1.2 故障解决
⚠️ 重要警告:此操作将清除该 Seafile 实例数据库中的所有账号、设置和文件数据。请确保你不需要保留这些旧的数据。
1.停止并移除相关容器:
| |
2.删除旧的数据挂载目录(如果是已存储数据,建议重命名备份,而不是直接删除):
| |