Docker部署PDF查看器PdfDing的實現(xiàn)
一、PdfDing介紹
1.1 PdfDing簡介
PdfDing是一種輕量級的應用程序,可以通過 Docker 輕松地在服務器上設置。它提供了一個基于Web的界面,允許用戶通過瀏覽器上傳、管理和閱讀PDF文檔。這款工具注重用戶體驗,提供了諸如暗黑模式和記憶閱讀位置等實用功能,確保了用戶能夠享受流暢的文檔閱讀體驗。
1.2 PdfDing主要特點
- 多設備支持:可以在多種設備(如桌面電腦、平板電腦和手機)上無縫瀏覽PDF文件。
- 標簽整理:用戶可以使用標簽來組織他們的PDF文檔,這有助于更有效地管理和檢索文檔。
- 簡潔界面:擁有一個干凈且響應式的用戶界面設計,使得導航變得直觀簡單。
- 暗黑模式:提供暗黑主題選項,減少眼睛疲勞,特別是在低光照條件下閱讀時。
- 記住位置:自動記錄用戶的閱讀進度,讓用戶可以從上次停止的地方繼續(xù)閱讀。
- 單點登錄(SSO):通過開放ID連接(OIDC)協(xié)議支持單點登錄,簡化了身份驗證流程。
- 自我服務:每個用戶都可以自行上傳自己的PDF文件,而不需要管理員介入管理內(nèi)容。
1.3 主要使用場景
- 教育機構:教師和學生可以方便地分享教材、作業(yè)等學習材料。
- 企業(yè)辦公:公司員工可用來共享報告、合同等正式文檔,并保持良好的文檔管理習慣。
- 研究團體:研究人員之間交換論文和其他研究資料變得更加容易。
- 個人用途:對于需要經(jīng)常處理電子書或其他形式的PDF文檔的人來說非常有用,比如學生準備考試或是專業(yè)人士進行持續(xù)教育。
二、本次實踐規(guī)劃
2.1 本地環(huán)境規(guī)劃
本次實踐為個人測試環(huán)境,操作系統(tǒng)版本為|Ubuntu 22.04.1。
| hostname | IP地址 | 操作系統(tǒng)版本 | Docker版本 | PdfDing鏡像版本 |
|---|---|---|---|---|
| ubuntu-001r | 192.168.3.251 | Ubuntu 22.04.1 LTS | 24.0.7 | 0.3.4 |
2.2 本次實踐介紹
1.本次實踐部署環(huán)境為個人測試環(huán)境,生產(chǎn)環(huán)境請謹慎;
2.在Docker環(huán)境下部署PDD查看器PdfDing。
三、本地環(huán)境檢查
3.1 檢查Docker服務狀態(tài)
檢查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
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 創(chuàng)建部署目錄
- 創(chuàng)建部署目錄
mkdir -p /data/pdfding && cd /data/pdfding
5.2 編輯部署文件
在/data/pdfding目錄,創(chuàng)建docker-compose.yaml文件,內(nèi)容如下,其中宿主機映射端口、登錄賬號密碼等可以自定義配置。
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 創(chuàng)建PdfDing容器
執(zhí)行以下命令,創(chuàng)建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容器狀態(tài)
檢查PdfDing容器狀態(tài)狀態(tài),確保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地址。如果無法訪問到以下頁面,則檢查宿主機的防火墻是否關閉或者放行相關端口,云服務器則還需要設置安全組規(guī)則。

6.2 注冊賬號
點擊:sign up,進入賬號注冊頁。

自定義注冊賬號信息,確認注冊即可。


七、PdfDing工具的基本使用
7.1 設置主題
Settings——Theme,可編輯修改主題樣式。

7.2 上傳文檔
點擊“Add PDF”選項,上傳本地PDF文章。


7.3 在線瀏覽文檔效果
點擊上傳的PDF文檔,可以在線瀏覽文檔。


八、總結
通過Docker部署PdfDing PDF查看器的過程非常順利,僅需幾條簡單的命令就完成了環(huán)境搭建。 PdfDing在容器中的運行表現(xiàn)穩(wěn)定,提供了流暢的PDF管理和閱讀體驗。整個部署過程不僅快速而且易于維護,充分展示了Docker在簡化應用部署方面的優(yōu)勢。這次實戰(zhàn)進一步驗證了Docker對于快速搭建和運行應用程序的有效性和便捷性。
到此這篇關于Docker部署PDF查看器PdfDing的實現(xiàn)的文章就介紹到這了,更多相關Docker部署PDF PdfDing內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Docker compose安裝部署創(chuàng)建自定義網(wǎng)絡使用舉例
這篇文章主要為大家介紹了Docker compose安裝部署創(chuàng)建自定義網(wǎng)絡使用舉例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09
docker安裝并持久化postgresql數(shù)據(jù)庫的操作步驟
這篇文章主要介紹了docker安裝并持久化postgresql數(shù)據(jù)庫的操作步驟,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
超詳細Docker Desktop下安裝rocketmq的教程
這篇文章主要介紹了Docker Desktop下安裝rocketmq,本文內(nèi)容通過圖文操作命令給大家講解的非常詳細,需要的朋友可以參考下2021-10-10
Docker部署Nacos并接入SpringBoot服務完整流程
本次實踐圍繞 Docker 部署穩(wěn)定可用的 Nacos 服務、開啟登錄鑒權、開放 gRPC 端口,并實現(xiàn) SpringBoot 服務注冊到 Nacos 展開,解決了版本兼容、鑒權配置、端口通信等核心問題,需要的朋友可以參考下2026-03-03
Docker服務的重啟服務命令詳解(systemctl restart docker)
這篇文章主要介紹了Docker服務的重啟服務命令(systemctl restart docker),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11

