当前位置: 首页 > 后端技术 > Node.js

教你搭建Raneto知识库框架(一)

时间:2023-04-03 15:12:35 Node.js

作者:YoyoDoingFairy来源:恒生LIGHT云社区需求背景:我们是一个团队,组长想搭建一个考虑数据的知识库框架安全,不要太复杂,可以快速设置和使用(因为我们没有丰富的机器资源:daku:)。可见最后的任务交给了我。技术选型:目前已知有一些好的框架可以作为知识库,反馈给组长,但是都被回调了。例如:语雀:虽然用户体验极佳,但老板觉得数据不安全,毕竟是阿里巴巴的云知识库。Graphite文档:原因也是从安全角度考虑。毕竟,石墨文档也是一个云知识库。Confluence:10人以下免费,10人以上就要花钱,而且设置和部署都比较复杂。腾讯文档等,都是从数据安全和资源维护的角度出发。就在我苦恼的时候,一个小巧玲珑的画框映入眼帘,赫然是下一位——拉内托。话不多说,“翠花,干货来了!”1.初始RanetoRaneto官网:http://docs.raneto.com/RanetoGit地址:https://github.com/gilbitron/Raneto/(看看这个简洁大气的网站布局如下:Raneto是Node.js的一个知识库平台,它使用静态Markdown文件来支持知识库。Raneto可以称为“静态站点生成器”,因为它不需要数据库。你所有的内容都存储在contentMarkdown中的文件夹中(.md)文件,整个存储库结构和内容由Raneto生成。这很棒,因为它是:简单:您可以使用您最喜欢的文本编辑器创建和管理整个知识库Flat:Raneto是一个“平面文件”CMS,meaningnodatabaseissues,nomysqlqueries,nothingfast:Raneto非常轻量级,不使用数据库,所以非常快。这个小东西很符合我们的需求,支持markdown,不需要部署数据库或者一些服务。基于Node.js,非常方便,让我们开始工作吧。2、下载Node.js由于是基于Node.js的,所以我们需要先安装Node.js。首先根据系统下载相应的Node.js。Node.js官网:https://nodejs.org/en/download/不过考虑到官网链接有时不稳定,一般官网都是最新版本,所以我们可能不会使用这么新的版本,不急,这里给大家提供一个以前的版本下载资源:https://nodejs.org/zh-cn/download/releases/小仙这里使用的版本是LinuxV10.12.0。3.安装Node.js首先下载需要的Node.js。可以选择官网下载,也可以在上面提到的历史版本中选择根据系统下载。下面以安装LinuxV10.12.0为例:[root@yyzsx/]#cd/usr/local/src/[root@yyzsxsrc]#wgethttp://nodejs.org/dist/v10.12.0/node-v10.12.0.tar.gz--2021-07-0802:50:32--http://nodejs.org/dist/v10.12.0/node-v10.12.0.tar.gz解析主机nodejs.org(nodejs.org)...104.20.23.46,104.20.22.46,2606:4700:10::6814:172e,...正在连接到nodejs.org(nodejs.org)|104.20.23.46|:80...已连接.已发送HTTP请求,等待响应...301永久移动位置:https://nodejs.org/dist/v10.12.0/node-v10.12.0.tar.gz[关注新网址]--2021-07-0802:51:36--https://nodejs.org/dist/v10.12.0/node-v10.12.0.tar.gz正在连接到nodejs.org(nodejs.org)|104.20.23.46|:443。..连接的。已发送HTTP请求,等待响应...200OK长度:36277157(35M)[application/gzip]保存到:“node-v10.12.0.tar.gz”100%[=============================================================================================================================>]36,277,157733KB/sin50s2021-07-0802:52:26(715KB/s)-saved"node-v10.12.0.tar.gz”[36277157/36277157])#unziptarzxvfnode-v0.10.24.tar.gz[root@yyzsxsrc]#tarzxvfnode-v10.12.0.tar.gz#compile[root@yyzsxsrc]#cdnode-v10.12.0[root@yyzsxnode-v10.12.0]#./configure--prefix=/usr/local/node/10.12.0[root@yyzsxnode-v10.12.0]#make[root@yyzsxnode-v10.12.0]#makeinstall#environmentvariablevim/etc/profile[root@yyzsxnode-v10.12.0]#vim/etc/profile#setfornodejsexportNODE_HOME=/usr/local/node/10.12.0exportPATH=$NODE_HOME/bin:$PATH#:wq保存退出,编译/etc/profile使配置生效source/etc/profile[root@yyzsxnode-v10.12.0]#source/etc/profile#verify:node-v[root@yyzsxnode-v10.12.0]#node-vv10.12.0#npm模块地址/usr/local/node/0.10.24/lib/node_modules/编译下载时,可能下载会很慢或者下载失败。您可以参考下一部分[4。故障排除--Node.js安装失败,npm下载速度慢等】其他系统(windows、MacOS等)的安装可参考:Node.js安装配置4、故障排除--安装失败Node.js、npm下载慢等问题有些同学可能在自己的机器上安装了比较老的Node.js,或者安装的Node.js与机器上原来的npm版本不一致,那么就会报各种错误。如果遇到npm版本不兼容,可以考虑先卸载Node.js,再看Node.js和npm版本对比。Node.js和npm版本对比)版本不一致,或者之前有一个旧的Node.js,需要先卸载再安装。卸载Node.js:[root@yyzsx/]#yumremovenodejsnpm–y/usr/local/lib删除所有node和node_modules文件夹/usr/local/include删除所有node和node_modules文件夹/usr/local/bin删除可执行文件节点删除文件:/usr/local/bin/npm删除:/usr/local/share/man/man1/node.1删除:/usr/local/lib/dtrace/node.d删除:rm-rf/home/[homedir]/.npm删除:rm-rf/home/root/.npm查看~文件夹中的“local”“lib”“include”文件夹,然后删除所有“node”和“node_modules”文件夹即可使用以下命令找到:find~/-namenodefind~/-namenode_modules关于npm下载速度太慢或失败处理:npm的默认仓库地址是:http://registry.npmjs.org因为npm的远程服务器地处国外,所以有时难免访问速度过慢甚至无法访问。查看当前npm仓库地址命令:npmconfiggetregistry不要灰心,淘宝已经为我们搭建了国内的npm服务器,目前它每隔10分钟将国外npm仓库的所有内容“传输”回国内服务器,这样我们就可以直接访问淘宝国内的服务器了。它的地址是:https://registry.npm.taobao.org所以下载慢或者下载失败有两种解决方法:方法一:直接安装淘宝提供的cnpm,服务器地址改成淘宝国内地址。命令:npminstall-gcnpm--registry=https://registry.npm.taobao.org这样以后使用npm的时候需要换成cnpm。方法二(推荐):将npm仓库地址替换成淘宝镜像地址命令:npmconfigsetregistryhttps://registry.npm.taobao.org查看是否修改成功:[root@yyzsx/]#npmconfiggetregistryhttps://registry.npm.taobao.org/[root@yyzsx/]#显示我们设置的淘宝镜像地址,说明修改成功。这样以后还是会用到npm命令,但是实际上是从淘宝国内的服务器上下载的。下面介绍几个常用的Node模块管理命令:显示版本:npm-vinstallmodule:npminstallxxx(模块名)全局安装xx模块:npminstall-gxxx(模块名)显示模块详情:npmshowxxx(modulename)列出已安装的模块:npmlist升级当前目录下的所有模块:npmupdate升级当前目录下的指定模块:npmupdatexxx(模块名)升级全局安装的模块:npmupdate-gxxx(模块名)删除指定的module:npmuninstallxxx(modulename)5.下载并安装Raneto经过1-4步,环境就基本准备好了。现在我们下载我们的主角:Raneto。目前Raneto有很多版本,但考虑到一些布局,不建议使用旧版本。小仙下载了几个版本,最后综合布局和之前安装的Node.js版本对应,选择了V0.16.5版本(也是后续的demo版本)。安装方式根据下载方式不同,这里分别介绍一下:安装方式一(推荐):下载Raneto压缩包到本地,下载地址:https://codeload.github.com/gilbitron/Raneto/柏油。输入后会自动下载gz/0.16.5的下载地址。如果您需要不同的版本,只需编写并修改上一个版本即可。然后上传到你要部署的机器上,指定一个位置。#解压[root@yyzsxraneto]#tarzxvfRaneto-0.16.5.tar.gz[root@yyzsxraneto]#cd/home/hundsun/raneto/Raneto-0.16.5#安装模块&查看模块[root@yyzsxRaneto-0.16.5]#npminstall[root@yyzsxRaneto-0.16.5]#lsnode_modules/#启动服务[root@yyzsxRaneto-0.16.5]#npmstart#Access,默认端口号为3000http:///服务器地址:3000/安装启动完成,是不是很有成就感!安装方式二:这种方式是直接从Git仓库克隆Raneto,然后安装npm模块并启动。前提是服务器已经安装了git。gitclonehttps://github.com/gilbitron/Raneto.gitcdRanetonpminstallnpmstart安装完成,是不是感觉很简单,成就感爆棚,先给自己点个赞吧!(别忘了给小仙一个一键三连,点赞+书签+关注:xieyanxiao:)有同学说,“这都是英文的,不知道怎么用……”别着急,除了官方文档中会有使用说明,小仙也整理了一篇教大家自定义的文章,指路:手把手教你搭建雷内托知识库框架(2).