首页 >PC >正文

【Docker项目实战篇】Docker部署PDF查看器PdfDing

1.1 PdfDing简介1.2 PdfDing主要特点

1.3 主要使用场景

2.1 本地环境规划

2.2 本次实践介绍

3.1 检查Docker服务状态

3.2 检查Docker版本

3.3 检查docker compose 版本

5.1 创建部署目录

5.2 编辑部署文件

5.3 创建PdfDing容器

5.4 查看PdfDing容器状态

5.5 查看PdfDing容器日志

6.1 访问PdfDing初始页

6.2 注册账号

7.1 设置主题

7.2 上传文档

7.3 在线浏览文档效果

一、PdfDing介绍

1.1 PdfDing简介

PdfDing是一种轻量级的应用程序,可以通过 Docker 轻松地在服务器上设置。它提供了一个基于Web的界面,允许用户通过浏览器上传、管理和阅读PDF文档。这款工具注重用户体验,提供了诸如暗黑模式和记忆阅读位置等实用功能,确保了用户能够享受流畅的文档阅读体验。

1.2 PdfDing主要特点

多设备支持:可以在多种设备(如桌面电脑、平板电脑和手机)上无缝浏览PDF文件。

标签整理:用户可以使用标签来组织他们的PDF文档,这有助于更有效地管理和检索文档。

简洁界面:拥有一个干净且响应式的用户界面设计,使得导航变得直观简单。

暗黑模式:提供暗黑主题选项,减少眼睛疲劳,特别是在低光照条件下阅读时。

记住位置:自动记录用户的阅读进度,让用户可以从上次停止的地方继续阅读。

单点登录(SSO):通过开放ID连接(OIDC)协议支持单点登录,简化了身份验证流程。

自我服务:每个用户都可以自行上传自己的PDF文件,而不需要管理员介入管理内容。

1.3 主要使用场景

教育机构:教师和学生可以方便地分享教材、作业等学习材料。

企业办公:公司员工可用来共享报告、合同等正式文档,并保持良好的文档管理习惯。

研究团体:研究人员之间交换论文和其他研究资料变得更加容易。

个人用途:对于需要经常处理电子书或其他形式的PDF文档的人来说非常有用,比如学生准备考试或是专业人士进行持续教育。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署PDD查看器PdfDing。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@ubuntu-001:~# systemctl status docker

● docker.service - Docker Application Container Engine

     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)

     Active: active (running) since Sun 2024-09-29 08:29:36 UTC; 18min ago

TriggeredBy: ● docker.socket

   Main PID: 5227 (dockerd)

      Tasks: 123

     Memory: 272.5M

        CPU: 9.692s

     CGroup: /system.slice/docker.service

             ├─5227 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

3.2 检查Docker版本

检查Docker版本

root@ubuntu-001:~# docker -v

Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1

3.3 检查docker compose 版本

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

root@ubuntu-001:~#  docker compose version

Docker Compose version v2.19.1

四、下载PdfDing镜像

拉取PdfDing镜像,镜像名称为:mrmn/pdfding:0.3.4。

root@ubuntu-001:/data/pdfding# docker pull  mrmn/pdfding:0.3.4

0.3.4: Pulling from mrmn/pdfding

c6a83fedfae6: Already exists

6f14051a7863: Pull complete

e1e82c77ac9c: Pull complete

334024c37334: Pull complete

2240f6c2d99c: Pull complete

3a640e0e83b1: Pull complete

a2240f381d2e: Pull complete

2e996bc1859a: Pull complete

4f4fb700ef54: Pull complete

a1f4d8ed2f26: Pull complete

655f5f94961c: Pull complete

Digest: sha256:ba0b9f6b650af6240aa7bc12a3b10d2a0fc36dfaf69d4de2e1485d18414dc168

Status: Downloaded newer image for mrmn/pdfding:0.3.4

docker.io/mrmn/pdfding:0.3.4

五、部署PdfDing

5.1 创建部署目录

创建部署目录

