首页
游戏
影视
直播
广播
听书
音乐
图片
更多
看书
微视
主播
统计
友链
留言
关于
论坛
邮件
推荐
我的硬盘
我的搜索
我的记录
我的文件
我的图书
我的笔记
我的书签
我的微博
Search
1
在IC617中进行xa+vcs数模混仿
81 阅读
2
科普:Memory Compiler生成的Register file和SRAM有何区别?
73 阅读
3
virtuoso和empyrean alps模拟仿真和混仿教程
73 阅读
4
后仿中$setup,$hold与$setuphold
44 阅读
5
文档内容搜索哪家强? 15款文件搜索软件横向评测
35 阅读
默认分类
芯片市场
数字电路
芯片后端
模拟电路
芯片验证
原型与样片验证
算法与架构
DFX与量产封装
PC&Server OS设置
移动OS设置
软件方案
新浪备份
有道备份
登录
Search
标签搜索
python
Docker
vscode
linux
systemverilog
vcs
STM32
PyQT
EDA
FPGA
gvim
cadence
Alist
xilinx
UVM
uos
macos
package
MCU
risc-v
bennyhe
累计撰写
378
篇文章
累计收到
31
条评论
首页
栏目
默认分类
芯片市场
数字电路
芯片后端
模拟电路
芯片验证
原型与样片验证
算法与架构
DFX与量产封装
PC&Server OS设置
移动OS设置
软件方案
新浪备份
有道备份
页面
游戏
影视
直播
广播
听书
音乐
图片
看书
微视
主播
统计
友链
留言
关于
论坛
邮件
推荐
我的硬盘
我的搜索
我的记录
我的文件
我的图书
我的笔记
我的书签
我的微博
搜索到
378
篇与
的结果
2025-06-04
vscode插件和设置
vscode 推荐插件语言支持: C/C++、python、verilog/systemverilog、scala、 ARM assembly、linkscript、tcl、工具类支持: code runner、compare folder、differ&&merger、 hex ascii coverter、hex editor、indent-Rainbow、 koroFileheader 、mutiple clipboards 、 svn, write Timestamp、Rainbow highlight文档预览和编辑支持: office viewer、open in vim、drawio、 vscode neovim、media player、 Markdown All in one/markdown pdf。AI 支持:Trace AI和第三方工具连接支持:qt configuration、qt tools、pyqt intergrated使用vscode 预览一些开发文档,主要是为沉浸式在vscode 编程,不希望在各个窗口中切来切去,不过对于一些文件如果vscode 无法打开,安装一个Open selected resource in default editor,调用系统默认的编辑器打开文档(可以定义一个快捷键)。安装插件截图vscode 性能优化设置(防止vscode 卡顿)0 将 Language 改为:English(US);1.修复vs code 造成 rg.exe内存占用过大的问题search.followSymlinks: false2.修复vs code 造成 git.exe内存占用过大的问题git.enabled: falsegit.autorefresh: false3.然后继续搜索exclude,在Files:exclude下面有一个添加模式,输入**/node_modules,设置忽略node_modules这个文件夹;4 关闭自动保存功能注意:这样设置后会导致一些插件工作有问题vscode+vim 设置安装neovim 插件,设置neovim路径不过在vscode 中neovim 主要是两点不方便,一个对于定义环境变量的文件路径gf 操作,另外一个是块粘贴,最好还安装一个open in vim 插件,设置在vscode 中terminal 中打开然后定义一个快捷方式:这样如果需要使用块粘贴或者需要gf 打开文件路径,就切换按快捷键进入自动进入terminal 的gvim 中操作。windows vscode json 设置:{ "workbench.editorAssociations": { "{hexdiff}:/**/*.*": "hexEditor.hexedit" }, "vscode-neovim.neovimExecutablePaths.win32": "D:\\Program Files\\nvim-win64\\bin\\nvim.exe", "extensions.experimental.affinity": { "asvetliakov.vscode-neovim": 1 }, "browser-preview.chromeExecutable": "C:\\Users\\benny\\AppData\\Local\\Yandex\\YandexBrowser\\Application\\browser.exe", "browser-preview.startUrl": "https://cn.bing.com", "openInExternalApp.openMapper": [], "cmake.showOptionsMovedNotification": false, "systemverilogFormatter.veribleBuild": "win64", "open-in-vim.integrated-terminal.pathToShell": "D:\\Program Files (x86)\\Vim\\vim90\\gvim.exe", "workbench.settings.useSplitJSON": true, "json.schemas": [ ] }linux vscode json 设置"git.ignoreLegacyWarning": true, "vscode-neovim.neovimExecutablePaths.linux": "/data/ver/smarttool/thirdpart/nvim-linux64/bin/nvim", "writeTimestamp.bCustomFormat": "y-mm-dd HH:MM:SS", "workbench.editor.untitled.hint": "hidden", "fileheader.configObj": { "createFileTime": true, // 设置为true则为文件新建时候作为date,否则注释生成时间为date "autoAdd": true, // 自动生成注释,老是忘记的同学可以设置 "annotationStr": { "head": "///////////////////////////////////////////////////////////////////", "middle": "//", "end": "///////////////////////////////////////////////////////////////////", "use": true // 设置自定义注释可用 }, "headInsertLine": { "php": 2 } }, "fileheader.cursorMode": { "task": "", "param ": "", "function": "" }, "fileheader.customMade": { "copyright ": "Copyright © 2019-2023 INNOSTAR. All rights reserved ", "project name": "", "file name ": "", "author ": "", "abstraction ": "This is xxx file,using for xxx", "date ": "YYYY-MM-DD HH:mm:ss", "version ": "1.0", "platform ": "SuperBench 2.0", "history ": "created by somebody @YYYY-MM-DD HH:mm:ss v1.0", }, "extensions.experimental.affinity": { "asvetliakov.vscode-neovim": 1 }, "editor.detectIndentation": false, "indentRainbow.excludedLanguages": [ "log", "plaintext" ], "indentRainbow.ignoreErrorLanguages": [ "*", "markdown" ], "telemetry.enableCrashReporter": false, "workbench.iconTheme": "office-material-icon-theme", "window.zoomLevel": 1, "workbench.colorTheme": "Default High Contrast", "editor.largeFileOptimizations": false, "editor.minimap.enabled": false, "browser-preview.chromeExecutable": "/usr/bin/chrome", "open-in-vim.integrated-terminal.pathToShell": "/data/ver/smarttool/thirdpart/nvim-linux64/bin/nvim", "open-in-vim.linux.tilix.args": "", "terminal.integrated.localEchoExcludePrograms": [ "vim", "vi", "nano", "tmux", "nvim" ], "open-in-vim.restoreCursorAfterVim": true, "open-in-vim.useNeovim": true, }vscode配置shell环境把terminal改为git bash: "terminal.integrated.shell.windows": "D:\Programs\Git\bin\bash.exe"(未来想换为powershell的时候直接在settings.json里面删除这一行)插件下载: shellman, shellcheck, shell-format作者:峰20链接:https://www.jianshu.com/p/f02bfe37251f来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2025年06月04日
1 阅读
2 评论
0 点赞
2025-06-03
sv中的功能覆盖率常用用法
下面是ieee文档自我提取的一些用法,这一篇的用法,更加全面:covergroup常用用法;covergroup cg_0; cp_name coverpoint signal_name{ bins bin_name0 = {[0:63],65};//两个bin, [0:63],65, 只要有里面的值收到了,就全覆盖 bins bin_name1[] = { [127:150],[148:191] }; // 65个bin,即[]中的每一个值都是一个bin; bins bin_name2 = { [1000:$] };//$表示结尾,即最大值; bins bin_name3[] = default;//其他的所有值,都划分到other, 也是要全部都收到; } endgroupbins with的用法; cp_name: coverpoint signal_name{ bins bin_name[] = {[0:255]} with (item % 3 == 0);//0-255中3的余数为0的部分,构成bin; } 也可以将with的内容封装成function; coverpoint b { bins func[] = b with (myfunc(item)); }wildcard; wildcard bins g12_15 = { 4'b11?? };//只要在1100~1111间的任何一个踩到了,就收到了; wildcard bins g12_15_array[] = { 4'b11?? };//加了[], 会给每一个符合条件的都产生一个binignore_bins; 当没有明确定义某一个coverpoint的bins时,EDA仿真工具会生成和收集所有可能的bins,当其中某些bins在RTL中永远都不可能覆盖到,可以使用ignore_bins进行忽略covergroup cg23; coverpoint a { ignore_bins ignore_vals = {7,8};//不收集7,8; ignore_bins ignore_trans = (1=>3=>5);//不收集1,3,5这个序列; } endgroupillegal_bins; 某个值不可能收到,收到后报错;起到类似checker的作用;covergroup cg3; coverpoint b { illegal_bins bad_vals = {1,2,3}; illegal_bins bad_trans = (4=>5=>6); } endgroupcross;bit [31:0] a_var; bit [3:0] b_var; covergroup cov3 @(posedge clk); A: coverpoint a_var { bins yy[] = { [0:9] }; } CC: cross b_var, A;//两个coverpoint进行cross; endgroupcross中指定bins;int i,j; covergroup ct; coverpoint i { bins i[] = { [0:1] }; } coverpoint j { bins j[] = { [0:1] }; } x1: cross i,j; x2: cross i,j { ignore_bins i_zero = binsof(i) intersect { 0 };//i中不包含0; //binsof(x) intersect (y);//x的取值中,只收取为y的值; } endgroupbinsof 与 && / ||的组合;covergroup address_cov () @ (posedge ce); ADDRESS : coverpoint addr { bins addr0 = {0}; bins addr1 = {1}; } CMD : coverpoint cmd { bins READ = {0}; bins WRITE = {1}; bins IDLE = {2}; } CRS_USER_ADDR_CMD : cross ADDRESS, CMD { bins USER_ADDR0_READ = binsof(CMD) intersect {0};//默认的bins本来应该是2*3=6个,但是这里只定义了两个bins <addr0,READ> <addr1,READ> bins u2 = binsof(ADDRESS.addr0) || binsof(CMD.READ);// bins 数目为4,包括<addr0,READ>,<addr0,WRITE>,<addr0,IDLE>,<addr1,READ> bins u3 = binsof(ADDRESS.addr0) && binsof(CMD.READ);// bins 数目为1,包括<addr0,READ> } CRS_AUTO_ADDR_CMD : cross ADDRESS, CMD { ignore_bins AUTO_ADDR_READ = binsof(CMD) intersect {0}; ignore_bins AUTO_ADDR_WRITE = binsof(CMD) intersect {1} && binsof(ADDRESS) intersect{0}; }(原文链接:https://blog.csdn.net/bleauchat/article/details/90445713)matches; 感觉上像是一个下线; bins apple = X with (a+b < 257) matches 127;// 127~257? 带参数的covergroup;module mod_m; logic [31:0] a, b; covergroup cg(int cg_lim); coverpoint a; coverpoint b; aXb : cross a, b { function CrossQueueType myFunc1(int f_lim); for (int i = 0; i < f_lim; ++i) myFunc1.push_back('{i,i}); endfunction bins one = myFunc1(cg_lim); bins two = myFunc2(cg_lim); function CrossQueueType myFunc2(logic [31:0] f_lim); for (logic [31:0] i = 0; i < f_lim; ++i) myFunc2.push_back('{2*i,2*i}); endfunction } endgroup cg cg_inst = new(3);//每一个例化的时候再指定参数; endmodule结果如下:cg_inst.aXb.one = <0.0> , <1.1>,<2.2>cg_inst.aXb.two = <0.0>,<2.2>,<4.4>,instance;每个覆盖率例化的时候,是所有的合在一起收集,还是每个例化的地方,单独收集对应的覆盖率; 每个覆盖率单独例化的时候,可以指定最终呈现的名字;covergroup g1 (int w, string instComment) @(posedge clk) ; // track coverage information for each instance of g1 in addition // to the cumulative coverage information for covergroup type g1 option.per_instance = 1; // comment for each instance of this covergroup option.comment = instComment;一些基本的选项,通常不使用; //auto_bin_max, cross_auto_bin_max, goal, weight等等; //参考如下:(221条消息) [SV]SystemVerilog Coverage Options用法總結及案例_元直数字电路验证的博客-CSDN博客_coveragegroup option也可以参考table 19-2;设置采样时刻;一般来讲,是不指定采样时刻,然后再rm中比对通过后,手动sample, 可以保证采集数据的合理性和正确性;也可以指定拍拍采集;covergroup g1 (int w, string instComment) @(posedge clk) ;数据边界描述;[ $ : value ] => The set of values less than or equal to value[ value : $ ] => The set of values greater or equal to value————————————————版权声明:本文为CSDN博主「newyork major」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/zhangshangjie1/article/details/129121286
2025年06月03日
29 阅读
0 评论
0 点赞
2025-05-29
常见系统部署(2)
接上篇。5 个人相册系统部署参考http://www.bennyhe.cn/index.php/archives/916/。这里选择的是librephotoe,主要原因librephoto 可以使用本地路径的图片路径。LibrePhotos是一个自托管的开源照片管理与共享平台,其功能媲美Google Photos,但更加注重用户的隐私保护,并赋予用户对自己数据的完全控制权。更多功能特点如下:开放自由: LibrePhotos基于开源模式,提供免费服务。这意味着您可以根据自身需求灵活调整和优化软件。自主部署: 用户可以选择在自己的服务器上安装LibrePhotos,确保了照片和视频的安全存储,杜绝隐私泄露的可能性。强大功能: 通过集成多种先进技术工具(如ImageMagick、FFmpeg、ExifTool等),LibrePhotos不仅支持高质量的照片与视频处理,还具备高效的数据解析能力。此外,平台提供便捷的上传方式、智能整理分类以及直观友好的操作界面,极大提升了用户体验。智能化管理: 利用face_recognition库进行精准的人脸识别,并结合scikit-learn和hdbscan算法实现照片自动归类;借助im2txt和places365技术对图像内容及拍摄地点进行智能分析,优化搜索功能。安全可靠: 实现了数据的本地化存储,防止敏感信息外泄。同时,平台配备了严格的安全措施,包括但不限于强大的用户认证机制,确保只有合法用户才能访问相应的资源库。灵活共享: 用户可以轻松地与家人、朋友或团队成员分享自己的照片集,并可自定义不同的访问权限设置,满足多样化的需求。step1:git clone https://github.com/LibrePhotos/librephotos-docker.gitStep2: 修改配置cd librephotos-dockercp librephotos.env .envgvim .env修改里面的配置配置这两个路径到自己磁盘本地的图片存储路径data 路径可以设置为任意可以读写的路径,注意需要读写权限。如果下面没有需要自行添加该行配置timeZone=Asia/Shanghai // 时区,需要自行添加该行配置!userName=chen // 管理员用户名userPass=chen // 管理员密码adminEmail=chenyuge1130@sina.com // 管理员邮箱shhhhKey=123456 // 随机密钥httpPort=3000 // 暴露的服务端口dbName=librephotos // 数据库名dbUser=docker // 数据库用户dbPass=123456 // 数据库用户密码gunniWorkers=4 // 工人数量,每个工人预计消耗800MB RAMHEAVYWEIGHT_PROCESS=4 // 多线程扫描,每个工人预计消耗800MB RAM注意sudo docker compose -f docker-compose.yml up -d如果db 启动失败,可能原因是端口被占用, 在宝塔桌面查看db配置修改端口再次启动即可。也可以申请权限上传照片6 个人音乐系统部署Navidrome(项目地址:https://github.com/navidrome/navidrome)是一款开源的Web版音乐流媒体服务器,能让你通过浏览器/手机APP随时随地访问本地音乐库。它支持MP3/FLAC/WAV等主流格式,兼容Subsonic/Airsonic协议,堪称音乐发烧友的私人Spotify!多平台支持:网页端+安卓/iOS客户端全覆盖格式通吃:MP3到无损音质通通搞定智能转码:自动将高码率转成适合移动端播放的格式资源占用低:树莓派都能流畅运行元数据支持:自动匹配专辑封面和歌手信息 docker-Compose文件:version: '3' services: navidrome: image: deluan/navidrome:latest container_name: navidrome ports: - "4533:4533" volumes: - /docker/navidrome/data:/data - /你的音乐目录:/music:ro environment: - ND_ENABLETRANSCODINGCONFIG=true - ND_TRANSCODINGCACHESIZE=100MB restart: unless-stopped注意是采用宝塔桌面部署,可以再部署完后 宝塔docker 中找到navidrome 运行,修改配置添加这两个配置 - /docker/navidrome/data:/data - /你的音乐目录:/music:ro再启动中找到navidrome浏览器输入 http://服务器IP:4533,右上角Settings → Personal → Language选择简体中文,秒变中文界面!把音乐文件放进映射目录后,点击右上角扫描按钮,系统自动识别专辑信息。无损WAV文件会自动转码,手机端也能流畅播放。集成Last.fm访问 https://www.last.fm/api 创建API账户在Docker环境变量添加:ND_LASTFM_APIKEY: "你的API Key"ND_LASTFM_SECRET: "你的Shared Secret"同步Spotify歌单在Spotify开发者平台创建应用配置环境变量:ND_SPOTIFY_ID: "客户端ID"ND_SPOTIFY_SECRET: "客户端Secret"五、总结建议经过实测,Navidrome在树莓派4B上能流畅管理5万+歌曲库,手机APP播放延迟不到1秒。推荐给:• 有大量本地音乐资源的发烧友• 追求音质又不想被平台绑架的乐迷• 喜欢折腾开源项目的技术控注意事项:目前歌词支持较弱,建议搭配第三方歌词插件使用。7 个人书签系统部署宝塔桌面建立网页然后去https://github.com/helloxz/onenav 下载,解压到将config.simple.php修改为config.php并填写自己的站点信息,具体如下,修改修改的就修改我自己的。//用户名 define('USER','xiaoz'); //密码 define('PASSWORD','xiaoz.me'); //邮箱,用于后台Gravatar头像显示 define('EMAIL','337003006@qq.com'); //token参数,API需要使用 define('TOKEN','xiaoz.me'); //主题风格 define('TEMPLATE','default'); //站点信息 $site_setting = []; //站点标题 $site_setting['title'] = 'OneNav'; //文字Logo $site_setting['logo'] = 'OneNav'; //站点关键词 $site_setting['keywords'] = 'OneNav,OneNav导航,OneNav书签,开源导航,开源书签,简洁导航,云链接,个人导航,个人书签'; //站点描述 $site_setting['description'] = 'OneNav是一款使用PHP + SQLite3开发的简约导航/书签管理器,免费开源。';打开效果8 个人微博系统部署参考http://www.bennyhe.cn/index.php/archives/296/ ,安装好宝塔桌面,和docker 组件,按照这个http://www.bennyhe.cn/index.php/archives/33/ 修改docker 配置。搜索memos,然后直接安装登入效果
2025年05月29日
3 阅读
0 评论
0 点赞
2025-05-29
常见系统部署(1)
1 远程下载系统部署(1)迅雷网络问题无法正常访问 Docker 仓库,可以将镜像仓库替换为阿里云仓库:registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latest. 如下述命令所示:docker run -d \ --name=xunlei \ --hostname=GUDI-NAS \ --net=host \ -v /opt/xunlei/data:/xunlei/data \ -v /media/downloads:/xunlei/downloads \ --restart=unless-stopped \ --privileged \ registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latest接下来放行防火墙网页访问端口:firewall-cmd --zone=public --add-port=2345/tcp --permanentfirewall-cmd --reload完成配置。三、启用迅雷NAS访问 IP:2345 访问迅雷NAS网页。扫码登录:输入内测邀请码(经过测试 迅雷牛通 内测码有效):接下来就可以在手机 APP 中查看远程设备,设备名称格式为 群晖-hostname, 但是在没有下载过任何文件的情况下,使用远程设备取回云盘文件可能会出现无下载路径的情况,可以通过迅雷NAS的网页访问端先进行一次取回,接下来便可以使用远程设备功能进行云盘文件取回了。此外,使用命令 docker ps 查看当前容器运行情况。通过手机迅雷可以远程添加远程下载,但是手机迅雷有广告,可以使用内网远程,直接通过网页访问访问添加下载将127.0.0.1:2345 内网穿透到某个网址(2)aria2 aria2 是一个无图形界面下载工具,配置比较麻烦,但是也有集成aria2的gui 下载工具,比如motrix。https://motrix.app/motrix 也支持迅雷链接,bt、磁力、http下载器,windows、linux、macos都支持。安卓和ios有自己的aria2 server(有gui)工具。比如linux 中deb安装包双击安装好后的界面。远程访问可以直接打开下面网址的客户端https://aria2c.com/或者在chrome核心 浏览器安装插件aria2 explore添加 aria2 地址(3)gospeed。Gospeed 支持安装、ios、windows、linux、macos,还可以部署网页版https://gopeed.com/zh-CN可以直接安装deb 包,但是远程下载就需要使用chrome 核心的浏览器的gospeed插件内网穿透后,设置穿透后的ip 和端口即可但是手机端比如ios 没办法安装gospeed 的浏览器的插件,所以服务器端最好安装网页版的gospeed,网页版gospeed 有可运行运行程序,直接下载运行即可,然后任何设备内网穿透后直接打开网站皆可以下载2 影音系统部署影音系统有plex、emby、jellyfin、elfilm,使用kodix 也是可以,但是kodi 是本地使用,前面几个是服务器部署,网页或者客户端登入使用,不用在每个客户端都配置。推荐emby首先安装EmbyServer 4.7.14.0版本,安装命令如下docker 安装或者直接现在deb 安装包双击安装。docker 部署。sudo docker pull linuxserver/emby:4.7.14.0-ls180sudo docker run -d --name=emby -e PUID=1000 -e PGID=1000 -e TZ=Asia/Shanghai -p 8096:8096 -v /srv/dev-disk-by-uuid-91b16c01-2496-4993-aeee-a99c21d83597/share/appdata/emby/config:/config -v /srv/dev-disk-by-uuid-91b16c01-2496-4993-aeee-a99c21d83597/share/resources/tv:/tv -v /srv/dev-disk-by-uuid-91b16c01-2496-4993-aeee-a99c21d83597/share/resources/movie:/movies -v /opt/vc/lib:/opt/vc/lib --add-host api.themoviedb.org:13.224.161.90 --add-host api.themoviedb.org:13.35.67.86 --add-host www.themoviedb.org:54.192.151.79 --add-host api.themoviedb.org:52.85.247.30 --add-host api.themoviedb.org:52.85.247.33 --add-host api.themoviedb.org:52.85.247.69 --add-host api.themoviedb.org:52.85.247.81 --device /dev/dri:/dev/dri --device /dev/vchiq:/dev/vchiq --device /dev/video10:/dev/video10 --device /dev/video11:/dev/video11 --device /dev/video12:/dev/video12 --restart unless-stopped --privileged linuxserver/emby:4.7.14.0-ls180随后浏览器访问8096端口,第一次打开会有选择语言等选项。添加媒体库;因为之前在docker创建时已经设置了/movies和/tv路径,这里直接添加即可。修改admin登录密码并登录。随后扫描媒体库,即可看到NAS里之前下载的电影和电视剧。3 图书系统部署相比 Sumatra 与 Calibre,Koodo Reader 颜值很高,更加注重阅读体验,适合专注享受阅读内容的读者。Features支持阅读 epub , pdf, mobi, azw3 和 txt 格式的图书支持 Windows , macOS, Linux 和 网页版备份导出,网盘同步双页模式,单页模式,滚动模式听书功能,翻译功能目录,书签,笔记,书摘,书架,标签自定义字体,字体大小,行间距,阅读背景色,文字颜色触控屏手势支持文字高亮和下划线标记简体中文,繁体中文,英文,多语言支持修改docker 配置:为了加速从 ghcr.io 拉取镜像的速度,您可以将原始地址中的 ghcr.io 替换为米露云提供的镜像站 ghcr.milu.moe示例:docker pull ghcr.milu.moe/username/image:tagDockerHub对于 DockerHub 的镜像拉取,您可以配置 Docker 的 daemon.json 文件,添加国内镜像加速器地址{ "registry-mirrors": ["https://docker.milu.moe"]}JSON配置完成后,重启 Docker 服务即可生效利用宝塔桌面docker部署,在docker 部署直接搜索koodo ,然后点击安装即可网页打开效果4 bbs部署利用宝塔桌面部署,安装基本必须组件php、nginx、数据库比如:安装PHP版本,由于Discuz支持的最高PHP7.4版本环境,我们在面板中安装PHP7.0版本,搜索PHP,即可看到,然后点击安装即可在面板中搜索一下关键字Discuz,然后点击一键部署接下来在面板中开放一个端口:8089
2025年05月29日
0 阅读
1 评论
0 点赞
2025-05-29
Alist 预览完美解决
Alist+kkfileview一、安装kkFileView官方有docker镜像包文件,可以直接使用docker部署kkFileViewdocker run -d -it \ -p 8012:8012 \ -v /path/to/kkFileView:/opt/kkFileView-4.1.0/file \ --name kkFileView \ --restart unless-stopped \ keking/kkfileview #/path/to/kkFileView为你存放kkFileView预览文件的路径ShellScript打开http://ip:8012即可打开页面,可以搭配nginx实现反向代理,需要的自己实现二、设置内网穿透这一步就不详细介绍了介绍了,目前kkfileview 内网穿透的网址是http://bmark.bennyhe.cn。 alist 也要使用内网穿透,本地登入无法预览三:复制下面代码{"doc,docx,xls,xlsx,ppt,pptx": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "pdf": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "csv,tsv,dotm,xlt,xltm,dot,dotx,xlam,xla,pages,wps,dps,et,ett,wpt,odt,ods,ots,odp,otp,six,ott,fodt,fods": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "vsd,vsdx,wmf,emf,eps,ofd,rtf,xmind,bpmn,eml,drawio,dcm": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "epub": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "obj,3ds,stl,ply,gltf,glb,off,3dm,fbx,dae,wrl,3mf,ifc,brep,step,iges,fcstd,bim": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, "dwg,dxf,dwf,iges,igs,dwt,dng,ifc,dwfx,stl,cf2,plt": { "在线预览":"http://bmark.bennyhe.cn/onlinePreview?url=$eb_durl" }, 到这里:预览效果:这个只能预览不能在线编辑
2025年05月29日
0 阅读
0 评论
0 点赞
1
...
70
71
72
...
76