• 中文
    • English
  • 注册
    • 查看作者
    • Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      简介:

       魔豆文库(moredoc)是一套使用 Golang 语言开发的类似百度文库、新浪爱问文库的开源文库系统,支持 TXT、PDF、EPUB、MOBI、Office 等格式文档的在线预览与管理,为 dochub文库的重构版本。

      技术栈

      后端:Golang(gin + gRPC + GORM)

      前端:Vue.js  ( nuxt2 + element-ui)

      数据库 : MySQL 5.7

      演示系统:

      宝塔面板 CentOS 7.6.1810 x86_64(Py3.7.9)

      一、安装go环境

      1、前往go官网下载环境文件,下载地址:https://golang.google.cn/dl/

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      2、将文件上传到 /www/server 目录,然后解压

      cd /www/server 
      tar -xzvf go1.21.2.linux-amd64.tar.gz

      3、打开编辑/etc/profile文件,在最后添加如下代码:

      export GOROOT=/www/server/go
      export GOBIN=$GOROOT/bin
      export GOPKG=$GOROOT/pkg/tool/linux_amd64
      export GOARCH=amd64
      export GOOS=linux
      export GOPATH=/www/wwwroot/Golang
      export PATH=$PATH:$GOBIN:$GOPKG:$GOPATH/bin

      4、添加保存之后,在SSH终端使用如下命令使其生效:

      source /etc/profile

      5、使用以下命令检测下go环境是否安装成功

      go version

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      二、下载源码

      下载地址:https://gitee.com/mnt-ltd/moredoc

      1、将下载的源码上传到宝塔面板www/wwwroot目录,并解压,文件夹名改为doc

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      2、打开/www/wwwroot/doc/app.example.toml文件,修改里面的数据库配置

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      3、在SSH终端使用以下命令添加权限

      cd /www/wwwroot
      chmod +x doc

      三、后端初始化(编译)

      1、在SSH终端使用以下命令设置golang代理(修改环境变量)

      export GO111MODULE=on
      export GOPROXY=https://goproxy.cn

      或者

      echo "export GO111MODULE=on" >> ~/.profile
      echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
      source ~/.profile

      2、进入目录,安装go依赖

      cd /www/wwwroot/doc
      go mod tidy

      3、初始化工程依赖

      make init

      4、编译proto api

      make api

      5、修改 app.toml 文件配置

      cp app.example.toml app.toml

      6、编译后端

      go build -o moredoc main.go

      7、初始化数据库结构(自动创建数据库和数据表)

      ./moredoc syncdb

      说明:我安装的是V1.6版本,一共有25张数据表,如果你的数据表数量少于25,可能是因为数据库问题,导致创建失败了。

      8、运行后端

      网站 →  Go项目 →  添加Go项目 →  选择执行文件和设置端口号

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      执行命令如下:

      ./moredoc serve

      四、前端初始化

      1、安装PM2管理器

      软件商店 →  搜索“PM2管理器”并安装,Node版本切换到v16.14.0

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      1、切换到web目录,并安装依赖

      cd /www/wwwroot/doc/web
      npm install

      2、打包项目

      npm run build

      3、PM2管理器 →  项目列表  →  添加项目,按照如下设置:

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      4、添加好项目后,在项目右侧菜单点击”映射“,添加一个域名用来访问站点

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      5、通过浏览器访问我们刚才添加的域名

      Linux宝塔面板CentOS7.6系统安装魔豆文库教程

      可以看到访问成功了,也可以正常登录,能正常登录账号,说明和后端的接口连通也是ok的。

      五、默认管理员

      http://你的网站域名/

      或者 http://你的服务器外网IP:3000

      账号:admin

      密码:mnt.ltd

      六、环境安装

      • calibre是一个自由开源的电子书软件套装,用于将epub、mobi等电子书转为pdf;

      • MuPDF是一款以C语言编写的自由及开放源代码软件库,是PDF和XPS解析和渲染引擎,用于将PDF转为svg、png等图片;

      • LibreOffice是由文档基金会开发的自由及开放源代码的办公套件,用于将office等文档转为pdf;

      • Inkscape是一个自由开源的矢量图形编辑器,在mupdf处理PDF出现兼容问题失败时,自动切换inkscape来处理;

      1、安装 calibre

      1.1 下载calibre-5.44.0版本,下载地址:https://download.calibre-ebook.com/5.44.0/calibre-5.44.0-x86_64.txz

      1.2 在SSH终端查看当前系统的CXXABI版本号,如果CXXABI版本低于1.3.8,安装calibre时,会出现如下报错信息:

      ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.8′ not found

      报错解决方案请参考:https://www.37boke.com/archives/172.html

      1.3 将calibre-5.44.0-x86_64.txz上传到www/wwwroot目录,然后使用以下命令进行安装:

      cd /www/wwwroot
      tar -xvf calibre-5.44.0-x86_64.txz -C /opt/calibre
      /opt/calibre/calibre_postinstall
      echo "export QT_QPA_PLATFORM='offscreen'" | tee /etc/profile.d/QT_QPA.sh
      export QTWEBENGINE_DISABLE_SANDBOX=1
      source /etc/profile

      1.4 检查版本

      ebook-convert --version

      2、安装mupdf

      2.1首先是下载mupdf开源代码 https://mupdf.com/downloads/archive/mupdf-1.22.0-source.tar.gz

      2.2 安装OpenGL库

      sudo yum install mesa-libGLU mesa-libGLU-devel
      sudo yum install mesa-libGLU mesa-libGLU-devel
      sudo yum install freeglut freeglut-devel
      sudo yum install mesa-libGL-devel mesa-libGLU-devel freeglut-devel

      2.3 安装libXtst库

      sudo yum install libXtst-devel
      sudo yum install libXrandr-devel

      2.4 上传刚才下载的mupdf-1.22.0-source.tar.gz文件到/www/wwwroot目录

      2.5 解压和编译

      tar -xvf mupdf-1.22.0-source.tar.gz
      cd /www/wwwroot/mupdf-1.22.0-source
      make && make install

      2.6 创建软连接

      cp -r release /usr/local/mupdf
      ln -s /usr/local/mupdf/mutool /usr/local/bin/mutool

      3、安装LibreOffice

      3.1 yum安装

      yum install -y libreoffice

      3.2 检查版本

      libreoffice --version

      4、安装 inkscape

      4.1 yum安装

      yum install -y inkscape

      4.2 检测版本

      inkscape --version

      5、安装svgo

      svgo是基于node.js的插件,所以需要先安装node.js,前面我们安装的PM2管理器已经自带node.js,因此不需要再安装,直接在SSH终端使用以下命令安装svgo:

      npm install -g svgo

      检测版本

      svgo --version

      6、处理中文乱码

      (1)、下载下面的“字体.zip”,然后上传到usr/share目录,并解压

      字体.zip

      这个字体主要是解决“将文档转换为svg文件时会出现中文乱码,或者字体变成黑色大块”问题;

      (2)、安装中文支持

      yum install kde-l10n-Chinese

      (3)、清理字体缓存并查询结果

      cd /usr/share/fonts
      mkfontscale
      mkfontdir
      fc-cache -fv
      fc-list :lang=zh
    • 1
    • 0
    • 0
    • 425
    • quweisu

      请登录之后再进行评论

      登录
    • 返回顶部
    • 做任务
    • 实时动态
    • 偏好设置
    • 到底部
    • 单栏布局 侧栏位置: