wikijs部署(中文搜索)
安装要求
服务器
CPU
2核或以上。
内存
1 GB或以上。
存储
1 GB或以上。
网络
自动更新需要公网权限,也可以使用离线更新。
域名
专用域名。
数据库
PostgreSQL 9.5或以上(推荐)。
Node.js
Node.js 10.12或者以上。
浏览器
支持多数浏览器,如:Google Chrome、Mozilla Firefox、Microsoft Edge、Apple Safari;IE11会有兼容性问题,可正常查看内容,编辑等交互性操作会受限。
环境准备
PostgreSQL部署
- 安装
安装过程分为3步:安装Yum源、安装客户端,以及安装服务端。
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# yum install -y centos-release-scl;
wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-7.repo;
yum clean all ;
yum makecache ;
yum install postgresql12
yum install postgresql12-server
yum install postgresql12-contrib
yum install postgresql12-devel
- 初始化
mkdir -p /data0/pgsql
chown -R postgres:postgres /data0/pgsql
sudo -u postgres /usr/pgsql-12/bin/initdb -D /data0/pgsql
- 创建日志目录
mkdir -p /var/log/pgsql
chown -R postgres:postgres /var/log/pgsql
- 启动/查看/停止
# 启动
sudo -u postgres /usr/pgsql-12/bin/pg_ctl -D /data0/pgsql -l /var/log/pgsql/server.log start
# 查看
sudo -u postgres /usr/pgsql-12/bin/pg_ctl -D /data0/pgsql status
# 停止
sudo -u postgres /usr/pgsql-12/bin/pg_ctl -D /data0/pgsql -m smart stop
- 创建用户/数据库/授权
sudo -u postgres psql
# 创建用户
CREATE USER wikijs WITH PASSWORD 'wikijsrocks';
# 创建数据库
CREATE DATABASE wiki OWNER wikijs;
# 授权
GRANT ALL PRIVILEGES ON DATABASE wiki TO wikijs;
ALTER USER wikijs WITH SUPERUSER;
#退出 session,重新连入 wikijs_db 数据库,设置中文全文检索
psql -U wikijs -d wikijs_db
-- https://docs.requarks.io/en/search/postgres
CREATE EXTENSION pg_trgm;
CREATE EXTENSION zhparser;
CREATE TEXT SEARCH CONFIGURATION pg_catalog.chinese_zh (PARSER = zhparser);
ALTER TEXT SEARCH CONFIGURATION chinese_zh ADD MAPPING FOR n,v,a,i,e,l WITH simple;
-- 忽略标点影响
ALTER ROLE wikijs SET zhparser.punctuation_ignore = ON;
-- 短词复合
ALTER ROLE wikijs SET zhparser.multi_short = ON;
-- 看看 chinese_zh 在不在
\dF
#退出 session,重新连入 postgres 数据库,关闭 wikijs superuser权限
psql -U postgres -d postgres
ALTER USER wikijs WITH NOSUPERUSER;
Node.js安装
- 下载安装包
cd /tmp
wget https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
- 解压安装包
tar xvf node-v12.16.1-linux-x64.tar.xz
- 安装
安装过程分为3步:移动安装包解压目录至/user/local、为node、npm建立软链接,以及删除安装包。
mv node-v12.16.1-linux-x64 /usr/local/
ln -s /usr/local/node-v12.16.1-linux-x64/bin/node /usr/bin/node
ln -s /usr/local/node-v12.16.1-linux-x64/bin/npm /usr/bin/npm
rm -rf rm -rf node-v12.16.1-linux-x64.tar.xz
Wiki.js
部署
- 下载安装包
cd /tmp
wget https://github.com/Requarks/wiki/releases/download/2.1.113/wiki-js.tar.gz
- 解压/移动/删除安装包
# 解压
mkdir wiki
tar xzf wiki-js.tar.gz -C ./wiki
# 移动
mv wiki /usr/local/
# 删除
rm -rf wiki-js.tar.gz
- 配置
cd /usr/local/wiki
# 重命名配置文件
mv config.sample.yml config.yml
# 配置HTTP端口
port: 3000
# 配置数据库
db:
type: postgres
host: localhost
port: 5432
user: wikijs
pass: wikijsrocks
db: wiki
# 配置存储目录
dataPath: /data0/wiki
- 配置搜索引擎
将 /wiki/server/modules/search/postgres/definition.yml 中的 enum list 添加一个元素 chinese_zh
enum:
...
- turkish
- chinese_zh
- 启动
cd /usr/local/wiki
node server
等待,直至看到如下信息:
Browse to http://localhost:3000/ to complete setup!
通过浏览器打开上述地址,按照提示输入以下信息:
Administrator Email: ***
Password: ***
Confirm Passowrd: ***
Site URL: ***
点击“INSTALL”,等待安装完成即可。
打开 wiki.js 管理 | 搜索引擎 | Database - PostgreSQL | Dictionary Language 选 chinese_zh。
配置wiki做为Linux系统服务
nano /etc/systemd/system/wiki.service
[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=/var/wiki
[Install]
WantedBy=multi-user.target
从新加载配置
systemctl daemon-reload
启动wiki服务
systemctl start wiki
配置开机启动wiki
systemctl enable wiki
github加速
140.82.113.3 github.com
185.199.108.153 assets-cdn.github.com
199.232.69.194 github.global.ssl.fastly.net