【云原生之Docker实战】使用docker部署Pingvin Share文件共享平台

一、Pingvin Share介绍

1.Pingvin Share简介

Pingvin Share 是自托管文件共享平台,是 WeTransfer 的替代方案。

2.Pingvin Share特点

  • 在 2 分钟内启动您的实例
  • 使用可通过链接访问的文件创建共享
  • 没有文件大小限制,只有你的磁盘是你的限制
  • 设置共享到期时间
  • 可选择使用访问者限制和密码来保护您的共享
  • 电子邮件收件人
  • 明暗模式

二、检查本地docker环境

1.检查docker版本

[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

2.检查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 Mon 2023-01-02 23:06:06 CST; 1 day 15h ago
     Docs: https://docs.docker.com
 Main PID: 100874 (dockerd)
    Tasks: 33
   Memory: 66.3M
   CGroup: /system.slice/docker.service
           ├─100874 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
           ├─102557 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8018 -container-ip 172.22.0.2 -container-port 1...
           └─102563 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8018 -container-ip 172.22.0.2 -container-port 1200

Jan 02 23:06:06 jeven dockerd[100874]: time="2023-01-02T23:06:06.644522593+08:00" level=info msg="Daemon has completed in...zation"
Jan 02 23:06:06 jeven systemd[1]: Started Docker Application Container Engine.
Jan 02 23:06:06 jeven dockerd[100874]: time="2023-01-02T23:06:06.740882048+08:00" level=info msg="API listen on /var/run/...r.sock"
Jan 02 23:06:52 jeven dockerd[100874]: time="2023-01-02T23:06:52.622428751+08:00" level=info msg="ignoring event" contain...Delete"
Jan 02 23:06:52 jeven dockerd[100874]: time="2023-01-02T23:06:52.629268807+08:00" level=info msg="ignoring event" contain...Delete"
Jan 02 23:06:52 jeven dockerd[100874]: time="2023-01-02T23:06:52.693618594+08:00" level=info msg="ignoring event" contain...Delete"
Jan 02 23:06:53 jeven dockerd[100874]: time="2023-01-02T23:06:53.621222210+08:00" level=info msg="ignoring event" contain...Delete"
Jan 02 23:06:54 jeven dockerd[100874]: time="2023-01-02T23:06:54.300983365+08:00" level=info msg="ignoring event" contain...Delete"
Jan 02 23:07:02 jeven dockerd[100874]: time="2023-01-02T23:07:02.578298331+08:00" level=info msg="Container failed to exi...9fda827
Jan 02 23:07:02 jeven dockerd[100874]: time="2023-01-02T23:07:02.615871966+08:00" level=info msg="ignoring event" contain...Delete"
Hint: Some lines were ellipsized, use -l to show in full.

3.检查docker compose版本

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

三、下载Pingvin Share镜像

[root@jeven ~]# docker pull stonith404/pingvin-share
Using default tag: latest
latest: Pulling from stonith404/pingvin-share
3f4ca61aafcd: Already exists 
00fde01815c9: Already exists 
723367e6ef2d: Pull complete 
907e6809ddf0: Pull complete 
128624e9c76a: Pull complete 
384daa63a121: Pull complete 
6b46ad7f87a8: Pull complete 
66cffa2c21ee: Pull complete 
86f10f50d0f2: Pull complete 
da1ccec27d01: Pull complete 
e21c691c712c: Pull complete 
ef24f27bc7b3: Pull complete 
a8ea593babd3: Pull complete 
e18e671ba25f: Pull complete 
4cdf34632590: Pull complete 
4f4fb700ef54: Pull complete 
Digest: sha256:370c3ea43e6fc369ca9051ae2c42773e3ca3cda9b9373ebbce5c317eeb330ab7
Status: Downloaded newer image for stonith404/pingvin-share:latest
docker.io/stonith404/pingvin-share:latest

四、docker-cli部署Pingvin Share

docker run -d --name pingvin --restart always -p 3022:3000 -v /data/pingvin/data:/opt/app/backend/data stonith404/pingvin-share

五、docker compose部署Pingvin Share

1.创建数据目录

[root@jeven ~]# mkdir -p /data/pingvin
[root@jeven ~]# cd /data/pingvin/
[root@jeven pingvin]# 

2.编辑docker-compose.yaml

[root@jeven pingvin]# cat docker-compose.yaml 
version: '3.8'
services:
  pingvin-share:
    image: stonith404/pingvin-share
    container_name: pingvin
    restart: unless-stopped
    ports:
      - 3022:3000
    volumes:
      - "/data/pingvin/data:/opt/app/backend/data"

3.创建Pingvin Share容器

[root@jeven pingvin]# docker compose up -d
[+] Running 2/2
 ⠿ Network pingvin_default  Created                                                                                           0.1s
 ⠿ Container pingvin        Started                                                                                           0.7s

4.查看容器状态

[root@jeven pingvin]# docker compose ps
NAME                COMMAND                  SERVICE             STATUS              PORTS
pingvin             "docker-entrypoint.s…"   pingvin-share       running             0.0.0.0:3022->3000/tcp, :::3022->3000/tcp

六、访问Pingvin Share首页

http://192.168.3.166:3022/

在这里插入图片描述

七、Pingvin Share的基本使用

1.注册账号

在这里插入图片描述

2.设置服务器网址

在这里插入图片描述

3.分享文件

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

4.查看文件分享链接

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

5.打开文件分享链接

在这里插入图片描述

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Docker是目前比较流行的容器化技术,其优点在于方便管理和部署应用程序。而Halo博客系统是一款基于Java开发的博客系统,其部署过程比较复杂,需要安装JDK、MySQL等依赖。本文将介绍如何使用Docker部署Halo博客系统。 1. 安装Docker 首先需要在服务器上安装Docker,可以参考官方文档进行安装。 2. 创建Docker镜像 将Halo博客系统打包成Docker镜像,可以通过Dockerfile或者docker-compose.yml文件进行创建。在这里我们以Dockerfile为例。 先创建一个空目录,将Halo博客系统的jar包和配置文件拷贝到该目录下: ``` mkdir -p /opt/halo cp -r halo.jar /opt/halo/ cp -r application.properties /opt/halo/ ``` 然后创建Dockerfile: ``` FROM openjdk:8-jre-alpine MAINTAINER yourname <youremail@domain.com> ADD halo.jar /opt/halo/halo.jar ADD application.properties /opt/halo/application.properties WORKDIR /opt/halo CMD ["java", "-jar", "halo.jar", "--spring.config.location=application.properties"] EXPOSE 8888 ``` 其中FROM指定了基础镜像,ADD将jar包和配置文件拷贝到镜像中,WORKDIR指定工作目录,CMD指定应用启动命令,EXPOSE指定容器监听的端口。 使用docker build命令创建镜像: ``` docker build -t halo . ``` 其中halo为镜像名称,可以根据需要自行修改。 3. 启动容器 使用docker run命令启动容器: ``` docker run -d -p 8080:8888 --name halo-demo halo ``` 其中-d表示启动守护进程,-p将容器的8888端口映射到主机的8080端口,--name指定容器名称,halo为镜像名称。 启动成功后,在浏览器中输入http://localhost:8080访问Halo博客系统即可。 以上就是使用Docker部署Halo博客系统的步骤,相信通过这个实战,大家可以更好地了解云原生Docker使用部署

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

江湖有缘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值