首页 > 系统相关 >Linux 安装 Wiki.js

Linux 安装 Wiki.js

时间:2023-03-11 10:12:13浏览次数:53  
标签:Wiki wiki wikijs sudo js Linux opt

一、概要

1. 环境

(1) CentOS 7.9 2009

(2) Node.js 16

(3) Wiki.js 2.5.297

2. 概念

Wiki.js是一个开源的知识管理系统,它是一款使用JS编写的Node.js项目,它的文档类型支持Markdown语法,支持将多种编辑方式,可生成PDF、MD文档等。

3. 准备

(1) 创建目录

sudo mkdir -p /opt/Wiki
sudo mkdir -p /var/Wiki/data

(2) 创建组和用户

sudo groupadd --system wikijs
sudo useradd -s /sbin/nologin --system -g wikijs wikijs

(3) 授权

sudo chown -R wikijs:wikijs /opt/Wiki
sudo chown -R wikijs:wikijs /var/Wiki/data

(4) 证书

cd /opt/Wiki
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout wikijs.pem -out wikijs.pem

二、安装与配置

1. 安装

(1) 获取wiki.js

wget https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gz

(2) 解压

sudo tar xzf wiki-js.tar.gz -C /opt/Wiki

2. MySQL

(1) 登录MySQL

mysql -u root -p

(2) 创建用户

CREATE USER 'wikijs'@'%' IDENTIFIED BY 'MyNewPass1!';
GRANT ALL PRIVILEGES ON *.* TO 'wiki'@'%' WITH GRANT OPTION;
flush privileges;

(3) 创建数据库

create database if not exists wiki default character set UTF8MB4;

3. 配置文件

(1) 创建配置文件

sudo mv /opt/Wiki/config.sample.yml /opt/Wiki/config.yml

(2) 数据库配置

db:
  type: mysql
  host: localhost
  port: 3306
  user: wikijs
  pass: MyNewPass1!
  db: wiki

(3) Cache目录,用于存放临时文件

dataPath: /var/Wiki/data

(4) SSL

ssl:
  enabled: true
  port: 3443
  provider: custom
  format: pem
  key: /etc/pki/CA/private/wikijs.key.pem
  cert: /etc/pki/CA/certs/wikijs.crt.pem
  dhparam: /etc/pki/CA/dhparam.pem
  domain: wiki.example.com
  subscriberEmail: [email protected]

3. 防火墙

firewall-cmd --list-all
sudo firewall-cmd --permanent --add-port=3443/tcp
sudo firewall-cmd --reload

4. Service

(1) 创建配置文件

sudo vi /etc/systemd/system/wiki.service

(2) 初始化以下内容

[Unit]
Description=Wiki.js
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/node server
Restart=always
# Consider creating a dedicated user for Wiki.js here:
User=nobody
Environment=NODE_ENV=production
WorkingDirectory=/opt/Wiki

[Install]
WantedBy=multi-user.target

(3) 重新加载systemd

sudo systemctl daemon-reload

(4) 启动

sudo systemctl start wiki
sudo systemctl enable wiki

四、参考

1. 官方

https://docs.requarks.io/

2. 其他

https://www.howtoforge.com/how-to-install-wikijs-on-rocky-linux-9/

https://computingforgeeks.com/install-wiki-js-on-centos-rhel-7/

标签:Wiki,wiki,wikijs,sudo,js,Linux,opt
From: https://www.cnblogs.com/eagle6688/p/17190017.html

相关文章

  • linux内核定时器
    内核定时器概念与单片机定时器不同内核定时器基础知识structtimer_list{}相关操作函数时间转换函数静态定义结构体变量并且初始化向内核注册定时器删除......
  • linux基础(4)--linux组管理
    1组的分类在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。1.所有者——一个文件由谁创建的所有者就是谁,但文件的......
  • json.loads()
    json.loads()方法可用于解析有效的JSON字符串并将其转换为Python字典。它主要用于将包含JSON数据的本地字符串,字节或字节数组反序列化为Python字典。用法:json.loads(s)参......
  • Linux下使用python操作文件夹的一个坑
    我们通常在Windows系统中调用python内置函数os.listdir()读取文件内容,生成的文件名列表是有序的.#假若在当前目录下有一个名叫files的文件夹,其中放置0001.txt,0002.txt,......
  • JSON断言和响应断言的使用
    在http请求下建立一个json断言的设置  2.响应断言的设置 ......
  • Linux内核中的IS_ERR()实现
    1、前言对于任何一个指针来说,必然有三种情况:一种是有效指针,一种是NULL,也就是空指针,一种是错误指针,也就是无效指针,在Linux内核中,所谓的错误指针就是指其已经到达了内核空间......
  • Ubuntu(Linux)系统源码编译、移植SQLite
    1.编译后的文件2.配置lib路径3.可执行文件配置路径测试:XX@XXX:etc$sqlite3SQLiteversion3.17.02017-02-1316:02:40Enter".help"forusagehints.Connectedtoat......
  • Linux Kernel 4.8.11版本发布
    在感恩节的周末,Linux Kernel4.8稳定版分支和4.4LTS分支都获得了维护版本更新。今天发布的LinuxKernel4.8.11和此前的4.8.10版本相隔5天时间,根据短日志主要对77......
  • 使用http请求中获取到的一个字段给其他http请求使用(json提取器中设置)
    1.在新增学生信息的http请求中,获取到的data.id,在json提取器中设置 2.JSON提取器中的设置  3.data.id如何知晓:在新增学生信息成功后响应数据,复制该信息在https:/......
  • linux搭建sftp服务器
    创建sftp组:groupadd sftp 创建一个sftp用户mysftp并加入到创建的sftp组中,同时修改mysftp用户的密码useradd-gsftp-s/bin/false mysftp  passwd mysftp新建/data/s......