【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是一款优秀的文件共享工具,值得一用!

相关文章
|
3天前
|
NoSQL 关系型数据库 MySQL
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
82 56
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
|
18天前
|
开发框架 安全 开发者
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。本文探讨了 Docker 在多平台应用构建与部署中的作用,包括环境一致性、依赖管理、快速构建等优势,以及部署流程和注意事项,展示了 Docker 如何简化开发与部署过程,提高效率和可移植性。
44 4
|
17天前
|
Java 应用服务中间件 Docker
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
22 2
|
23天前
|
Java Linux Docker
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
41 3
|
1月前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用
|
1月前
|
监控 前端开发 Java
【技术开发】接口管理平台要用什么技术栈?推荐:Java+Vue3+Docker+MySQL
该文档介绍了基于Java后端和Vue3前端构建的管理系统的技术栈及功能模块,涵盖管理后台的访问、登录、首页概览、API接口管理、接口权限设置、接口监控、计费管理、账号管理、应用管理、数据库配置、站点配置及管理员个人设置等内容,并提供了访问地址及操作指南。
|
27天前
|
持续交付 开发者 Docker
掌握Docker容器化技术,加速软件开发与部署
掌握Docker容器化技术,加速软件开发与部署
45 0
|
存储 关系型数据库 jenkins
干货 | 仅需4步,即可用 Docker搭建测试用例平台 TestLink
干货 | 仅需4步,即可用 Docker搭建测试用例平台 TestLink
|
10天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
138 77
|
18天前
|
监控 Docker 容器
在Docker容器中运行打包好的应用程序
在Docker容器中运行打包好的应用程序