Docker部署PDF查看器PdfDing的實(shí)現(xiàn)
一、PdfDing介紹
1.1 PdfDing簡(jiǎn)介
PdfDing
是一種輕量級(jí)的應(yīng)用程序,可以通過 Docker 輕松地在服務(wù)器上設(shè)置。它提供了一個(gè)基于Web的界面,允許用戶通過瀏覽器上傳、管理和閱讀PDF文檔。這款工具注重用戶體驗(yàn),提供了諸如暗黑模式和記憶閱讀位置等實(shí)用功能,確保了用戶能夠享受流暢的文檔閱讀體驗(yàn)。
1.2 PdfDing主要特點(diǎn)
- 多設(shè)備支持:可以在多種設(shè)備(如桌面電腦、平板電腦和手機(jī))上無縫瀏覽PDF文件。
- 標(biāo)簽整理:用戶可以使用標(biāo)簽來組織他們的PDF文檔,這有助于更有效地管理和檢索文檔。
- 簡(jiǎn)潔界面:擁有一個(gè)干凈且響應(yīng)式的用戶界面設(shè)計(jì),使得導(dǎo)航變得直觀簡(jiǎn)單。
- 暗黑模式:提供暗黑主題選項(xiàng),減少眼睛疲勞,特別是在低光照條件下閱讀時(shí)。
- 記住位置:自動(dòng)記錄用戶的閱讀進(jìn)度,讓用戶可以從上次停止的地方繼續(xù)閱讀。
- 單點(diǎn)登錄(SSO):通過開放ID連接(OIDC)協(xié)議支持單點(diǎn)登錄,簡(jiǎn)化了身份驗(yàn)證流程。
- 自我服務(wù):每個(gè)用戶都可以自行上傳自己的PDF文件,而不需要管理員介入管理內(nèi)容。
1.3 主要使用場(chǎng)景
- 教育機(jī)構(gòu):教師和學(xué)生可以方便地分享教材、作業(yè)等學(xué)習(xí)材料。
- 企業(yè)辦公:公司員工可用來共享報(bào)告、合同等正式文檔,并保持良好的文檔管理習(xí)慣。
- 研究團(tuán)體:研究人員之間交換論文和其他研究資料變得更加容易。
- 個(gè)人用途:對(duì)于需要經(jīng)常處理電子書或其他形式的PDF文檔的人來說非常有用,比如學(xué)生準(zhǔn)備考試或是專業(yè)人士進(jìn)行持續(xù)教育。
二、本次實(shí)踐規(guī)劃
2.1 本地環(huán)境規(guī)劃
本次實(shí)踐為個(gè)人測(cè)試環(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 本次實(shí)踐介紹
1.本次實(shí)踐部署環(huán)境為個(gè)人測(cè)試環(huán)境,生產(chǎn)環(huán)境請(qǐng)謹(jǐn)慎;
2.在Docker環(huán)境下部署PDD查看器PdfDing。
三、本地環(huán)境檢查
3.1 檢查Docker服務(wù)狀態(tài)
檢查Docker服務(wù)是否正常運(yùn)行,確保Docker正常運(yùn)行。
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)容如下,其中宿主機(jī)映射端口、登錄賬號(hào)密碼等可以自定義配置。
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容器正常啟動(dòng)。
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服務(wù)正常運(yùn)行。
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服務(wù)
6.1 訪問PdfDing初始頁(yè)
訪問地址:http://192.168.3.251:8020,將IP替換為自己服務(wù)器IP地址。如果無法訪問到以下頁(yè)面,則檢查宿主機(jī)的防火墻是否關(guān)閉或者放行相關(guān)端口,云服務(wù)器則還需要設(shè)置安全組規(guī)則。
6.2 注冊(cè)賬號(hào)
點(diǎn)擊:sign up,進(jìn)入賬號(hào)注冊(cè)頁(yè)。
自定義注冊(cè)賬號(hào)信息,確認(rèn)注冊(cè)即可。
七、PdfDing工具的基本使用
7.1 設(shè)置主題
Settings——Theme,可編輯修改主題樣式。
7.2 上傳文檔
點(diǎn)擊“Add PDF”選項(xiàng),上傳本地PDF文章。
7.3 在線瀏覽文檔效果
點(diǎn)擊上傳的PDF文檔,可以在線瀏覽文檔。
八、總結(jié)
通過Docker部署PdfDing PDF查看器的過程非常順利,僅需幾條簡(jiǎn)單的命令就完成了環(huán)境搭建。 PdfDing在容器中的運(yùn)行表現(xiàn)穩(wěn)定,提供了流暢的PDF管理和閱讀體驗(yàn)。整個(gè)部署過程不僅快速而且易于維護(hù),充分展示了Docker在簡(jiǎn)化應(yīng)用部署方面的優(yōu)勢(shì)。這次實(shí)戰(zhàn)進(jìn)一步驗(yàn)證了Docker對(duì)于快速搭建和運(yùn)行應(yīng)用程序的有效性和便捷性。
到此這篇關(guān)于Docker部署PDF查看器PdfDing的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Docker部署PDF PdfDing內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker部署UI自動(dòng)化測(cè)試環(huán)境的實(shí)現(xiàn)步驟
本文主要介紹了Docker部署UI自動(dòng)化測(cè)試環(huán)境的實(shí)現(xiàn)步驟,通過Docker可以快速創(chuàng)建、部署和測(cè)試腳本,提高測(cè)試效率,具有一定的參考價(jià)值,感興趣的可以了解一下2023-08-08給debian的docker容器添加crontab定時(shí)任務(wù)
這篇文章主要介紹了給debian的docker容器添加crontab定時(shí)任務(wù)的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08Docker搭建prometheus(普羅米修斯)的方法步驟
phometheus:當(dāng)前一套非常流行的開源監(jiān)控和報(bào)警系統(tǒng),本文主要介紹了Docker搭建prometheus(普羅米修斯)的方法步驟,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02一次Docker中Redis連接暴增的問題排查實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了一次Docker中Redis連接暴增的問題排查的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06詳解docker 允許主機(jī)ssh連接到docker容器中
本篇文章主要介紹了詳解docker 允許主機(jī)ssh到docker容器中,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05docker pure-ftp 搭建ftp服務(wù)器的方法
本篇文章主要介紹了docker pure-ftp 搭建ftp服務(wù)器的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04Docker Compose一鍵部署LNMP環(huán)境詳細(xì)過程
LNMP通常包括Nginx作為Web服務(wù)器,MySQL作為數(shù)據(jù)庫(kù),PHP處理動(dòng)態(tài)內(nèi)容,可能還需要phpMyAdmin進(jìn)行數(shù)據(jù)庫(kù)管理,今天給大家介紹下Docker Compose一鍵部署LNMP環(huán)境的詳細(xì)過程,感興趣的朋友一起看看吧2025-04-04解決docker搭建gitlab時(shí)容器不停重啟的問題
這篇文章主要介紹了docker搭建gitlab時(shí)容器不停重啟的問題,當(dāng)用docker log 查看日志時(shí),發(fā)現(xiàn)問題是在于配置文件沒有權(quán)限創(chuàng)建的問題,本文給大家分享解決方案,感興趣的朋友一起看看吧2022-05-05