@TOC
PdfDing
是一种轻量级的应用程序,可以通过 Docker 轻松地在服务器上设置。它提供了一个基于Web的界面,允许用户通过浏览器上传、管理和阅读PDF文档。这款工具注重用户体验,提供了诸如暗黑模式和记忆阅读位置等实用功能,确保了用户能够享受流畅的文档阅读体验。
本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostname | IP地址 | 操作系统版本 | Docker版本 | PdfDing镜像版本 |
---|---|---|---|---|
ubuntu-001r | 192.168.3.251 | Ubuntu 22.04.1 LTS | 24.0.7 | 0.3.4 |
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PDD查看器PdfDing。
检查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
Docs: https://docs.docker.com
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
检查Docker版本
root@ubuntu-001:~# docker -v
Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1
检查Docker compose版本,确保2.0以上版本。
root@ubuntu-001:~# docker compose version
Docker Compose version v2.19.1
拉取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
mkdir -p /data/pdfding && cd /data/pdfding
在
/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
执行以下命令,创建PdfDing容器。
root@ubuntu-001:/data/pdfding# docker compose up -d
[+] Running 2/2
✔ Network pdfding_default Created 0.1s
✔ Container pdfding Started 0.4s
检查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
检查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
访问地址:http://192.168.3.251:8020,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。
点击:
sign up
,进入账号注册页。
自定义注册账号信息,确认注册即可。
Settings——Theme,可编辑修改主题样式。
点击“Add PDF”选项,上传本地PDF文章。
点击上传的PDF文档,可以在线浏览文档。
通过Docker部署PdfDing PDF查看器的过程非常顺利,仅需几条简单的命令就完成了环境搭建。 PdfDing在容器中的运行表现稳定,提供了流畅的PDF管理和阅读体验。整个部署过程不仅快速而且易于维护,充分展示了Docker在简化应用部署方面的优势。这次实战进一步验证了Docker对于快速搭建和运行应用程序的有效性和便捷性。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。