功能强大的便携式文件服务器Copyparty
简介
什么是 Copyparty ?
Copyparty是一个用Python编写的便携式文件服务器,它将众多功能(如加速可续传的上传、文件去重、WebDAV、FTP、TFTP、媒体索引、缩略图等)集成到了一个文件中,并且几乎没有强制性依赖。你可以直接运行它,将任何设备变成一个文件服务器,并通过网页浏览器进行访问。
主要特点
- 可恢复上传:支持加速的可恢复文件上传,确保在网络中断时可以继续上传。
- 多协议支持:提供多种协议,包括 HTTP、WebDAV、FTP、TFTP等,适应不同的使用需求。
- 去重功能:通过文件链接实现上传去重,节省存储空间。
- 多平台兼容:可以在 Windows、Linux、macOS、Android等多个平台上运行。
- 用户权限管理: 支持每个文件夹和用户的权限管理,确保文件安全。
- 媒体索引和缩略图:自动生成媒体文件的缩略图,并支持音频、视频和图片的播放。
- 动态文档:支持 Markdown文档的查看和编辑。
- 零配置:只需运行一个脚本即可开始使用,无需复杂的配置过程。
- 易于部署: 提供 Docker镜像,可以快速方便地进行部署。
应用场景
- 在家庭或办公室网络中快速搭建一个临时的文件共享服务器。
- 将闲置的电脑或树莓派等设备变成一个功能强大的个人网盘。
- 为团队提供一个简单易用的文件协作平台。

Copyparty 为用户提供了一种灵活、高效的文件管理解决方案。
准备
Copyparty 的功能有点多,上来就给我看懵了。官方建议使用配置文件,而不是直接使用参数
配置文件采用了类似 YAML 的文件格式,老苏找了一个简化版的,命名为  copyparty.conf 即可
源文件地址: https://github.com/9001/copyparty/blob/hovudstraum/docs/examples/docker/basic-docker-compose/copyparty.conf
| 1 | # not actually YAML but lets pretend: | 
更复杂的示例: https://github.com/9001/copyparty/blob/hovudstraum/docs/example.conf
如果你忘记了这个文件,启动后会看到这样的界面

安装
在群晖上以 Docker 方式安装。
在注册表中搜索 copyparty ,选择 copyparty/ac,版本选择 latest。
本文写作时,
latest版本对应为1.19.4;

卷
在 docker 文件夹中,创建一个新文件夹 copyparty,并在其中建立两个子文件夹 files 和 config。
将上一步保存的  copyparty.conf 放入 config 目录中

| 文件夹 | 装载路径 | 说明 | 
|---|---|---|
| docker/copyparty/files | /w | 存放您要共享的文件 | 
| docker/copyparty/config | /cfg | 存放配置文件和历史记录数据库 | 

端口
本地端口不冲突就行。
| 本地端口 | 容器端口 | 
|---|---|
| 3923 | 3923 | 

命令行安装
如果你熟悉命令行,可能用 docker cli 更快捷
| 1 | # 新建文件夹 copyparty 和 子目录 | 
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
| 1 | services: | 
然后执行下面的命令
| 1 | # 新建文件夹 copyparty 和 子目录 | 

运行
在浏览器中输入 http://群晖IP:3923 就能看到主界面

在 files 目录中放入了一些文件

刷新页面

音视频、pdf 、图片都可以直接播放或者阅读

WebDAV
以 RaiDrive 为例
- 地址: 群晖IP
- 端口: 3923
- 用户: ed, 是copyparty.conf中设置的username
- 密码: wark,是copyparty.conf中设置的password

连接成功后

更多的功能,等需要用的时候,再研究吧
参考文档
9001/copyparty: Portable file server with accelerated resumable uploads, dedup, WebDAV, FTP, TFTP, zeroconf, media indexer, thumbnails++ all in one file, no deps
地址:https://github.com/9001/copypartycopyparty/scripts/docker at hovudstraum · 9001/copyparty
地址:https://github.com/9001/copyparty/tree/hovudstraum/scripts/docker
