一、FileDrop介绍
1.1 FileDrop简介
FileDrop是一款安全高效的文件共享工具,它允许用户在线共享文件,并通过加密来保护文件的安全性。FileDrop的加密功能可以确保在文件传输过程中,文件的内容不会被未经授权的人访问。
1.2 FileDrop使用场景
FileDrop是一种个人文件分享工具,可以用于以下场景:
分享照片:你可以使用FileDrop将照片分享给朋友和家人。只需将照片拖放到FileDrop中,生成一个独一无二的链接,然后将链接发送给对方。这样,对方就可以通过点击链接来查看和下载照片。
分享音乐:如果你有一首特别喜欢的歌曲或音乐专辑,可以使用FileDrop将它们分享给朋友。将音乐文件拖放到FileDrop中,生成分享链接,然后将链接发送给对方即可。
分享文档:FileDrop也非常适合分享文档,如Word文档、PDF文件等。你可以将文档文件拖放到FileDrop中,生成链接并发送给需要的人,这样他们就可以轻松地下载和查看文档。
团队合作:如果你在一个团队中工作,FileDrop可以帮助你和团队成员分享文件。你可以将文件放入FileDrop,并与团队成员共享链接。这样,每个人都可以方便地访问所需的文件。
备份文件:如果你想对重要文件进行备份,可以使用FileDrop。将文件拖放到FileDrop中,并将生成的链接保存在安全的地方。这样,即使你的电脑损坏或丢失,你仍然可以通过链接重新获取文件。
二、本地环境介绍
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为centos7.6。
hostname | IP地址 | 操作系统版本 | Docker版本 |
---|---|---|---|
jeven | 192.168.3.166 | centos 7.6 | 20.10.17 |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署FileDrop文件共享工具。三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2023-12-01 22:00:49 CST; 5 days ago
Docs: https://docs.docker.com
Main PID: 11506 (dockerd)
Tasks: 10
Memory: 2.0G
CGroup: /system.slice/docker.service
3.2 检查Docker版本
检查Docker版本
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
四、下载FileDrop镜像
从docker hub拉取filedrop镜像,镜像版本为latest。
[root@jeven ~]# docker pull xtrendence/filedrop
Using default tag: latest
latest: Pulling from xtrendence/filedrop
9b99af5931b3: Pull complete
b6013b3e77fe: Pull complete
bbced17b6899: Pull complete
8b609dabefa8: Pull complete
50544bfef33d: Pull complete
fea3f8b8e075: Pull complete
9e4e229021ee: Pull complete
971c8efc250b: Pull complete
3e9d4bc41c27: Pull complete
84a008726e94: Pull complete
1fb38024994d: Pull complete
30197cce9dc7: Pull complete
061733aba440: Pull complete
Digest: sha256:72e653efe4c359a2fcd6b138b3f289175e55faa681c2fbe1cbd53a44a010c379
Status: Downloaded newer image for xtrendence/filedrop:latest
docker.io/xtrendence/filedrop:latest
五、部署FileDrop
5.1 docker-cli创建filedrop容器
使用docker-cli创建filedrop容器
docker run -d --name filedrop --restart always -p 5660:3180 -m 1g --cpus=0.5 xtrendence/filedrop
5.2 编辑docker-compose.yaml文件
本次实践使用docker compose方式部署,编辑docker-compose.yaml文件。
version: '3.8'
services:
filedrop:
image: xtrendence/filedrop
container_name: filedrop
restart: always
ports:
- "5660:3180"
mem_limit: 1g
cpus: 0.5
5.3 创建filedrop容器
使用docker compose快速创建filedrop容器
[root@jeven filedrop]# docker compose up -d
[+] Running 2/2
⠿ Network filedrop_default Created 0.1s
⠿ Container filedrop Started 1.0s
5.4 检查filedrop容器运行状态
检查filedrop容器运行状态
[root@jeven filedrop]# docker compose ps
NAME COMMAND SERVICE STATUS PORTS
filedrop "docker-entrypoint.s…" filedrop running 0.0.0.0:5660->3180/tcp, :::5660->3180/tcp
5.5 检查filedrop容器日志
检查filedrop容器日志
[root@jeven filedrop]# docker compose logs
filedrop |
filedrop | > filedrop@1.0.6 start
filedrop | > node src/server.js
filedrop |
filedrop | Started Server: http://192.168.80.2:3180
filedrop | Cleared Previous Clients
六、FileDrop的基本使用
6.1 设置用户名
访问地址:https://192.168.3.166:5660/,将IP更改为自己服务器的ip地址,设置自定义用户名为jeven。
6.2 在其他电脑访问FileDrop
访问地址:http://192.168.3.166:5660/,将IP更改为自己服务器的ip地址,点击随机生成用户名browine。
此时,两台电脑的浏览器右上角会出现对方用户的“请求许可”选项。
6.3 共享请求许可设置
在jeven用户的浏览器上,点击对于browine用户的共享“请求许可”,在browine用户登录的浏览器同意请求即可,
6.4 发送共享文件
在jeven用户的浏览器上,点击发送共享文件。
此时,在browine用户登录的浏览器上自动下载该文件。注意发送的文件名不能有中文名,否则会失败。
七、总结
FileDrop文件共享工具是一个非常有用的工具,特别适用于个人多设备之间传输文件或团队协作互发文件。它的文件访问请求机制保证了文件发送共享的安全性,并且传输速率也非常快。然而,当前版本的体验中存在一个不友好的问题,即无法传输带有中文名的文件。希望在后续版本中能对此进行改进,以提升用户体验。