mkdir -p /data/pdfding && cd /data/pdfding

5.2 编辑部署文件

在/data/pdfding目录,创建docker-compose.yaml文件,内容如下,其中宿主机映射端口、登录账号密码等可以自定义配置。

version: '3'

services:

  pdfding:

    image: mrmn/pdfding:0.3.4

    container_name: pdfding

    restart: always

    ports:

      - 8020:8000

    volumes:

      - ./data:/home/nonroot/pdfding/db

      - ./media:/home/nonroot/pdfding/media

    environment:

      - HOST_NAME=192.168.3.251

      - SECRET_KEY=some_secret

      - CSRF_COOKIE_SECURE=FALSE

      - SESSION_COOKIE_SECURE=FALSE

     

5.3 创建PdfDing容器

执行以下命令,创建PdfDing容器。

root@ubuntu-001:/data/pdfding# docker compose up -d

[+] Running 2/2

 ✔ Network pdfding_default  Created                                                                                                                      0.1s

 ✔ Container pdfding        Started                                                                                                                      0.4s

5.4 查看PdfDing容器状态

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

root@ubuntu-001:/data/pdfding# docker compose ps

NAME                IMAGE                COMMAND             SERVICE             CREATED             STATUS              PORTS

pdfding             mrmn/pdfding:0.3.4   "./bootstrap.sh"    pdfding             23 seconds ago      Up 22 seconds       0.0.0.0:8020->8000/tcp, :::8020->8000/tcp

5.5 查看PdfDing容器日志

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

root@ubuntu-001:/data/pdfding# docker compose logs

pdfding  | Operations to perform:

pdfding  |   Apply all migrations: account, auth, contenttypes, pdf, sessions, socialaccount, users

pdfding  | Running migrations:

pdfding  |   No migrations to apply.

pdfding  | [2024-09-29 09:07:34 +0000] [12] [INFO] Starting gunicorn 23.0.0

pdfding  | [2024-09-29 09:07:34 +0000] [12] [INFO] Listening at: http://0.0.0.0:8000 (12)

pdfding  | [2024-09-29 09:07:34 +0000] [12] [INFO] Using worker: sync

pdfding  | [2024-09-29 09:07:34 +0000] [13] [INFO] Booting worker with pid: 13

pdfding  | [2024-09-29 09:07:34 +0000] [14] [INFO] Booting worker with pid: 14

pdfding  | [2024-09-29 09:07:34 +0000] [15] [INFO] Booting worker with pid: 15

六、访问PdfDing服务

6.1 访问PdfDing初始页

访问地址:http://192.168.3.251:8020,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

6.2 注册账号

点击:sign up,进入账号注册页。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

自定义注册账号信息,确认注册即可。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

【Docker项目实战篇】Docker部署PDF查看器PdfDing

七、PdfDing工具的基本使用

7.1 设置主题

Settings——Theme,可编辑修改主题样式。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

7.2 上传文档

点击“Add PDF”选项,上传本地PDF文章。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

【Docker项目实战篇】Docker部署PDF查看器PdfDing

7.3 在线浏览文档效果

点击上传的PDF文档,可以在线浏览文档。

【Docker项目实战篇】Docker部署PDF查看器PdfDing

【Docker项目实战篇】Docker部署PDF查看器PdfDing

八、总结

通过Docker部署PdfDing PDF查看器的过程非常顺利,仅需几条简单的命令就完成了环境搭建。 PdfDing在容器中的运行表现稳定,提供了流畅的PDF管理和阅读体验。整个部署过程不仅快速而且易于维护,充分展示了Docker在简化应用部署方面的优势。这次实战进一步验证了Docker对于快速搭建和运行应用程序的有效性和便捷性。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

网友评论

验证码 换一张
取 消
暂无评论...
三日内热门评论文章
为您推荐
  • 相关阅读
  • 业界资讯
  • 手机通讯
  • 电脑办公
  • 新奇数码
  • 软件游戏
  • 科学探索