
PairDrop 是一个支持跨平台的文件共享工具,它允许用户通过本地网络或互联网轻松地在不同设备之间发送图片、文档或文本。与传统的文件传输方式相比,PairDrop 提供了一个无需设置、无需注册的便捷解决方案,适用于拥有现代网页浏览器的所有设备。
本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 |
|---|---|---|---|---|
jeven01 | 192.168.3.88 | Ubuntu 22.04.1 LTS | 27.1.1 | PairDrop |
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PairDrop文件传输工具。
检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven01:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2024-11-01 00:45:50 CST; 2 weeks 4 days ago
Docs: https://docs.docker.com
Main PID: 10450 (dockerd)
Tasks: 60 (limit: 9387)
Memory: 1.8G
CPU: 33min 54.335s
CGroup: /system.slice/docker.service检查Docker版本
root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585检查Docker compose版本,确保2.0以上版本。
root@jeven01:~# docker compose version
Docker Compose version v2.19.1拉取PairDrop镜像,拉取相关镜像如下所示:
root@jeven01:/data/pairdrop# docker pull registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latest
latest: Pulling from jeson/pairdrop
Digest: sha256:c280038542607099f29b829386878ff02682ed7e5ab22f0b2f1edc2631e2dee0
Status: Image is up to date for registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latest
registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latestmkdir -p /data/pairdrop && cd /data/pairdrop docker run -d \
--name pairdrop \
--restart always \
-p 3049:3000 \
-e PUID=1000 \
-e PGID=1000 \
-e WS_FALLBACK=true \
-e RATE_LIMIT=false \
-e RTC_CONFIG=false \
-e DEBUG_MODE=false \
-e TZ=Asia/Shanghai \
registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latest在`部署目录下,创建docker-compose.yaml文件,如下所示:
vim docker-compose.yamlversion: '3'
services:
pairdrop:
image: registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latest
container_name: pairdrop
restart: always
ports:
- 6600:3000
environment:
- PUID=0
- PGID=0
- WS_FALLBACK=true
- RATE_LIMIT=false
- RTC_CONFIG=false
- DEBUG_MODE=false
- TZ=Asia/Shanghai环境变量 | 值 | 描述 |
|---|---|---|
PUID | 0 | 用户ID。设为1000或其他值以匹配运行容器的用户ID,这里设置为0可能表示默认或root用户。 |
PGID | 0 | 用户组ID。与PUID类似,设为1000或其他值以匹配用户组ID,这里设置为0。 |
WS_FALLBACK | true | 启用WebSocket回调功能,如果客户端无法建立点对点的WebRTC连接,则通过WebSocket进行通信。 |
RATE_LIMIT | false | 控制是否限制客户端请求频率。如果设置为true,将限制每5分钟最多1000次请求。此处设置为false,不限制。 |
RTC_CONFIG | false | 指定是否配置STUN/TURN服务器用于WebRTC连接。若设置为true,则需要提供相应的服务器配置。 |
DEBUG_MODE | false | 是否启用调试模式。启用后可以输出更多详细的日志信息,便于调试应用。 |
TZ | Asia/Shanghai | 设置容器内的时区。这里设置为"Asia/Shanghai",即上海时间(也可以适用于整个中国大陆地区)。 |
执行以下命令,创建PairDrop容器。
root@jeven01:/data/pairdrop# docker compose up -d
[+] Running 2/2
? Network pairdrop_default Created 0.1s
? Container pairdrop Started 0.2s
检查PairDrop容器状态状态,确保PairDrop容器正常启动。
root@jeven01:/data/pairdrop# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
pairdrop registry.cn-hangzhou.aliyuncs.com/jeson/pairdrop:latest "/init" pairdrop 33 seconds ago Up 32 seconds 0.0.0.0:6600->3000/tcp, :::6600->3000/tcp检查PairDrop容器日志,确保PairDropc服务正常运行。
docker compose logs
浏览器地址:
http://<个人的服务器IP>:6600,访问PairDrop服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在局域网内其余PC打开PairDrop的访问链接,可以看到本机的随机名称Plum Cobra。

点击Plum Cobra,发送本地文件给Plum Cobra机器后。返回到本机上查看,可以看到文件传输请求,确认即可下载。


在手机浏览器打开
http://<个人的服务器IP>:6600,访问PairDrop服务。

在PC端将本地文件传给手机,可以看到如下效果:

通过本次实战,我们成功使用Docker部署了PairDrop文件传输工具,体验了其跨平台文件共享的便捷性。在部署过程中,我们检查并配置了本地环境,确保了服务的顺利运行,并通过实际文件传输测试验证了PairDrop的功能和稳定性。无论是工作协作还是日常生活中的文件分享,PairDrop都展现出了极高的实用价值和灵活性。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。