Docker一键部署 FileDrop:打造安全高效的私有文件共享服务

Docker一键部署 FileDrop:打造安全高效的私有文件共享服务

  • 一、FileDrop介绍
    • [1.1 FileDrop简介](#1.1 FileDrop简介)
    • [1.2 FileDrop使用场景](#1.2 FileDrop使用场景)
  • 二、本地环境介绍
    • [2.1 本地环境规划](#2.1 本地环境规划)
    • [2.2 本次实践介绍](#2.2 本次实践介绍)
  • 三、本地环境检查
    • [3.1 检查Docker服务状态](#3.1 检查Docker服务状态)
    • [3.2 检查Docker版本](#3.2 检查Docker版本)
    • [3.3 检查docker compose 版本](#3.3 检查docker compose 版本)
  • 四、下载FileDrop镜像
  • 五、部署FileDrop
    • [5.1 docker-cli创建filedrop容器](#5.1 docker-cli创建filedrop容器)
    • [5.2 编辑docker-compose.yaml文件](#5.2 编辑docker-compose.yaml文件)
    • [5.3 创建filedrop容器](#5.3 创建filedrop容器)
    • [5.4 检查filedrop容器运行状态](#5.4 检查filedrop容器运行状态)
    • [5.5 检查filedrop容器日志](#5.5 检查filedrop容器日志)
  • 六、FileDrop的基本使用
    • [6.1 设置用户名](#6.1 设置用户名)
    • [6.2 在其他电脑访问FileDrop](#6.2 在其他电脑访问FileDrop)
    • [6.3 共享请求许可设置](#6.3 共享请求许可设置)
    • [6.4 发送共享文件](#6.4 发送共享文件)
  • 七、总结

一、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正常运行。

bash 复制代码
[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版本

bash 复制代码
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

bash 复制代码
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、下载FileDrop镜像

从docker hub拉取filedrop镜像,镜像版本为latest。

bash 复制代码
[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容器

bash 复制代码
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文件。

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容器

bash 复制代码
[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容器运行状态

bash 复制代码
[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容器日志

bash 复制代码
[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文件共享工具是一个非常有用的工具,特别适用于个人多设备之间传输文件或团队协作互发文件。它的文件访问请求机制保证了文件发送共享的安全性,并且传输速率也非常快。然而,当前版本的体验中存在一个不友好的问题,即无法传输带有中文名的文件。希望在后续版本中能对此进行改进,以提升用户体验。

相关推荐
lingggggaaaa18 分钟前
安全工具篇&Go魔改二开&Fscan扫描&FRP代理&特征消除&新增扩展&打乱HASH
学习·安全·web安全·网络安全·golang·哈希算法
Black蜡笔小新3 小时前
国密GB35114平台EasyGBS筑牢安防安全防线,GB28181/GB35114无缝接入
网络·安全·音视频·gb35114
2401_865854883 小时前
安全为先|咕噜分发平台:一站式App漏洞分析与安全分发解决方案
安全
科普体验馆3 小时前
VR安全体验馆深度测评:优质服务商与推荐厂家剖析
安全·vr
王家视频教程图书馆3 小时前
关于我们的服务端 app端安全架构 深刻思考
安全·安全架构
安科瑞小许3 小时前
乡村的“电力粮仓”:储能系统如何守护农村用电安全与经济性?
安全·农村光伏·农村微电网
cdprinter3 小时前
档案长期安全存储的国产方案信刻全自动蓝光光盘库
安全·自动化
lang201509284 小时前
Jetty密码混淆工具:安全还是假象?
安全·jetty
冰敷逆向4 小时前
京东h5st纯算分析
java·前端·javascript·爬虫·安全·web
晚风吹长发4 小时前
初步了解Linux中的线程同步问题及线程安全和死锁与生产消费者模型
linux·运维·服务器·开发语言·数据结构·安全