admin管理员组文章数量:1027128
【Docker项目实战】使用Docker部署PairDrop文件传输工具
一、PairDrop介绍
1.1 PairDrop简介
PairDrop 是一个支持跨平台的文件共享工具,它允许用户通过本地网络或互联网轻松地在不同设备之间发送图片、文档或文本。与传统的文件传输方式相比,PairDrop 提供了一个无需设置、无需注册的便捷解决方案,适用于拥有现代网页浏览器的所有设备。
1.2 主要特点
- 多平台兼容:无论是Windows、macOS、Linux还是移动操作系统如iOS和Android,PairDrop都能提供类似AirDrop的体验。
- 本地网络文件分享:通过点对点连接直接在同一个局域网内的设备间进行文件传输,快速且高效。
- 临时公共房间:用户可以通过加入临时公共房间,方便地通过互联网与其他用户进行文件交换。
- Web应用形式:无需安装额外的应用程序,只需使用带有现代浏览器的设备即可访问和使用PairDrop服务。
1.3 使用场景
- 工作环境中的协作:在办公室或团队合作时,成员可以通过PairDrop迅速分享会议资料、设计稿或其他重要文档,提高工作效率。
- 家庭内媒体共享:家庭成员可以轻松地在各自的设备间分享照片、视频等多媒体内容,无需复杂的设置过程。
- 教育领域资源传递:教师和学生可以在教室或校园网环境下快速交换学习材料,便于教学活动的开展。
- 外出旅行时的即时分享:当朋友或家人一同出游时,可以通过创建临时公共房间来分享旅途中的精彩瞬间,即使没有稳定的Wi-Fi连接也能实现。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 |
---|---|---|---|---|
jeven01 | 192.168.3.88 | Ubuntu 22.04.1 LTS | 27.1.1 | PairDrop |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PairDrop文件传输工具。
三、本地环境检查
3.1 检查Docker服务状态
代码语言:bash复制检查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:
Main PID: 10450 (dockerd)
Tasks: 60 (limit: 9387)
Memory: 1.8G
CPU: 33min 54.335s
CGroup: /system.slice/docker.service
3.2 检查Docker版本
代码语言:bash复制检查Docker版本
root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585
3.3 检查docker compose 版本
代码语言:bash复制检查Docker compose版本,确保2.0以上版本。
root@jeven01:~# docker compose version
Docker Compose version v2.19.1
四、下载PairDrop镜像
代码语言:bash复制拉取PairDrop镜像,拉取相关镜像如下所示:
root@jeven01:/data/pairdrop# docker pull registry-hangzhou.aliyuncs/jeson/pairdrop:latest
latest: Pulling from jeson/pairdrop
Digest: sha256:c280038542607099f29b829386878ff02682ed7e5ab22f0b2f1edc2631e2dee0
Status: Image is up to date for registry-hangzhou.aliyuncs/jeson/pairdrop:latest
registry-hangzhou.aliyuncs/jeson/pairdrop:latest
五、部署PairDrop应用
5.1 创建部署目录
- 创建部署目录
mkdir -p /data/pairdrop && cd /data/pairdrop
5.2 编辑部署文件
- 如果使用docker-cli部署,可使用以下命令。(可选)
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-hangzhou.aliyuncs/jeson/pairdrop:latest
代码语言:bash复制在`部署目录下,创建docker-compose.yaml文件,如下所示:
vim docker-compose.yaml
代码语言:yaml复制version: '3'
services:
pairdrop:
image: registry-hangzhou.aliyuncs/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",即上海时间(也可以适用于整个中国大陆地区)。 |
5.3 创建PairDrop容器
代码语言:bash复制执行以下命令,创建PairDrop容器。
root@jeven01:/data/pairdrop# docker compose up -d
[+] Running 2/2
? Network pairdrop_default Created 0.1s
? Container pairdrop Started 0.2s
5.4 查看PairDrop容器状态
代码语言:bash复制检查PairDrop容器状态状态,确保PairDrop容器正常启动。
root@jeven01:/data/pairdrop# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
pairdrop registry-hangzhou.aliyuncs/jeson/pairdrop:latest "/init" pairdrop 33 seconds ago Up 32 seconds 0.0.0.0:6600->3000/tcp, :::6600->3000/tcp
5.5 查看PairDrop容器日志
代码语言:bash复制检查PairDrop容器日志,确保PairDropc服务正常运行。
docker compose logs
六、访问PairDrop服务
浏览器地址:
http://<个人的服务器IP>:6600
,访问PairDrop服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。
七、文件传输测试
7.1 PC端接收文件
在局域网内其余PC打开PairDrop的访问链接,可以看到本机的随机名称Plum Cobra。
点击Plum Cobra,发送本地文件给Plum Cobra机器后。返回到本机上查看,可以看到文件传输请求,确认即可下载。
7.2 手机端接收文件
在手机浏览器打开
http://<个人的服务器IP>:6600
,访问PairDrop服务。
在PC端将本地文件传给手机,可以看到如下效果:
八、总结
通过本次实战,我们成功使用Docker部署了PairDrop文件传输工具,体验了其跨平台文件共享的便捷性。在部署过程中,我们检查并配置了本地环境,确保了服务的顺利运行,并通过实际文件传输测试验证了PairDrop的功能和稳定性。无论是工作协作还是日常生活中的文件分享,PairDrop都展现出了极高的实用价值和灵活性。
【Docker项目实战】使用Docker部署PairDrop文件传输工具
一、PairDrop介绍
1.1 PairDrop简介
PairDrop 是一个支持跨平台的文件共享工具,它允许用户通过本地网络或互联网轻松地在不同设备之间发送图片、文档或文本。与传统的文件传输方式相比,PairDrop 提供了一个无需设置、无需注册的便捷解决方案,适用于拥有现代网页浏览器的所有设备。
1.2 主要特点
- 多平台兼容:无论是Windows、macOS、Linux还是移动操作系统如iOS和Android,PairDrop都能提供类似AirDrop的体验。
- 本地网络文件分享:通过点对点连接直接在同一个局域网内的设备间进行文件传输,快速且高效。
- 临时公共房间:用户可以通过加入临时公共房间,方便地通过互联网与其他用户进行文件交换。
- Web应用形式:无需安装额外的应用程序,只需使用带有现代浏览器的设备即可访问和使用PairDrop服务。
1.3 使用场景
- 工作环境中的协作:在办公室或团队合作时,成员可以通过PairDrop迅速分享会议资料、设计稿或其他重要文档,提高工作效率。
- 家庭内媒体共享:家庭成员可以轻松地在各自的设备间分享照片、视频等多媒体内容,无需复杂的设置过程。
- 教育领域资源传递:教师和学生可以在教室或校园网环境下快速交换学习材料,便于教学活动的开展。
- 外出旅行时的即时分享:当朋友或家人一同出游时,可以通过创建临时公共房间来分享旅途中的精彩瞬间,即使没有稳定的Wi-Fi连接也能实现。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 |
---|---|---|---|---|
jeven01 | 192.168.3.88 | Ubuntu 22.04.1 LTS | 27.1.1 | PairDrop |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PairDrop文件传输工具。
三、本地环境检查
3.1 检查Docker服务状态
代码语言:bash复制检查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:
Main PID: 10450 (dockerd)
Tasks: 60 (limit: 9387)
Memory: 1.8G
CPU: 33min 54.335s
CGroup: /system.slice/docker.service
3.2 检查Docker版本
代码语言:bash复制检查Docker版本
root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585
3.3 检查docker compose 版本
代码语言:bash复制检查Docker compose版本,确保2.0以上版本。
root@jeven01:~# docker compose version
Docker Compose version v2.19.1
四、下载PairDrop镜像
代码语言:bash复制拉取PairDrop镜像,拉取相关镜像如下所示:
root@jeven01:/data/pairdrop# docker pull registry-hangzhou.aliyuncs/jeson/pairdrop:latest
latest: Pulling from jeson/pairdrop
Digest: sha256:c280038542607099f29b829386878ff02682ed7e5ab22f0b2f1edc2631e2dee0
Status: Image is up to date for registry-hangzhou.aliyuncs/jeson/pairdrop:latest
registry-hangzhou.aliyuncs/jeson/pairdrop:latest
五、部署PairDrop应用
5.1 创建部署目录
- 创建部署目录
mkdir -p /data/pairdrop && cd /data/pairdrop
5.2 编辑部署文件
- 如果使用docker-cli部署,可使用以下命令。(可选)
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-hangzhou.aliyuncs/jeson/pairdrop:latest
代码语言:bash复制在`部署目录下,创建docker-compose.yaml文件,如下所示:
vim docker-compose.yaml
代码语言:yaml复制version: '3'
services:
pairdrop:
image: registry-hangzhou.aliyuncs/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",即上海时间(也可以适用于整个中国大陆地区)。 |
5.3 创建PairDrop容器
代码语言:bash复制执行以下命令,创建PairDrop容器。
root@jeven01:/data/pairdrop# docker compose up -d
[+] Running 2/2
? Network pairdrop_default Created 0.1s
? Container pairdrop Started 0.2s
5.4 查看PairDrop容器状态
代码语言:bash复制检查PairDrop容器状态状态,确保PairDrop容器正常启动。
root@jeven01:/data/pairdrop# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
pairdrop registry-hangzhou.aliyuncs/jeson/pairdrop:latest "/init" pairdrop 33 seconds ago Up 32 seconds 0.0.0.0:6600->3000/tcp, :::6600->3000/tcp
5.5 查看PairDrop容器日志
代码语言:bash复制检查PairDrop容器日志,确保PairDropc服务正常运行。
docker compose logs
六、访问PairDrop服务
浏览器地址:
http://<个人的服务器IP>:6600
,访问PairDrop服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。
七、文件传输测试
7.1 PC端接收文件
在局域网内其余PC打开PairDrop的访问链接,可以看到本机的随机名称Plum Cobra。
点击Plum Cobra,发送本地文件给Plum Cobra机器后。返回到本机上查看,可以看到文件传输请求,确认即可下载。
7.2 手机端接收文件
在手机浏览器打开
http://<个人的服务器IP>:6600
,访问PairDrop服务。
在PC端将本地文件传给手机,可以看到如下效果:
八、总结
通过本次实战,我们成功使用Docker部署了PairDrop文件传输工具,体验了其跨平台文件共享的便捷性。在部署过程中,我们检查并配置了本地环境,确保了服务的顺利运行,并通过实际文件传输测试验证了PairDrop的功能和稳定性。无论是工作协作还是日常生活中的文件分享,PairDrop都展现出了极高的实用价值和灵活性。
本文标签: Docker项目实战使用Docker部署PairDrop文件传输工具
版权声明:本文标题:【Docker项目实战】使用Docker部署PairDrop文件传输工具 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1747385934a2162796.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论