docsify快速部署搭建个人知识库(支持本地、服务器、虚拟机运行)

简介: docsify快速部署搭建个人知识库(支持本地、服务器、虚拟机运行)




我们先在本地运行体会与获取 docsify 结构,后面再部署到服务器上运行。

部署一个个人知识库只需要按照本文的指令直接 cv 即可。但请注意打开服务器防火墙的 80 端口。

1.docsify介绍与文档

1.1 基本介绍

Docsify即时生成您的文档网站。与 GitBook 不同,它不会生成静态 html 文件。相反,它会智能地加载和解析您的 Markdown 文件,并将它们显示为网站。

  • 没有静态构建的 html 文件
  • 简单轻便
  • 智能全文搜索插件
  • 多个主题
  • 有用的插件接口
  • 表情符号支持
  • 与 IE11 兼容
  • 支持服务器端渲染

1.2 官网

🏠 docsify官网

1.3 github开源社区

🏠 docsifyjs/docsify: 🃏 A magical documentation site generator. (github.com)

1.4 官方中文文档

🏠 docsify中文文档

2.windows本地运行

2.1安装nodejs

🏠 下载地址:Node.js (nodejs.org)

下载完成之后双击安装包,即可进行安装。安装完成之后,我们打开 cmd 验证一下安装状态。

node -v

2.2 npm安装 docsify

# 1.安装
npm install -g docsify-cli
# 2.校验成功,查看版本
docsify -v

2.3 初始化知识库

🍀 新建文件夹

在这里我新建了一个名为 knowledgeBase 的文件夹。

🍀 初始化

knowledgeBase 文件夹下 cmd 进行初始化:

docsify init

2.4 本地运行与访问

在 knowledgeBase 文件下执行:

docsify serve

🏠 访问:http://localhost:3000

3.docsify基础操作

这里只列举部分,更多操作前往官方文档:docsify文档

3.1 内容修改

实际上,你只需要修改 knowledgeBase 文件夹下的 README.md 文件即可。因为实际上,README.md 就是展示的内容。例如将该文件修改为如下内容,修改完成后记得先保存再访问::

# 1.我卑微的喜欢过你
从前我觉得,爱一个人就是要在一起,所以百分百的付出,不遗余力地挽回,最后彻彻底底的受伤。知道后来我才明白,<font color='red'>爱不是一个人的死撑到底,而是两个人的一起努力</font>,我可以很爱你,也可以没有你。
# 2.我还记得你
我在想,一年后,两年后,五年后,十年后,三四十年后我们会是什么样子呢?
我希望好多好多年后,我还能再遇见你。你白发苍苍,我还是会走向你。我会告诉你,**我还记得你**。

再次查看界面:

3.2 网站主题修改

在 knowledgeBase 文件夹下的 index.html 文件中进行修改:

<!--这个链接就是主题的选择-->
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@4/lib/themes/vue.css">

🏠 官方主题地址:docsify CDN by jsDelivr - A free, fast, and reliable Open Source CDN

我们可以测试修改为 dark.css 样式,修改完成后记得先保存再访问

<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@4/lib/themes/dark.css">

3.3 开启封面与内容设置

在 knowledgeBase 文件夹下的 index.html 文件中进行修改:

保存修改后再次访问:

这是一个空白的封面,我们需要设置封面内容。

在 knowledgeBase 文件夹下新建一个 _coverpage.md 文件,编写markdown内容并保存

# 我爱过你
[**开启阅读**](README.md)

注意这个 [**开启阅读**](README.md) 是一个相对路径的链接,会直接帮我们跳转到 README.md 的内容显示路径。

点击这个 开启阅读 链接后,会跳转到 README.md 内容路径,想要再次回到上图的主意,在 README.md 文件中加上这样一句:

