knowledge/README.md

2.4 KiB
Raw Blame History

项目说明

项目地址: https://fs.book.wandoubaba.com

简单介绍

这是基于VuePress构建的一个电子书项目技术栈为Vue书中收录的内容主要与FreeSWITCH相关是面向PHP程序员的FreeSWITCH开发文档包括linux、docker、git、lua、前端等各方面的内容是PHP程序员在做FreeSWITCH相关开发过程中做的技术记录。

使用方法

前提条件

  • Node.js版本 >= 8.6
  • npm或yarnVuePress官方推荐使用yarn因为npm有时会生成错误的依赖树

预览方法

yarn dev

VuePress会在http://localhost:8080启动一个热重载的开发服务器,可以在浏览器中打开并查看电子书,在控制台按ctrl+c终止服务。

打包方法

yarn build

执行完成后会在项目根目录下生成dist目录里面都是纯表态html页面dist目录内的文件拷贝到任意http站点服务器的根目录里就可以了。

编辑方法

文档的根目录就是docs目录,其中docs/README.md文件是整个文档的首页,打包后生成的index.html页面就是根据这个文件生成的。

文档内的其他目录和markdown文件根据实际情况随意创建即可。

网页侧边栏的目录是在docs/.vuepress/config.js文件中定义的具体定义方法可以查询VuePress官方文档

VuePress主题-默认主题配置-侧边栏

DevOps

deploy目录是使用PHP的workerman框架实现的简单自动部署程序自动部署的实际执行程序是auto_build.sh脚本。

当正确配置了GIT服务器的WebHook正确配置并启动了deploy服务后即可实现当仓库的master分支被push后自动更新并编译本项目。

自动部署的原理

GIT服务器的WebHook -> deploy服务 -> auth_build.sh

deploy启动方式

cd deploy
cp .env.example .env
## 根据实际情况修改.env文件内容
composer install
php start.php start -d

需要开放程序所在服务器的8787端口或者做一个反向代理到8787端口的http站点。

避免因自动打包进程意外终止而导致永远无法自动打包

可以通过执行auto_install.sh脚本创建一个系统定时任务,用来定时清理由auto_build.sh脚本错误执行而产生的“僵尸锁”。

sh auto_install.sh