# 一、seafile简介
Seafile 是一个开源的企业文件托管平台(企业云盘),注重可靠性和性能,支持全平台客户端。
官网:https://www.seafile.com/ (opens new window)
# seafile特点
- 文件管理
- 创建和管理库:Seafile 以 “库” 为单位管理文件,用户可以在客户端或网页端创建库,并对库进行命名、描述等设置。每个库可独立同步,还可选择性地使用自定义密码加密。
- 文件操作:在库中可以进行文件和文件夹的创建、上传、下载、删除、重命名等常规操作。支持批量操作,方便用户对大量文件进行管理。
- 版本控制:Seafile 会自动记录文件的修改历史,用户可以查看文件的版本信息,追溯文件的修改过程,还可以恢复到文件的任意历史版本。
- 文件共享与协作
- 共享库或文件夹:用户可以将库或文件夹共享给其他用户或小组。在共享时,可以设置详细的访问权限,如可读写、只读、管理权限、仅创建文件等,还可以对子文件夹的权限进行微调。
- 共享链接:对于临时或外部分享,用户可以生成带有密码的下载链接,并设置有效期限,方便与外部人员共享文件,同时保证文件的安全性。
- 高级功能
- 文件扩展属性:用户可以根据自己的需求,为文件添加扩展属性,如合同状态、审核人、签署人等,使得文件管理更加精细化。
- 层级标签:Seafile 提供了层级标签管理功能,用户可以创建条理清晰的标签体系,通过标签对文件进行分类和查找,提高文件管理的效率和准确性。
- SeaDoc 协作文档:Seafile 内置的 SeaDoc 协作文档功能,支持多人同时对文档进行编辑,同一处的更改冲突不会互相覆盖,所有更改都会列出,方便团队进行合并和确认。
- 团队协作:支持团队和组织的文件管理,用户可以创建库和管理权限,便于团队协作。
- 跨平台支持:提供
Windows
、macOS
、Linux
、iOS
和Android
的客户端,支持多种操作系统。 - 自托管选项:用户可以选择在自己的服务器上托管
Seafile
,增加数据的控制和隐私性。
- 数据安全
- 加密:在数据传输过程中,Seafile 可以采用先进的对称加密算法,如 AES 算法,对数据进行实时加密。在数据存储方面,结合 SSL/TLS 加密协议,对存储的数据进行加密保护。用户还可以对库进行端到端加密,确保数据的安全性。
- 访问控制:Seafile 建立了基于角色的访问控制(RBAC)模型,根据用户的角色和职责分配不同的访问权限,同时对所有的访问操作进行详细记录,便于审计和追溯。
# 适用场景
- 个人用户需要同步和备份文件。
- 企业和团队需要安全的文件共享和协作解决方案。
- 需要自托管文件管理系统以满足特定的合规性或隐私要求。
# 二、seafile安装
# Docker安装
docker-compose.yml
version: '3.3'
services:
db:
image: mariadb:10.11
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=your_secure_mysql_root_password # 强烈建议修改
- MYSQL_LOG_CONSOLE=true
volumes:
- ./data/mysql-data:/var/lib/mysql # 使用相对路径
networks:
- seafile-net
restart: unless-stopped
memcached:
image: memcached:1.6
container_name: seafile-memcached
entrypoint: memcached -m 256
networks:
- seafile-net
restart: unless-stopped
seafile:
image: seafileltd/seafile-mc:latest
container_name: seafile
ports:
- "8084:80"
# - "443:443" # 若启用HTTPS,取消注释
environment:
- DB_HOST=db
- DB_ROOT_PASSWD=your_secure_mysql_root_password # 与上述MYSQL_ROOT_PASSWORD保持一致
- TIME_ZONE=Asia/Shanghai # 按需设置时区,例如UTC
- SEAFILE_ADMIN_EMAIL=your_admin_email@example.com # 设置管理员邮箱
- SEAFILE_ADMIN_PASSWORD=your_secure_admin_password # 设置管理员密码
- SEAFILE_SERVER_HOSTNAME=your_server_domain_or_ip # 设置服务器域名或IP地址
# - SEAFILE_SERVER_LETSENCRYPT=false # 如需Let's Encrypt证书,设为true并开放443端口
# - SEAFILE_SERVER_LETSENCRYPT=true # 需要设置SEAFILE_SERVER_HOSTNAME为有效域名
volumes:
- ./data/shared-data:/shared # 使用相对路径
depends_on:
- db
- memcached
networks:
- seafile-net
restart: unless-stopped
networks:
seafile-net:
driver: bridge
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# 运行
第一次启动的时间会比较长,如果只是看到
502 Bad Gateway
不用担心,多等一会儿
seafile管理界面:http://localhost:8084 (opens new window)
启动后访问 http://服务器IP:8084
,使用配置中的 SEAFILE_ADMIN_EMAIL
和 SEAFILE_ADMIN_PASSWORD
登录。
# 三、seafile使用
除了网页外,还支持各平台的客户端应用,包括了桌面同步客户端、挂载盘客户端和移动客户端,下载地址 (opens new window)。
我们可以下载 Windows
挂载盘客户端,让你通过本地虚拟磁盘直接访问服务器上的文件,无需同步。不占用本地磁盘。支持视频直接播放。