云原生之使用docker部署filepizza文件传输工具

本文介绍了如何在云原生环境中使用Docker部署Filepizza,包括检查系统环境、下载镜像、创建数据目录和证书、启动容器以及访问服务的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 FilePizza介绍

1.FilePizza简介

FilePizza 是一个基于浏览器的点对点(P2P)文件共享服务,它允许用户直接从一个网页浏览器向另一个进行大文件传输,而无需通过服务器中转数据。这意味着文件直接在发送者和接收者之间传递,提高了传输速度并保证了较高的隐私性。FilePizza 利用了WebRTC技术来实现这一过程,确保了跨平台兼容性,无论是Windows、Mac还是Linux操作系统下的主流浏览器都能良好支持。

2.主要 使用场景

  • 临时分享:当需要快速与他人分享文件但又不想上传到云端存储时,FilePizza 提供了一个便捷且安全的选择。
  • 多人协作:团队成员间可以利用该工具即时交换设计稿、视频素材等大型文件,尤其适用于远程工作环境下的即时沟通需求。
  • 家庭或朋友间分享:对于那些希望与家人或朋友共享个人照片、视频等记忆资料的人来说,这是一种既私密又高效的解决方案。
  • 网络条件不佳情况下的文件传输:由于是直接点对点连接,在某些情况下可能比传统的云存储服务提供更稳定的传输体验,尤其是在双方处于同一局域网内时更为明显。

二、检查本地系统环境

1.检查系统版本

部署前,检查操作系统环境,当前使用的操作系统为Centos7.6;

[root@jeven ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Cor

2.检查系统内核版本

  • 检查当前的内核版本
[root@jeven ~]# uname -r 
6.1.8-1.el7.elrepo.x86_64

3.检查Docker版本

检查当前的Docker版本,当前Docker版本为20.10.17。

[root@jeven ~]# docker version
Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:05:12 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:03:33 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

4.检查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 Wed 2023-02-01 17:10:06 CST; 1h 40min ago
     Docs: https://docs.docker.com
 Main PID: 9994 (dockerd)
    Tasks: 189
   Memory: 375.4M

三、下载Docker镜像

dockerhub镜像地址为:https://hub.docker.com/r/kern/filepizza

[root@jeven ~]# docker pull kern/filepizza:master
master: Pulling from kern/filepizza
c9b1b535fdd9: Pull complete 
8488f113df73: Pull complete 
09953e135439: Pull complete 
b1863e3df3d5: Pull complete 
256ec9cc264a: Pull complete 
1b22108a4a0f: Pull complete 
Digest: sha256:0791a0dd0583107cd481558dfab9a922cd3f480a953ceff71a9b98f0cc3b0260
Status: Downloaded newer image for kern/filepizza:master
docker.io/kern/filepizza:master

四、部署filepizza

1.创建数据目录

  • 创建宿主机的挂载目录
[root@jeven ~]# mkdor -p /data/filepizza/
[root@jeven ~]# cd /data/filepizza/
[root@jeven filepizza]# 

2.创建证书

  • 执行以下命令,创建SSL自签名证书。
1.openssl genrsa -out server.key 2048  #生成私钥
2.openssl req -new -key server.key -out server.csr #生成证书申请文件server.csr
3.openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt #生成证书文件

3.创建filepizza容器

  • 执行以下命令,创建filepizza容器。
[root@jeven filepizza]# docker run -d --name filepizza --restart always -p 8180:8080 -e PORT=8080 -e HTTPS_KEY=/config/server.key -e HTTPS_CERT=/config/server.crt -v /data/filepizza/:/config/ kern/filepizza:master
af9b581579496af361c144260e3d553caadfd2593d70806b8b96ea25681c571c


3.查看filepizza容器状态

  • 我们使用docker ps命令查看容器状态
[root@jeven filepizza]# docker ps
CONTAINER ID   IMAGE                                                     COMMAND                  CREATED          STATUS          PORTS                                                                                                                                                        NAMES
af9b58157949   kern/filepizza:master                                     "docker-entrypoint.s…"   14 seconds ago   Up 13 seconds   80/tcp, 0.0.0.0:8180->8080/tcp, :::8180->8080/tcp                                                                                                            filepizza

4.检查filepizza容器运行日志

查询filepizza容器运行日志,确保filepizza服务正常运行

[root@jeven filepizza]# docker logs filepizza 
info: FilePizza listening on :::8080

五、访问filepizza

访问地址:https://192.168.3.166:8180/,将IP替换为自己服务器IP地址,如果无法访问到该页面,注意检查本地防火墙是否关闭或者放行相关端口,云服务器则还需要再行设置安全组规则。

在这里插入图片描述

六、总结

通过Docker部署FilePizza文件传输工具非常便捷,只需几条简单的命令即可快速启动服务。在实际使用中,FilePizza展现了出色的文件传输速度和稳定性,特别是在局域网环境下表现尤为突出。其简洁直观的用户界面使得文件分享变得轻松愉快,无论是个人还是团队协作都极大地提升了效率。整体而言,利用Docker容器化部署不仅简化了安装过程,还确保了环境的一致性和可移植性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江湖有缘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值