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

相关文章

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

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 进行图片上传处理图片上传请求完整代码示例