Docker部署PDF查看器PdfDing的實現(xiàn)
一、PdfDing介紹
1.1 PdfDing簡介
PdfDing
是一種輕量級的應用程序,可以通過 Docker 輕松地在服務器上設置。它提供了一個基于Web的界面,允許用戶通過瀏覽器上傳、管理和閱讀PDF文檔。這款工具注重用戶體驗,提供了諸如暗黑模式和記憶閱讀位置等實用功能,確保了用戶能夠享受流暢的文檔閱讀體驗。
1.2 PdfDing主要特點
- 多設備支持:可以在多種設備(如桌面電腦、平板電腦和手機)上無縫瀏覽PDF文件。
- 標簽整理:用戶可以使用標簽來組織他們的PDF文檔,這有助于更有效地管理和檢索文檔。
- 簡潔界面:擁有一個干凈且響應式的用戶界面設計,使得導航變得直觀簡單。
- 暗黑模式:提供暗黑主題選項,減少眼睛疲勞,特別是在低光照條件下閱讀時。
- 記住位置:自動記錄用戶的閱讀進度,讓用戶可以從上次停止的地方繼續(xù)閱讀。
- 單點登錄(SSO):通過開放ID連接(OIDC)協(xié)議支持單點登錄,簡化了身份驗證流程。
- 自我服務:每個用戶都可以自行上傳自己的PDF文件,而不需要管理員介入管理內容。
1.3 主要使用場景
- 教育機構:教師和學生可以方便地分享教材、作業(yè)等學習材料。
- 企業(yè)辦公:公司員工可用來共享報告、合同等正式文檔,并保持良好的文檔管理習慣。
- 研究團體:研究人員之間交換論文和其他研究資料變得更加容易。
- 個人用途:對于需要經常處理電子書或其他形式的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)境,生產環(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文件,內容如下,其中宿主機映射端口、登錄賬號密碼等可以自定義配置。
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內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Docker部署UI自動化測試環(huán)境的實現(xiàn)步驟
本文主要介紹了Docker部署UI自動化測試環(huán)境的實現(xiàn)步驟,通過Docker可以快速創(chuàng)建、部署和測試腳本,提高測試效率,具有一定的參考價值,感興趣的可以了解一下2023-08-08Docker搭建prometheus(普羅米修斯)的方法步驟
phometheus:當前一套非常流行的開源監(jiān)控和報警系統(tǒng),本文主要介紹了Docker搭建prometheus(普羅米修斯)的方法步驟,具有一定的參考價值,感興趣的可以了解一下2024-02-02一次Docker中Redis連接暴增的問題排查實戰(zhàn)記錄
這篇文章主要給大家介紹了一次Docker中Redis連接暴增的問題排查的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2020-06-06Docker Compose一鍵部署LNMP環(huán)境詳細過程
LNMP通常包括Nginx作為Web服務器,MySQL作為數(shù)據庫,PHP處理動態(tài)內容,可能還需要phpMyAdmin進行數(shù)據庫管理,今天給大家介紹下Docker Compose一鍵部署LNMP環(huán)境的詳細過程,感興趣的朋友一起看看吧2025-04-04