通用文件在线预览软件kkFileView

news2025/1/11 18:40:55

在这里插入图片描述

什么是 kkFileView ?

kkFileView 为文件文档在线预览解决方案,基本支持主流办公文档的在线预览,如 docdocxxlsxlsxpptpptxpdftxtziprar,图片,视频,音频等等,官方一直在扩展支持的文件类型,不断优化预览的效果。项目基于流行的 spring boot 搭建,提供restful 接口,适用于微服务场景。

如果你不想搭建,可以去官方的演示站点进行体验,地址:https://file.kkview.cn

在这里插入图片描述

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 kkfileview ,选择第一个 keking/kkfileview,版本选择 latest

本文写作时, latest 版本对应为 4.1.0;其实官方的版本已经到了 4.3.0,但不知道为何,镜像一直没有更新,官方提供了 Dockerfile,你可以选择自己打包;

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 kkfileview,并在其中建一个子文件夹 data

文件夹装载路径说明
docker/kkfileview/data/opt/kkFileView-4.1.0/file/demo存放上传文件

关于 装载路径,因为路径中涉及版本信息,当你不确定的时候,比较靠谱的方式是: 先不映射卷,然后上传一个文件,在日志中查看上传的路径,去掉文件名,就是我们要找的 装载路径

2023-10-20 13:49:42.138  INFO 1 --- [tp1224347463-20] cn.keking.web.controller.FileController  : 上传文件:/opt/kkFileView-4.1.0/file/demo/图片 1(压缩).png

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
80128012

默认没有对外暴露端口

在这里插入图片描述

需要点 + 号自行添加

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 kkfileview 
mkdir -p /volume1/docker/kkfileview/data

# 进入 kkfileview 目录
cd /volume1/docker/kkfileview

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name kkfileview \
   -p 8012:8012 \
   -v $(pwd)/data:/opt/kkFileView-4.1.0/file/demo \
   keking/kkfileview

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  kkfileview:
    image: keking/kkfileview
    container_name: kkfileview
    restart: unless-stopped
    ports:
      - 8012:8012
    volumes:
      - ./data:/opt/kkFileView-4.1.0/file/demo

然后执行下面的命令

# 新建文件夹 kkfileview 
mkdir -p /volume1/docker/kkfileview/data

# 进入 kkfileview 目录
cd /volume1/docker/kkfileview

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8012 就能看到主界面,支持预览在线文件,也支持上传后预览

在这里插入图片描述

先上传一个文件

在这里插入图片描述

然后就可以预览了

当然,因为我们挂载了目录,也可以把文档直接拷入 kkfileview/data 目录

回到页面刷新一下就能看到文件了

如果刷不出来,应该是版本有了变化,获取 装载路径 的方法请看前面的章节

详细的使用指南,可以去看官方的文档:https://kkfileview.keking.cn/zh-cn/docs/home.html

参考文档

kekingcn/kkFileView: Universal File Online Preview Project based on Spring-Boot
地址:https://github.com/kekingcn/kkFileView

kkFileView - 在线文件预览
地址:https://kkview.cn

kkFileView演示首页
地址:https://file.kkview.cn/

kkFileView - 在线文件预览
地址:https://kkfileview.keking.cn/zh-cn/docs/home.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1195350.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

系统分区、MSR -重装系统中的一点小知识

一、前言: 在使用优启通装载的U盘重装系统时,出现了一点问题,问题和解决方法以及涉及知识贴在下面。 以前大都是使用微软官方的镜像系统直接写入U盘,将其做成系统盘(媒体创建工具Media Creation Tool)&am…

Qt 自定义全局悬浮置顶按钮

Qt 自定义全局悬浮置顶按钮 效果 使用示例 ResetButton* resetBtn; resetBtn new ResetButton(); resetBtn->show(); resetBtn->move(QPoint(1000, 800)); connect(resetBtn, &ResetButton::clicked, this, &MainWindow::Reset);自行加入图片,透明…

第二证券:杯柄形态最佳买入点?

杯柄形状是遭到股票剖析师广泛应用的一个技能政策。它经过图表剖析来确定买入或卖出的机遇,被认为是股票剖析中非常重要的判别方法之一。关于杯柄形状,股票剖析师们最感喜好的当然是杯柄的买入点。那么,杯柄形状最佳的买入点是什么&#xff1…

阻容降压电阻应用

公式:Xc1/2πfC 电流:IU/Xc 举例:1uf金属化聚丙烯膜电容的容抗是3184欧姆。电流是70ma。 实际应用中根据工作电流去倒推算电容。

收集不同富文本编辑器的使用(vue3版本)

文章目录 一、ueditor(百度富文本编辑器)安装使用并二次封装组件 二、KindEditor下载文件新建组件及使用 一、ueditor(百度富文本编辑器) 参考 ueditor 和 vue-ueditor-wrap 这里直接使用 封装好的vue组件 vue-ueditor-wrap vue3版…

【Android】画面卡顿优化列表流畅度三之RecyclerView刷新机制notifyItemRangeInserted

经过长达一个多星期的反复渲染耗时记录,大致上有以下几个方面的地方可以优化: 列表组件RecyclerView刷新机制由notifyDataSetChanged()优化为notifyItemRangeInserted(),后期有必要也会使用notifyItemRangeRemoved、n…

node插件MongoDB(四)—— 库mongoose 的条件控制(三)

