目前我觉得比较好用的wiki程序是bookstack,不过这个wiki.js也相当不错,ui非常华丽~
wiki.js除了上手(新手可能有点不太会用)比bookstack难一点外,其他可以说是各有千秋。
手动安装,安装所有需要用到的软件:
apt -y update apt -y install build-essential nginx python-certbot-nginx gnupg apt-transport-https curl wget echo "deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main" > /etc/apt/sources.list.d/pgdg.list wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - curl -sL https://deb.nodesource.com/setup_14.x | bash - apt -y update apt -y install nodejs postgresql-12
设置nginx/postgresql自启:
systemctl enable nginx postgresql
登录到postgresql的shell:
sudo -u postgres psql
创建数据库/用户/授权:
CREATE DATABASE wiki; CREATE USER wikijs WITH PASSWORD '设置你的数据库用户密码'; GRANT ALL PRIVILEGES ON DATABASE wiki to wikijs; \q
备份数据库/恢复:
sudo -u postgres pg_dump wiki > wiki.sql sudo -u postgres psql wiki < wiki.sql
下载程序解压/复制一份配置文件/给予正确的文件权限:
mkdir -p /opt/wiki && cd /opt/wiki wget https://github.com/Requarks/wiki/releases/download/2.4.107/wiki-js.tar.gz tar -xzvf wiki-js.tar.gz mv config.sample.yml config.yml chown -R nobody:nogroup /opt/wiki
编辑配置文件:
nano config.yml
填写你的postgresql数据库信息:
db: type: postgres host: localhost port: 5432 user: wikijs pass: 设置你的数据库用户密码 db: wiki ssl: false
还是在这个配置文件内,把监听地址改为本地,因为等会我们会使用nginx反向代理:
bindIP: 127.0.0.1
新建一个systemd服务文件:
nano /lib/systemd/system/wiki.service
写入如下配置:
[Unit] Description=Wiki.js [Service] Type=simple User=nobody Environment=NODE_ENV=production WorkingDirectory=/opt/wiki ExecStart=/usr/bin/node server Restart=always [Install] WantedBy=multi-user.target
启动wiki.js/设置开机自启:
systemctl start wiki
systemctl enable wiki
新建一个nginx站点配置文件用于反向代理:
nano /etc/nginx/conf.d/wiki.conf
写入如下配置:
server { listen 80; server_name wiki.imlala.best; # 换成你的域名 location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_next_upstream error timeout http_502 http_503 http_504; } }
最后使用certbot签发一个ssl证书:
certbot --nginx --agree-tos --no-eff-email --email xxxxx@qq.com
手动安装的过程就到此结束了,打开你的域名就能看到wiki.js的向导界面了,这里就不截图了。
No comments:
Post a Comment