基于华为openEuler系统安装PDF查看器PdfDing【华为根技术】
基于华为openEuler系统安装PDF查看器PdfDing【华为根技术】
前言
随着国产操作系统的不断发展,华为openEuler系统凭借其高性能与开放生态,逐渐成为各行业应用的重要平台。在日常办公场景中,PDF文档的查看与处理是基础且高频的需求。本文将介绍如何在openEuler系统上安装与配置PDF查看器PdfDing,以提升办公效率并验证系统对常用办公软件的支持能力。
一、相关服务介绍
1.1 openEuler系统介绍
• 简介
openEuler是华为发起并主导的一个开源操作系统项目,它基于Linux内核开发,致力于为企业级应用提供安全、稳定、可靠的操作环境。自2019年正式开源以来,openEuler迅速吸引了全球众多开发者和技术爱好者的关注,并逐渐形成了一个活跃的开源社区。该系统不仅支持多种处理器架构(如x86、ARM等),而且通过持续的技术创新,在性能优化、安全性增强以及容器化支持等方面展现了显著的优势。
• 主要特点
• 开源性:openEuler遵循开源协议,允许任何个人或组织自由获取、使用、修改及分发系统代码,这极大地促进了技术创新与共享。
• 高性能与稳定性:通过对Linux内核进行深度优化,openEuler能够提供出色的运行效率和稳定性,满足企业级应用场景的需求。
• 安全性:提供了包括安全启动、数据加密在内的多重安全保障措施,确保用户数据的安全性。
• 容器化支持:兼容Docker和Kubernetes等容器技术,便于开发者构建、部署和管理容器化应用。
• 丰富的生态系统:拥有庞大的开发者社区和丰富的软件库,为用户提供广泛的软件支持和服务。
1.2 PdfDing介绍
• PdfDing 简介
PdfDing 是一个自托管的 PDF 管理、浏览和编辑工具,提供跨设备无缝的用户体验。它集成了现代阅读、注释、管理和分享功能,适合个人和团队高效处理 PDF 文档。
• PdfDing 特点
1. 跨设备浏览器端 PDF 阅读:支持多种设备上的浏览器无缝阅读 PDF。
2. 记忆阅读位置:自动记住上次阅读的位置,方便继续阅读。
3. 多级标签、收藏与归档:通过标签、星标和归档功能有效管理 PDF 收藏。
4. PDF 编辑功能:可添加注释、高亮和绘图,实现基础 PDF 编辑。
5. 导出高亮与评论:将 PDF 的高亮和评论内容导出到独立区域,便于整理与分享。
6. 干净直观的 UI:提供深色模式、反色模式、自定义主题和多种布局选择。
7. SSO 单点登录支持:通过 OIDC 实现安全便捷的统一身份认证。
8. 分享与访问控制:通过链接或二维码分享 PDF,并可设置访问权限。
9. Markdown 笔记支持:支持在 PDF 阅读过程中创建 Markdown 格式的笔记。
10. 阅读进度条:通过进度条快速查看每份 PDF 的阅读完成情况。
• 主要使用场景
1. 个人文档管理:整理和阅读电子书、论文、技术文档等个人 PDF 资料。
2. 团队知识共享:团队内部共享 PDF 并添加评论、笔记,提升协作效率。
3. 教学与学习:教师和学生用于阅读教材、批注作业、分享学习资料。
4. 企业文档处理:企业内部文档审阅、标注、归档和权限控制。
5. 远程办公支持:远程工作时,随时随地访问和编辑 PDF,保持工作连续性。
二、本次实践介绍
2.1 本次实践介绍
1.本次实践环境为个人测试环境,生产环境请谨慎;2.本次实践主要是在openEuler系统下安装PDF查看器PdfDing。
2.2 本次环境规划
本次环境规划如下所示:
服务器 |
HostName |
IP地址 |
操作系统 |
内核版本 |
部署项目 |
部署版本 |
VM虚拟机 |
openEuler |
192.168.3.83 |
openEuler 24.03 (LTS) |
6.6.0-28.0.0.34.oe2403.x86_64 |
PdfDing工具 |
v1.3.1 |
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
[root@openEuler ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: disabled)
Active: active (running) since Sat 2025-03-29 20:58:28 CST; 1 day 20h ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 1382 (dockerd)
Tasks: 10
Memory: 115.9M ()
CGroup: /system.slice/docker.service
└─1382 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
3.2 检查Docker版本
检查Docker版本,当前安装版本为 26.1.3。
[root@openEuler ~]# docker -v
Docker version 26.1.3, build b72abbb
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
[root@openEuler ~]# docker compose version
Docker Compose version v2.27.0
四、拉取PdfDing镜像
执行以下命令,拉取PdfDing容器镜像,使用当前最新镜像版本v1.3.1。
[root@openEuler ~]# docker pull mrmn/pdfding:v1.3.1
v1.3.1: Pulling from mrmn/pdfding
f18232174bc9: Pull complete
25025a4218ee: Pull complete
d1403b238159: Pull complete
b6b6003920d8: Pull complete
2babb5560240: Pull complete
fc8ac2c8ba46: Pull complete
0fa7b7db7923: Pull complete
4f4fb700ef54: Pull complete
b8ef5de78410: Pull complete
3dc67d9d525b: Pull complete
Digest: sha256:d991e7224b94fd9fdc89ec889dcfaa1d02721689ed610d84b12b5d6d37a18d85
Status: Downloaded newer image for mrmn/pdfding:v1.3.1
docker.io/mrmn/pdfding:v1.3.1
五、部署PdfDing应用
5.1 创建挂载目录
执行以下命令,创建PdfDing部署目录/data/pdfding 。
mkdir -p /data/pdfding/{media,sqlite_data} && cd /data/pdfding
目录授权说明:由于当前为本地测试环境,可暂时授予完全权限;但请在生产环境中谨慎配置权限,确保安全性。
chmod -R 777 /data/pdfding/
5.2 编辑docker-compose.yaml文件
使用docker-cli创建PdfDings容器,可参考以下命令,宿主机映射端口可自行修改。
docker run --name pdfding \
-p 8000:8000 \
-v sqlite_data:/home/nonroot/pdfding/db -v media:/home/nonroot/pdfding/media \
-e HOST_NAME=127.0.0.1 -e SECRET_KEY=some_secret -e CSRF_COOKIE_SECURE=FALSE -e SESSION_COOKIE_SECURE=FALSE \
-d \
mrmn/pdfding:v1.3.1
本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。部署文件中的宿主机映射端口可自定义修改,注意防止宿主机端口冲突。HOST_NAME需要修改为自己服务器的IP地址,如果设置错误会导致无法访问。
vim docker-compose.yaml
version: '3.9'
services:
pdfding:
image: 'mrmn/pdfding:v1.3.1'
restart: always
environment:
- SESSION_COOKIE_SECURE=FALSE
- CSRF_COOKIE_SECURE=FALSE
- SECRET_KEY=a1b2c3d4e5f67890g1h2i3j4k5l6m7n8o9p0q1r2s3t4u5v6w7x8y9z01234567890
- HOST_NAME=192.168.3.81
volumes:
- /data/pdfding/media:/home/nonroot/pdfding/media
- /data/pdfding/sqlite_data:/home/nonroot/pdfding/db
ports:
- '8000:8000'
container_name: pdfding
5.3 创建PdfDing容器
执行以下命令,使用docker-compose.yaml文件创建PdfDing容器。
docker compose up -d
null
5.4 检查PdfDing容器状态
检查PdfDing容器状态,确保PdfDing容器正常启动。
[root@openEuler pdfding]# docker compose ps
WARN[0000] /data/pdfding/docker-compose.yaml: `version` is obsolete
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
pdfding mrmn/pdfding:v1.3.1 "./bootstrap.sh" pdfding 4 seconds ago Up 3 seconds 0.0.0.0:8000->8000/tcp, :::8000->8000/tcp
5.5 检查PdfDing容器日志
检查PdfDing容器日志,确保PdfDing服务正常运行。
docker compose logs
null
5.6 安全设置
• 关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
• 停止本地防火墙
systemctl stop firewalld
systemctl disable firewalld
六、访问PdfDing服务
访问地址:http://服务器IP地址:8000,将IP替换为自己服务器的IP地址,进入到PdfDing登录页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。
null
点击右上角的注册选项,在注册页自定义填写账号信息。
null
null
null
七、PdfDing基本使用
7.1 上传文档
点击PdfDing首页的“adding”选项,进入文档上传页面。
null
填写上传文档的名称、标签、描述信息等,将本地文档上传到PdfDing。
null
null
7.2 在线浏览文件
双击上传的PDF文件名后,可在线浏览其内容,效果如下所示:
null
7.3 文本处理工具
在文档预览页面,我们可以点击“Highlight”图标,选择不同颜色后,对重要句子或段落进行高亮显示。
null
文本注释功能:点击文本图标,可以在文档界面任意处进行编辑文字注释。
null
7.4 分享功能
在文件列表中,选择该文件【share】选项后,进行文件分享。
null
配置文件共享参数,填写文件共享名、描述信息、共享密码、最大视图数、过期时间、删除范围。其中1d0h22m 表示在 1 天 0 小时 22 分钟进行过期或删除。
null
null
7.5 浏览共享文件
查看共享文件列表:在左侧菜单栏,点击“share”模块,在文件列表中,双击刚才的共享文件名称。
null
可通过扫共享详情页的二维码访问,也可以通过共享链接打开网页访问。
null
null
八、总结
通过本次基于华为openEuler系统的PDF查看器PdfDing的安装实践,进一步熟悉了openEuler系统的软件安装机制和相关依赖管理,同时也加深了对国产操作系统生态支持的理解。PdfDing作为一款轻量级、高效的PDF阅读工具,能够顺利在openEuler系统上运行,体现了华为根技术生态的开放性与兼容性。此次安装过程不仅验证了openEuler系统在日常办公应用中的实用性,也展示了其在推动国产化软件适配方面的积极进展。通过本次实践,增强了对国产操作系统应用场景的信心,也为后续更多办公软件的适配与使用提供了参考经验。
- 点赞
- 收藏
- 关注作者
评论(0)