文章目录 前言一、运算符二、逻辑运算1. $or 逻辑或2. $and 逻辑与 三、正则匹配 前言 在mongodb 不能使用 > < > < ! 等运算符&#xff0c;需要使用替代符号。 一、运算符 > 使用 $gt< 使用 $lt> 使用 $gte< 使用 $lte! 使用 $ne 例子&#xff1a;获…

高性能网络编程 - 解读3种线程模型

文章目录 Pre线程模型1&#xff1a;传统阻塞 I/O 服务模型线程模型2&#xff1a;Reactor 模式Reactor 模式的基本设计思想Reactor 模式中的关键组成3种典型实现单 Reactor 单线程单 Reactor 多线程主从 Reactor 多线程 小结 线程模型3&#xff1a;Proactor 模型 Pre 高性能网络…

git命令之遭遇 ignore罕见问题解决

我先来讲讲背景 我的一些文件在ignore了&#xff0c;不会被提交到远程仓库&#xff0c;这时候我的远程仓库中是没有这几个文件的&#xff0c;这时候我如果使用 git reset 的话这时候除了那几个 ignore 的文件以外都被更新的&#xff0c;但是如果我不需要这几个被 ignore 的文件…

【操作系统】2011年408真题第 31 题

文章目录 题目描述解析单缓冲区双缓冲区 原题 & 解析 题目描述 31.某文件占10个磁盘块&#xff0c;现要把该文件磁盘块逐个读入主存缓冲区&#xff0c;并送用户区进行分析&#xff0c;假设一个缓冲区与一个磁盘块大小相同&#xff0c;把一个磁盘块读入缓冲区的时间为100μ…

MySQL | 数据库的表的增删改查【进阶】

MySQL | 数据库的表的增删改查【进阶】 文章目录 MySQL | 数据库的表的增删改查【进阶】系列文章目录本节目标&#xff1a;数据库约束约束类型NULL约束UNIQUE&#xff1a;唯一约束DEFAULT&#xff1a;默认值PRIMARY KEY&#xff1a;主键FOREIGN KEY&#xff1a;外键CHECK 表的设…

Wincc flexible SMART v4 报警蜂鸣器的基本使用方法示例

Wincc flexible SMART v4 报警蜂鸣器的基本使用方法示例 WinCC flexible SMART V4 SP1 软件针对SMART LINE V4 面板新增了触发蜂鸣器报警功能,但要注意该功能仅支持固件版本为 4.0.1.0 及以上的设备。 可通过配置以下两个系统函数来触发蜂鸣器: 举例说明: 组态离散量报警,在…

Leetcode刷题详解——全排列 II

1. 题目链接&#xff1a;47. 全排列 II 2. 题目描述&#xff1a; 给定一个可包含重复数字的序列 nums &#xff0c;按任意顺序 返回所有不重复的全排列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,2] 输出&#xff1a; [[1,1,2],[1,2,1],[2,1,1]]示例 2&#xff1a; 输…

Linux——进度条小程序|行缓冲区概念|使用 git 命令行

目录 1./r 和 /n 2.行缓冲区概念 3.使用 git 命令行 安装git 克隆到本地仓库 添加文件到仓库 提交到本地仓库 提交到远端仓库 1./r 和 /n 对于 /n 想必都不陌生&#xff0c;是换行的意思 而 /r 就是回车的意思 &#xff0c;回到一行的开始 在C/C中 \n通常都代表 回车…

Adobe ME下载、Media Encoder下载

Media Encoder 2021 是一款可以帮助Adobepremiere pro和Adobe After Effects的用户使用集成视频编码器进行创作的视频和音频编码软件。Media Encoder 2021 mac新版本中针对上一个版本进行了多方面的改进与优化&#xff0c;提升了软件的性能与支持文件格式提升&#xff0c;有需要…

物业管理服务预约小程序的效果如何

物业所涵盖的场景比较多&#xff0c;如小区住宅、办公楼、医院、度假区等&#xff0c;而所涵盖的业务也非常广&#xff0c;而在实际管理中&#xff0c;无论对外还是对内也存在一定难题&#xff1a; 1、品牌展示难、内部管理难 物业需求度比较广&#xff0c;设置跨区域也可以&…

数据库数据恢复—MSSQL报错“附加数据库错误823”如何恢复数据?

数据库故障&分析&#xff1a; MSSQL Server数据库比较常见的报错是“附加数据库错误823”。如果数据库有备份&#xff0c;只需要还原备份即可&#xff1b;如果无备份或者备份不可用&#xff0c;则需要使用专业的数据恢复手段去恢复数据。 MSSQL Server数据库出现“823”的报…

Java语言基础(下)

toString() 、String.valueof()、(String)&#xff1f; toString()&#xff1a;Object 类的方法&#xff0c;可以将一个对象转换为字符串类型String.valueOf()&#xff1a;可以将一个对象或基本数据类型转换为字符串类型 如果参数是对象&#xff0c;则调用 toString() 方法&am…

sql注入:延时注入python万能脚本

sql注入:延时注入python脚本 import requests import binascii def judgment_delay(complete_url):headers{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"}try:requ…

Zynq-Linux移植学习笔记之65- 国产ZYNQ在linux下usleep时间精度不准问题解决

1、背景介绍 采用复旦微的ZYNQ&#xff0c;跑linux操作系统&#xff0c;在应用程序中使用usleep进行延时时&#xff0c;发现存在10ms以下采用usleep试验都为10ms的情况 2、解决办法 使能设备树中的PS TTC设备&#xff0c;默认不是打开的 timere0024000 {compatible "s…