基于云服务器的wiki.js开发

 上线即看到通知,我的IP在对外攻击,虽然前几天开始,官网就不能访问了,已经初步排查是被劫持了,刚开始感觉影响不大,想过几天再处理,没想到被警告了。网络安全问题还是不容忽视。
 我这次遇到的问题,大概率还是Wordpress后台被攻破了,然后主页的核心文件被篡改所致。ThinkCMF和Wordpress都遇到过这种问题,都是后台被黑,果然免费的是最贵的,一直尝试了各种修复都无法解决问题,同时华为云一天一个通知,最简单粗暴的方法,就是rm -r 后再换其他CMS。


image.png

 是的,我就是这么折腾。
 我喜欢简洁明了的风格,多次比对后,选择了wiki.js,然后参考下面的帖子来进行安装 部署。
探索Wiki:开源知识管理平台及其私有化部署


S1. 创建核心文件目录

在服务器下创建几个关键文件夹

mkdir wiki
cd wiki
mkdir wiki-config  
mkdir wiki-data
vim docker-compose.yml

然后提供你服务器的基本信息,让deepseek帮你写好docker-compose.yml。

下面这个版本是我改动了很多次后尝试成功的,半夜部署的,遇到问题就直接丢给deepseek了,所以中间省略了一大堆mysql通讯的问题。

version: "3.8"
services:
  wiki:
    image: ghcr.io/requarks/wiki:2
    container_name: wiki-js
    network_mode: "host"  # 使用主机网络
    environment:
      DB_TYPE: mysql
      DB_HOST: 127.0.0.1  # 因为在主机网络中,127.0.0.1就是宿主机
      DB_PORT: 3306
      DB_USER: root #不建议root,但我偷懒了,让deepseek给写的,后面再改
      DB_PASS: 这里是mysql 的密码
      DB_NAME: wiki
      DB_SSL: "false"
    restart: unless-stopped
    # 注意:使用主机网络时,不需要端口映射,因为容器直接使用主机端口
    # 但是Wiki.js默认监听3000端口,所以您需要通过3000端口访问,或者修改Wiki.js的配置使其监听80端口。
    #这里我是想直接用80来访问,没配置成功,后面再调试。*
    # 如果您希望通过80端口访问,可以在Wiki.js配置中设置端口为80,或者使用反向代理。
    volumes:
      - ./wiki-data:/wiki/data
      - ./wiki-config:/wiki/config

S2.部署调试

docker-compose up -d
docker-compose logs -f

这两个命令来回动,直到出现下面这个,就可以通过你的IP:3000访问wiki.js后台了。(用云服务器的,记得在安全组开放3000端口)。

image.png

S3.在wiki.js Setup阶段,出现报错,EACCES: permission denied, mkdir '/wiki/data/cache'的解决方法

昨晚弄到半夜在弄的时候,脑袋反应不过来,半天没进展,回去睡个觉,早上起来,想了一下,参考下面的解决方案。(我不会告诉你还是deepseek在干活,但事实是,当同个问题一直重复卡住的时候,有时候先停下来再重新启动,可能会有新思路。不要跟自己较劲,不要钻牛角尖。而对AI来说,新建一个会话,减少它在之前的上下文中一直重复经验,也是一种新的解决方式。)


卡住了就先停一下,然后再解决

S4.开始自由折腾吧

登录界面

好的,接下来,请开启你的个性化wiki之旅吧。


干起来少年们
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容