当前位置: 首页 > news >正文

极速文件预览!轻松部署 kkFileView 于 Docker 中!

大家好,这几天闲的难受,决定给自己找点事做。博主的项目中有个文件预览的小需求,原有方案是想将文件转换成 PDF 进行预览。本着能借鉴就绝对不自己写的原则。今天就让我们简单试用一下 kkFileView 文件预览服务,一起探索它的强大功能吧!

一、kkFileView简介

kkFileView 是一个基于 Spring Boot 框架构建的文档在线预览项目解决方案。它支持多种文件格式的在线预览,包括但不限于 Office 文档、PDF、TXT、图片、视频、音频等,甚至是CAD文件和3D模型的预览。其核心功能是将文件转换为 HTML 页面,并通过 Web 前端进行展示,从而实现跨平台、跨终端的文件预览。

在这里插入图片描述

二、kkFileView在Docker容器环境环境运行

  • 拉取镜像
# 网络环境方便访问docker中央仓库 
docker pull keking/kkfileview:4.1.0
# 网络环境不方便访问docker中央仓库 
wget https://kkfileview.keking.cn/kkFileView-4.1.0-docker.tar 
docker load -i kkFileView-4.1.0-docker.tar
  • 运行容器
    docker run -d -it -p 8012:8012 keking/kkfileview
  • 将配置文件复制到宿主机中
    docker cp 容器ID:/opt/kkFileView-4.1.0/config /kim/kkFileView/config
  • 停止并删除我们上边临时启动的kkFileView容器,再次运行容器
docker run -d -it -p 8012:8012 --name kkfileview  --restart=always \  -v /kim/kkFileView/config:/opt/kkFileView-4.1.0/config \  -v /kim/kkFileView/file:/opt/kkFileView-4.1.0/file \  keking/kkfileview
  • 查看运行日志,启动成功。
    在这里插入图片描述

二、kkFileView使用

  • 访问日志中的演示地址
    在这里插入图片描述

具体怎么使用,网站上已经介绍的很详细了,这里不再赘述。

二、kkFileView总结

这个服务是基于springboot部署的java服务,本质上就是将各种文件转换成pdf文件、图片文件、文字、快速展示在浏览器中,可以将此服务搭配博主之前文章中搭建的Minio文件服务器一起使用,感兴趣的小伙伴可以去研究一下源码。

相关文章:

极速文件预览!轻松部署 kkFileView 于 Docker 中!

大家好,这几天闲的难受,决定给自己找点事做。博主的项目中有个文件预览的小需求,原有方案是想将文件转换成 PDF 进行预览。本着能借鉴就绝对不自己写的原则。今天就让我们简单试用一下 kkFileView 文件预览服务,一起探索它的强大功…...

某验九宫格分类识别

