通用文件在线预览软件kkFileView

在这里插入图片描述

什么是 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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何配置《动手学强化学习》的环境

如何配置《动手学强化学习》的环境 网站:https://hrl.boyuai.com/chapter/intro github仓库:https://github.com/boyu-ai/Hands-on-RL/tree/main 可以看到该教程要求使用gym0.18.3版本的gym库,本教程可以用于解决绝大多数需要使用Pendulum-…

科力雷达Lidar使用指南

科力2D Lidar使用指南 作者: Herman Ye Galbot Auromix 版本: V1.0 测试环境: Ubuntu20.04(x86) PC 以及 Ubuntu20.04(Arm) Nvidia Orin 更新日期: 2023/11/11 注1: 本文内容中的硬件由 Galbot 提供支持。 注2&#x…

力扣100题——子串

560.和为k的子数组 这道题目不是滑动窗口的类型,因为长度并不是固定的。(好的,我在说废话) 注意题目要求是子数组,且是连贯的。那这里的话,解法有很多,最简单的就是暴力解法,但在这…

无缝集成GORM与Go Web框架

探索GORM与流行的Go Web框架之间的和谐集成,以实现高效的数据管理 高效的数据管理是每个成功的Web应用程序的基础。GORM,多才多艺的Go对象关系映射库,与流行的Go Web框架非常搭配,提供了无缝集成,简化了数据交互。本指…

Git可视化界面的操作,SSH协议的以及IDEA集成Git

目录 一. Git可视化界面的操作 二. gitee的ssh key 2.1 SSH协议 2.2 ssh key 三. IDEA集成Git 3.1 分享项目 3.2 下载项目 一. Git可视化界面的操作 上一篇博客只用到了git的命令窗口,现在就来看看可视化窗口要怎么操作。 点击Git GUI Here GUI界面 在g…

【Git】git常用命令大全

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《Git》。🎯🎯 &#x1f449…

afsim 下载链接

afsim是一个通用的建模框架,能够构建典型的虚拟威胁环境和相关模型。能够以可视化形式分析软件仿真结果,显示平台、路由、传感器区域等内容,能够基于事件生成图表,进行结果统计,能够按类型进行统计分析。 苦于网上没有…

【Git】Git分支与应用分支

一,Git分支 1.1 理解Git分支 在 Git 中,分支是指一个独立的代码线,并且可以在这个分支上添加、修改和删除文件,同时作为另一个独立的代码线存在。一个仓库可以有多个分支,不同的分支可以独立开发不同的功能&#xff0…

maven教程

1. Maven概述 1.1 Maven的功能 1、Maven 作为依赖管理工具 随着我们使用越来越多的框架,或者框架封装程度越来越高,项目中使用的jar包也越来越多。项目中,一个模块里面用到上百个jar包是非常正常的。jar包所属技术的官网通常是英文界面&am…

极智芯 | 存算一体 弯道超车的希望

欢迎关注我的公众号 [极智视界],获取我的更多经验分享 大家好,我是极智视界,本文分享一下 存算一体 弯道超车的希望。 邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码和资源下载,链接:…

【C++笔记】优先级队列priority_queue的模拟实现

【C笔记】优先级队列priority_queue的模拟实现 一、优先级队列的介绍与使用方式1.1、优先级队列介绍1.2、优先级队列的常见使用 二、优先级队列的模拟实现1.0、仿函数的介绍1.1、构造函数1.2、优先级队列的插入push1.3、优先级队列的删除(删除堆顶元素)1.4、获取堆顶元素1.5、判…

MATLAB仿真通信系统的眼图

eyediagram eyediagram(complex(used_i,used_q),1100)

【Java 进阶篇】Java 中 JQuery 对象和 JS 对象:区别与转换

在前端开发中,经常会涉及到 JavaScript(JS)和 jQuery 的使用。这两者都是前端开发中非常重要的工具,但它们之间存在一些区别。本文将详细介绍 Java 中的 JQuery 对象和 JS 对象的区别,并讨论它们之间的转换方法。 1. …

Amazon Aurora MySQL 与 Amazon Redshift 的 Zero ETL 集成已全面可用,一起轻松上手!

“数据是应用、流程和商业决策的核心。” 亚马逊云科技数据库、 数据分析和机器学习全球副总裁 Swami Sivasubramanian 如今,客户常用的数据传输模式是建立从 Amazon Aurora 到 Amazon Redshift 的数据管道。这些解决方案能够帮助客户获得新的见解,进而…

【C/C++笔试练习】内联函数、函数重载、调用构造函数的次数、赋值运算符重载、静态成员函数、析构函数、模板定义、最近公共祖先、求最大连续bit数

文章目录 C/C笔试练习选择部分(1)内联函数(2)函数重载(3)调用构造函数的次数(4)赋值运算符重载(5)静态成员函数(6)调用构造函数的次数…

微信小程序和H5之间互相跳转、互相传值

微信小程序和内嵌 H5 之间来回跳转,来回交互。 1 微信小程序跳转 H5 1.2. web-view 微信小程序官方提供了 web-view 组件来实现微信小程序跳转到 H5 页面,实现的方式也很简单,具体实现方式如下: 1、新建一个页面用来单独存放 we…

网页推理游戏

目录 python challenge (0) (1) (2) The Riddle (1) (2) (3) (4) Nazo (1)…

宋浩高等数学笔记(三)微分中值定理

首先是考研大纲包含的内容: 1.理解并会用罗尔(Rolle)定理、拉格朗日(Lagrange)中值定理和泰勒(Taylor)定理,了解并会用柯西(Cauchy)中值定理. 2.掌握用洛必达法则求未定式极限的方法. 3.理解函数的极值概念,掌握用导数判断函数的单调性和求函…

事务AOP

1事务: 事务是一组操作的集合,它是一个不可分割的工作单位。事务会把所有的操作作为一个整体,一起向数 据库提交或者是撤销操作请求。所以这组操作要么同时成功,要么同时失败。 1.1实现:Transactional注解 Transact…

基于SSM的网络书店商城

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…