[**回到主页**](http://localhost:3000)

3.4 开启导航栏

在 knowledgeBase 文件夹下的 index.html 文件中进行修改:

此时在主页上依旧没有导航栏,我们需要在 knowledgeBase 文件夹下新建一个 _navbar.md 文件,可以编写如下内容并保存

- **学习导航**
  - [**哔哩哔哩**](https://www.bilibili.com/)
  - [**GitHub中文社区**)](https://www.githubs.cn/post/what-is-github)
- **镜像仓库**
  - [**Docker官方镜像中心**](https://hub.docker.com/)
  - [**Maven官方镜像仓库**](https://mvnrepository.com/)

4.部署至服务器

4.1 安装 docker

🍀 基于centos的安装

  1. 安装yum-utils
sudo yum install -y yum-utils
  1. 从国内服务器上下载docker
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  1. 安装docker
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 验证是否成功
sudo docker --version

🍀 基于ubuntu

  1. 安装需要的包
sudo apt-get update
  1. 安装依赖包
sudo apt-get install \
   apt-transport-https \
   ca-certificates \
   curl \
   gnupg-agent \
   software-properties-common
  1. 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 设置远程仓库
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
  1. 安装 Docker-CE
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
  1. 验证是否成功
sudo docker --version

4.2 配置国内加速器

国内镜像中心常用的为阿里云与网易云,选择其中一个加速器进行配置即可。在本地 Docker 中指定要使用的国内加速器地址后,就可以直接从国内镜像中心下载镜像了。

4.2.1 配置阿里云加速器

🍀 找到相应页面

若要配置阿里云加速器,必须首先要有阿里云的账号。登录阿里云后,打开阿里云的容器镜像服务页面 https://cr.console.aliyun.com ,然后找到如下页面,可以查看到你的 registry-mirrors

🍀 创建 docker 目录

sudo mkdir -p /etc/docker

🍀 创建 daemon.json 文件

注意,该 json 数据中的 URL 地址是与用户登录账号绑定的,不同的用户所生成的地址是不同的。

sudo vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://******.mirror.aliyuncs.com"]
}

🍀 重新加载服务配置文件

sudo systemctl daemon-reload

🍀 重启 docker 引擎

sudo systemctl restart docker

4.2.2 配置网易云加速器

配置网易云加速器,无需注册网易云用户。只需将前面的 daemon.json 文件中的那个URL 替换为如下 URL 即可。

{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

当然,替换过后,仍需重新加载服务配置文件,重启 docker 引擎。

4.3 创建nginx配置文件

# 1.创建多级目录
sudo mkdir -p /knowledgebase/nginx/conf/ /knowledgebase/nginx/html/service/
# 2.创建 nginx.conf 文件
sudo vim /knowledgebase/nginx/conf/nginx.conf
#user  root;
error_log  /var/log/nginx/error.log notice;
worker_processes  1;
pid        /var/run/nginx.pid;
events {
  worker_connections  1024;
}
http {
  include       mime.types;
  default_type  application/octet-stream;
  sendfile        on;
  keepalive_timeout  65;
  server {
      listen       80;
      # 可进行域名绑定
      server_name  localhost;
      location / {
         root   html/service;
         index  index.html index.htm;
      }
      error_page   500 502 503 504  /50x.html;
      location = /50x.html {
          root   html;
      }
  }
}

4.4 上传 docsify 文件

我们在windows本地运行时,在 knowledgebase 目录下的文件:

我们将这五个文件全部上传到 /knowledgebase/nginx/html/service/ 目录下:

4.5 运行nginx容器

sudo docker run --name knowledgenginx \
-v /knowledgebase/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /knowledgebase/nginx/html/service:/etc/nginx/html/service \
-p 80:80 \
-d nginx:1.23.4

4.6 访问测试

注意需要打开服务器防火墙 80 端口。

🏠 访问:http://【服务器ip】


相关文章
|
1天前
|
监控 Cloud Native 测试技术
云原生之使用Docker部署ServerBee服务器监控工具
【5月更文挑战第6天】云原生之使用Docker部署ServerBee服务器监控工具
10 1
|
3天前
|
Devops jenkins 网络安全
【DevOps】(四)jekins服务器ssh部署
【DevOps】(四)jekins服务器ssh部署
11 1
|
3天前
|
存储 安全 网络协议
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
13 0
|
4天前
|
安全 Linux 网络安全
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
|
4天前
|
存储 关系型数据库 MySQL
服务器数据恢复—ESXi虚拟机无法启动的数据恢复案例
**服务器数据恢复环境:** 某品牌EVA某型号存储中部署VMware ESXi虚拟化平台,数据盘(精简模式)+快照数据盘,虚拟机中有mysql数据库。 **服务器故障:** 机房意外断电导致该存储中的一台VMware虚拟机无法启动,管理员清空cache并尝试重新启动该虚拟机 ,问题依旧,无法成功启动虚拟机。用户方联系到我们数据恢复中心要求恢复该无法启动的虚拟机中的数据。
|
5天前
|
弹性计算 运维 数据安全/隐私保护
【雾锁王国开服】阿里云一键部署雾锁王国联机服务器详细教程
阿里云提供雾锁王国服务器搭建教程,借助计算巢服务,用户可在3分钟内创建Enshrouded游戏服务器。8核32G服务器1个月109元,3个月327元;4核16G10M带宽1个月30元,3个月90元。需先注册并实名认证阿里云账号,然后通过傻瓜式一键部署入口进行购买和设置,包括地域、购买时长、服务器参数等。部署完成后,分享服务器信息给游戏伙伴,即可开始游戏。详细教程和更多配置信息可在阿里云ECS产品页查看。
23 0
|
8天前
|
Java
如何解决使用若依前后端分离打包部署到服务器上后主包无法找到从包中的文件的问题?如何在 Java 代码中访问 jar 包中的资源文件?
如何解决使用若依前后端分离打包部署到服务器上后主包无法找到从包中的文件的问题?如何在 Java 代码中访问 jar 包中的资源文件?
43 0
|
10天前
本地部署Jellyfin影音服务器并实现远程访问影音库-2
本地部署Jellyfin影音服务器并实现远程访问影音库
|
10天前
|
Linux 网络安全 文件存储
本地部署Jellyfin影音服务器并实现远程访问影音库-1
本地部署Jellyfin影音服务器并实现远程访问影音库
|
11天前
|
存储 安全 网络协议
游戏服务器:构建与运行的艺术
游戏服务器:构建与运行的艺术
23 1