wiki.js 部署

2024-09-01 21:36
文章标签 部署 js wiki

本文主要是介绍wiki.js 部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 前言

找了许久的个人知识库系统,迟迟没有动作。经过了解后感觉wiki.js还不错,这个系列文章详细描述一下全过程。

wifi.js可以满足我的以下要求:

  • 支持文档在线编辑
  • 支持二进制文件上传和下载
  • 支持历史记录和回滚
  • 支持用户账号分权
  • 支持数据和nas同步

这个系列打算用三个篇章来描述,分别是部署和使用以及迁移。

本篇文章是wifi.js系列的第一篇,wifi.js部署

参考:

1. Wiki.js | Wiki.js (requarks.io)

2. Wiki.js 本地部署 - 我的全新 Hugo 网站 (xja.github.io)

2 部署

wiki.js可以部署在众多操作系统中,可以说只要支持node.js就可以实现部署了。这个讲的是wifi.js部署再ubuntu-22.04操作系统上的。

2.1目标机器

  • Docker
  • Kubernetes
  • Linux
  • macOS
  • Windows

我们选择安装在原生的ubuntu上面

2.2wifi.js依赖

wiki.js的运行依赖以下几个条件:

  • node.js环境
  • PostgreSQL 15

本篇介绍的安装都是基于源码的安装方法:简单,直接,明了。

2.3 nodejs

为了后面便于追溯问题,我们选一个固定的release版本而不是最新的版本

2.3.1 nodejs下载

Index of /dist/latest-v16.x/ (nodejs.org)

$ mkdir nodejs
$ cd nodejs 
$ wget https://nodejs.org/dist/latest-v16.x/node-v16.20.2.tar.xz
$ tar xf node-v16.20.2.tar.xz
$ cd node-v16.20.2/
$ ./configure --prefix=$(pwd)/local
$ make
$ make install
$ node -v

2.4 PostgreSQL

Ubuntu源码安装配置PostgreSQL_postgres:x:1001:-CSDN博客

2.4.1 PostgreSQL下载

$ sudo apt-get install libicu-dev
$ mkdir postgresql
$ cd postgresql/
$ wget https://ftp.postgresql.org/pub/source/v16.2/postgresql-16.2.tar.bz2
$ tar xf postgresql-16.2.tar.bz2
$ cd postgresql-16.2/
$ mkdir local
$ ./configure --prefix=$(pwd)/local
$ make
$ make install

2.4.2 PostgreSQL安装

2.4.3 PostgreSQL配置

2.4.3.1添加postgres用户和用户组
$sudo adduser postgres
Adding user `postgres' ...
Adding new group `postgres' (1001) ...
Adding new user `postgres' (1001) with group `postgres' ...
Creating home directory `/home/postgres' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for postgres
Enter the new value, or press ENTER for the defaultFull Name []:Room Number []:Work Phone []:Home Phone []:Other []:
Is the information correct? [Y/n] y
2.4.3.2创建数据目录

创建postgresql数据库的数据主目录并修改文件所有者

$ su - postgres
$ mkdir ~/data
2.4.3.3 配置环境

为了方便,可以将该bin路径添加到PATH变量中。

$ sudo vi /etc/profile

在末尾添加如下配置,PGHOME为pg的安装目录路径,PGDATA为pg的数据目录路径。

# PostsQL
export PGHOME=/opt/pgsql/pgsql-16.1
export PGDATA=/opt/pgsql/data
export PATH=$PATH:$PGHOME/bin

2.4.3.4 重新加载系统环境变量
source /etc/profile
2.4.3.5 初始化数据库

切换到postgre用户,并使用initdb初始化数据库

su - postgres
initdb

返回root用户,可以看到data目录下已经被初始化

cd /opt/pgsql/data/
ls
>base          pg_hba.conf    pg_notify     pg_stat      pg_twophase  postgresql.auto.conf
global        pg_ident.conf  pg_replslot   pg_stat_tmp  PG_VERSION   postgresql.conf
pg_commit_ts  pg_logical     pg_serial     pg_subtrans  pg_wal
pg_dynshmem   pg_multixact   pg_snapshots  pg_tblspc    pg_xact

2.5 wiki.js

2.5.1 wiki.js下载

git clone https://github.com/requarks/wiki.git
git checkout v2.5.302
git checkout v2.5.302//这里迁出的分支名字为'HEAD detached at v2.5.302'
git checkout -b v2.5.302

2.5.2 使用

$ cp config.sample.yml config.yml

这篇关于wiki.js 部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1128108

相关文章

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2