【Docker项目实战】使用Docker部署PicoShare共享文件平台

简介: 【4月更文挑战第5天】使用Docker部署PicoShare共享文件平台

一、PicoShare介绍

1.1 PicoShare简介

PicoShare是一种极简、易于托管的服务,用于共享图像和其他文件。

1.2 PicoShare优点

  • 直接下载链接:PicoShare 为您提供可以与任何人共享的直接下载链接。他们可以在没有广告或注册的情况下查看或下载文件。
  • 没有文件限制:与 imgur、Vimeo 或 SoundCloud 等只允许您共享特定类型文件的网站不同,PicoShare 允许您共享任何大小的任何文件。
  • 无需调整大小/重新编码:如果您上传图像、视频或音频等媒体,PicoShare 绝不会强迫您等待重新编码。上传文件后,您会立即获得直接下载链接,PicoShare 绝不会调整文件大小或重新编码您的文件。

1.3 PicoShare使用场景

  • 在工作场所共享文件:PicoShare可以用于在团队内部共享图像和其他文件。团队成员可以上传和下载文件,以便轻松地共享项目资料、设计文件、报告等。这样可以提高团队合作和协作效率。

  • 在个人博客或网站上展示图片:PicoShare可以用于个人博客或网站上展示图片。用户可以将图片上传到PicoShare,并使用PicoShare提供的链接将图片嵌入到自己的博客或网站中。

  • 在社交媒体上分享图片:PicoShare可以用于在社交媒体平台上分享图片。用户可以将图片上传到PicoShare,并使用PicoShare提供的链接在社交媒体上分享给朋友、粉丝或关注者。

  • 在论坛或社区分享图片:PicoShare可以用于在论坛或社区分享图片。用户可以将图片上传到PicoShare,并将链接分享给论坛或社区的其他成员,以便展示、讨论或解答问题。

  • 在移动设备上传输文件:PicoShare可以用于在移动设备之间传输文件。用户可以将文件上传到PicoShare,并使用PicoShare提供的链接在不同设备之间进行传输和共享。

  • 进行临时文件共享:PicoShare可以用于临时文件共享,例如在会议上传递资料或在团队合作临时需要共享文件的场合。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 2 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PicoShare工具。

三、本地环境检查

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 Sun 2024-01-21 14:36:20 CST; 24h ago
     Docs: https://docs.docker.com
 Main PID: 70926 (dockerd)
    Tasks: 22
   Memory: 59.9M
   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

四、下载PicoShare镜像

从docker hub拉取PicoShare镜像

[root@jeven ~]# docker pull  mtlynch/picoshare
Using default tag: latest
latest: Pulling from mtlynch/picoshare
3695f6c099b8: Pull complete
310a6e8c94e1: Pull complete
5f31d7ececf5: Pull complete
29a0c806d8ab: Pull complete
fd5cc2ea1e0b: Pull complete
53f5193c4004: Pull complete
39f1be42c455: Pull complete
4f4fb700ef54: Pull complete
Digest: sha256:0373b57465518a26429891831f993752a7b51bb18d581b6b06527ea478fb6ab5
Status: Downloaded newer image for mtlynch/picoshare:latest
docker.io/mtlynch/picoshare:latest

五、部署PicoShare

5.1 创建部署目录

创建部署目录/data/picoshare

mkdir -p /data/picoshare  && cd /data/picoshare

5.2 编辑docker-compose.yaml文件

使用docker-cli方式部署,执行命令如下:

docker run \
  --env "PORT=4001" \
  --env "PS_SHARED_SECRET=somesecretpass" \
  --publish 4001:4001/tcp \
  --volume "${PWD}/data:/data" \
  --name picoshare \
  mtlynch/picoshare

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件,可自行修改密码和映射端口。

version: "3.2"
services:
  picoshare:
    image: mtlynch/picoshare
    restart: always
    environment:
      - PORT=4001
      - PS_SHARED_SECRET=admin # Change to any password
    ports:
      - 4261:4001
    command: -db /data/store.db
    volumes:
      - ./data:/data

5.3 创建PicoShare容器

使用docker-compose.yaml文件创建PicoShare容器

docker compose up -d

在这里插入图片描述

5.4 检查PicoShare容器状态

检查PicoShare容器状态,确保PicoShare容器正常启动。

[root@jeven picoshare]# docker compose ps
NAME                    COMMAND                  SERVICE             STATUS              PORTS
picoshare-picoshare-1   "/app/docker-entrypo…"   picoshare           running             0.0.0.0:4261->4001/tcp, :::4261->4001/tcp

5.5 检查PicoShare容器日志

检查PicoShare容器运行日志,确保PicoShare服务正常运行。

docker compose logs

在这里插入图片描述

六、访问PicoShare首页

6.1 进入PicoShare登录页

访问地址:http://192.168.3.166:3000,将IP替换为自己服务器IP地址,进入到PicoShare首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。点击右上角登录选项,进入PicoShare登录页。

在这里插入图片描述

6.2 访问PicoShare首页

填写之前在docker-compose.yaml中自定义的密码,进入PicoShare首页。

在这里插入图片描述
在这里插入图片描述

七、PicoShare的基本使用

7.1 上传文件

点击上传文件选项,将本地文件上传到PicoShare。

在这里插入图片描述

在这里插入图片描述

7.2 查看分享文件

复制文件的分享链接,将分享链接发送给其他人。

在这里插入图片描述

在浏览器打开文件分享链接,则可以在线预览文件,也可以点击下载分享文件。

在这里插入图片描述

7.3 查看文件列表

点击上方的“Files”模块,可以看到所有上传的文件列表。

在这里插入图片描述

7.4 创建访客链接

选择“Guest Links”模块,访客链接允许其他用户将文件上传到此 PicoShare 服务器无需登录。如果想让某人轻松找到一种方式,通过访客链接来共享文件。

  • 选择新建访客链接

在这里插入图片描述

  • 填写访客链接相关信息,确认创建。

在这里插入图片描述

  • 查看访客链接列表

在这里插入图片描述

  • 通过访客链接,不登录上传文件。

在这里插入图片描述
在这里插入图片描述

7.5 查看磁盘空间大小

system——Disk Usage,查看磁盘使用情况。

在这里插入图片描述
在这里插入图片描述

八、总结

PicoShare是一款轻量级的文件共享工具,为我们的日常工作与学习提供了很大的便利。它具有直观简洁的界面,操作也非常简单,能够快速上传文件。特别是访客链接的功能,使得我们可以方便地分享临时文件,免去了其他人的登录步骤,非常实用。此外,PicoShare能够快速打开共享文件,共享链接的有效期还可以自定义,根据需要设置链接的过期时间,非常符合我们的需求。总的体验下来,PicoShare是一款优秀的文件共享工具,值得一用!

相关文章
|
18小时前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
|
18小时前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
|
18小时前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
|
18小时前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
|
18小时前
|
关系型数据库 MySQL 网络安全
Docker部署MySQL,2024网络安全通用流行框架大全
Docker部署MySQL,2024网络安全通用流行框架大全
|
2天前
|
存储 安全 数据安全/隐私保护
【Docker 专栏】Docker 容器化应用的备份与恢复策略
【5月更文挑战第9天】本文探讨了Docker容器化应用的备份与恢复策略,强调了备份在数据保护、业务连续性和合规要求中的关键作用。内容涵盖备份的重要性、内容及方法,推荐了Docker自带工具和第三方工具如Portainer、Velero。制定了备份策略,包括频率、存储位置和保留期限,并详细阐述了恢复流程及注意事项。文章还提及案例分析和未来发展趋势,强调了随着技术发展,备份与恢复策略将持续演进,以应对数字化时代的挑战。
【Docker 专栏】Docker 容器化应用的备份与恢复策略
|
2天前
|
监控 Kubernetes Docker
【Docker 专栏】Docker 容器内应用的健康检查与自动恢复
【5月更文挑战第9天】本文探讨了Docker容器中应用的健康检查与自动恢复,强调其对应用稳定性和系统性能的重要性。健康检查包括进程、端口和应用特定检查,而自动恢复则涉及重启容器和重新部署。Docker原生及第三方工具(如Kubernetes)提供了相关功能。配置检查需考虑检查频率、应用特性和监控告警。案例分析展示了实际操作,未来发展趋势将趋向更智能和高效的检查恢复机制。
【Docker 专栏】Docker 容器内应用的健康检查与自动恢复
|
18小时前
|
Java 虚拟化 Docker
Docker简介及用途,为什么要使用Docker?Docker容器和虚拟机的区别
Docker简介及用途,为什么要使用Docker?Docker容器和虚拟机的区别
|
20小时前
|
存储 Linux Docker
CentOS7修改Docker容器和镜像默认存储位置
CentOS7修改Docker容器和镜像默认存储位置
|
20小时前
|
Linux Docker 容器
更改docker容器中的时间而不影响宿主机
更改docker容器中的时间而不影响宿主机