注意,本文只提供学习的思路,严禁违反法律以及破坏信息系统等行为,本文只提供思路 如有侵犯,请联系作者下架 九宫格分类如下 这种就是最简单的分类识别了,用迁移学习resnet训练即可,下面来看成品 训练代码查看往期文章中就有,部分代码如下: DEVICE = torch.device(…...

未来展望:观测云技术的发展与企业业务的融合

随着技术的不断进步,观测云作为企业数据监控和分析的关键工具,其发展与企业业务的融合趋势显得尤为重要。在未来,观测云技术将如何演进,以及它将如何更深层次地与企业业务相融合,是值得我们深入探讨的问题。 首先&…...

day6JS-DOM(文档对象模型)

DOM树 DOM 操作 1. 获取元素 1.1 根据id名获取元素 document.getElementById("id名"); 案例&#xff1a; <body><div id"box">div盒子</div><h1>一级标题</h1><script>console.log(document.getElementById(&quo…...

MySQL列表分区分区表

什么是列表分区分区表&#xff1f; 列表分区是一种根据某个列的离散值将表数据分割成多个分区的分区方式。在列表分区中&#xff0c;每个分区都有自己的离散值集合&#xff0c;当插入数据时&#xff0c;MySQL会根据指定的列值将数据分配到相应的分区中。这种分区方式可以使得表…...

qt打包程序方法(非常好用)

1.下载 Index of /official_releases/qt-installer-framework/4.6.1 bi...

IP地址管理:优化网络布局与提升效率

在日益复杂的网络环境中&#xff0c;IP地址管理成为了网络管理员日常工作中不可或缺的一部分。有效的IP地址管理不仅能够优化网络布局&#xff0c;提升网络运行效率&#xff0c;还能确保网络安全和稳定性。本文将探讨IP地址管理的重要性、实施策略以及最佳实践。 一、IP地址管…...

老古董Lisp实用主义入门教程(5):好奇先生用Lisp探索Lisp

鲁莽先生什么都不管 鲁莽先生打开电脑&#xff0c;安装一堆东西&#xff0c;噼里啪啦敲了一堆代码&#xff0c;叽里呱啦说了一堆话&#xff0c;然后累了就回家睡觉了。 这可把好奇先生的兴趣勾起来&#xff0c;他怎么也睡不着。好奇先生打开电脑&#xff0c;看了看鲁莽先生留…...

linux文件——用户缓冲区——概念深度理解、IO模拟实现

前言&#xff1a;本篇文章主要讲解文件缓冲区。 讲解的方式是通过抛出问题&#xff0c; 然后通过分析问题&#xff0c; 将缓冲区的概念与原理一步一步地讲解。同时&#xff0c; 本节内容在最后一部分还会带友友们模拟实现一下c语言的printf&#xff0c; fprintf接口&#xff0c…...

Selenium模拟鼠标滚动页面:实现自动化测试中的页面交互

Selenium模拟鼠标滚动页面&#xff1a;实现自动化测试中的页面交互 在进行网页自动化测试时&#xff0c;经常需要模拟用户的滚动行为来加载更多内容或触发页面上的某些交互。Selenium WebDriver提供了强大的工具来模拟这些用户行为&#xff0c;包括鼠标滚动。本文将介绍如何使…...

Eureka原理与实践:构建高效的微服务架构

Eureka原理与实践&#xff1a;构建高效的微服务架构 Eureka的核心原理Eureka Server&#xff1a;服务注册中心Eureka Client&#xff1a;服务提供者与服务消费者 Eureka的实践应用集成Eureka到Spring Cloud项目中创建Eureka Server创建Eureka Client&#xff08;服务提供者&…...

OpenJDK 和 OracleJDK 的区别、下载方式

OpenJDK 和 OracleJDK 都是 Java 开发套件 (JDK)&#xff0c;用于开发和运行 Java 应用程序。它们之间的主要区别如下&#xff1a; 许可证和使用限制&#xff1a; OpenJDK&#xff1a;由 OpenJDK 社区开发和维护&#xff0c;基于 GPL v2 with Classpath Exception 许可证&#…...

arthas源码刨析:arthas-core (2)

文章目录 attach JVMagent**ArthasBootstrap** arthas-core的启动可以从上一篇做参考 参考 pom&#xff0c;即启动是调用的 Arthas 的 main 方法 attach JVM JVM提供了 Java Attach 功能&#xff0c;能够让客户端与目标JVM进行通讯从而获取JVM运行时的数据&#xff0c;甚至可以…...

【分享】格力手机色界G0245D 刷REC、root、 救砖、第三方rom教程和资源

开门见山 帮别人弄了一台 格力G0245D&#xff0c;把找到的资源和教程分享一下 教程 这个写的很详细了格力手机色界G0245D-Root-最简指南 不过教程里刷rec这一步漏了加上电源键&#xff0c;加上就行了。 附加参考&#xff1a;格力手机2刷机 格力手机二代刷机 GREE G0215D刷机…...

开学必备清单来啦!大学好物合集推荐!每一个都能帮你提升幸福感

随着开学季的到来&#xff0c;好多学生都在忙着准备各类学习与生活必需品&#xff0c;以迎接新的大学生活到来。以下是一些开学季必备的好物推荐&#xff0c;每一个都很实用&#xff0c;可以帮你提升学习和生活的幸福感&#xff01; 1、西圣电容笔 一句话推荐&#xff1a;公认…...

已解决:javax.xml.transform.TransformerFactoryConfigurationError 异常的正确解决方法,亲测有效!!!

1. 问题描述 javax.xml.transform.TransformerFactoryConfigurationError 是在使用 Java 的 XML 处理库时&#xff0c;配置 TransformerFactory 出错时抛出的异常。通常&#xff0c;这个异常发生在应用程序试图创建一个 TransformerFactory 实例时&#xff0c;由于无法找到合适…...

商品价格与优惠信息在API返回值中的位置

在API返回值中&#xff0c;商品价格与优惠信息的具体位置可能因不同的电商平台和API设计而有所不同。然而&#xff0c;一般来说&#xff0c;这些信息会以结构化的方式呈现&#xff0c;通常包含在一个包含多个字段的JSON对象或XML文档中。以下是根据多个电商平台&#xff08;如阿…...

Oracle Index Partition索引分区的管理

Oracle索引分区的管理是数据库管理中的重要任务之一&#xff0c;它涉及索引的创建、维护、重建以及优化等多个方面。以下是对Oracle索引分区管理的详细解析&#xff1a; 一、索引分区的概念 索引分区&#xff08;Partitioned Index&#xff09;是针对分区表而言的&#xff0c…...

统信UOS系统访问windows共享目录

问题背景 当我们使用UOS系统的时候&#xff0c;想要访问windows系统的一些资料并将其拷贝下来使用的话&#xff0c;应该怎么操作呢&#xff1f;这个需求是可以实现的&#xff0c;统信UOS系统是基于Linux系统开发的&#xff0c;Linux系统和windows系统之间可以通过SMB协议来共享…...

单一职责原则与REST API设计:如何定义清晰的资源与职责

在软件设计中&#xff0c;单一职责原则&#xff08;Single Responsibility Principle, SRP&#xff09;和 REST API 设计是两个重要的概念。单一职责原则是一种设计原则&#xff0c;它强调一个类或模块应当只有一个单一的职责&#xff0c;这有助于提高系统的可维护性和扩展性。…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

2023赣州旅游投资集团

单选题 1.“不登高山&#xff0c;不知天之高也&#xff1b;不临深溪&#xff0c;不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...