Insight是一个可以管理企业微信群机器人的小工具,在这里添加一个机器人webhook地址,然后发布即时消息和定时消息,消息就会发送到企业微信中机器人所在的群里。
它具有下面几个特色:
- 一键发布消息,支持@所有人、指定人,方便快捷。
- 强大的定时功能,可以每天执行并且智能跳过节假日,彻底解放双手。
- 简约的排版,科幻的风格,3分钟内轻松上手。
- 贴心的自定义套件,拓展代码实现自定义文本内容。
- 完备的权限控制,保证机器人运行安全无忧。
- 支持移动端布局,支持集成到企业微信控制台。
一、前言准备
- 一台Centos7系统服务器。
- 下面演示是在docker上演示,映像文件为centos7.9.2009,实体服务器也已如此
- 项目使用的mysql,请自行安装,并替换相应的代码,注意版本5.6以上,演示使用的mysql-8.0,mysql安装方法自行摸索安装。
二、安装镜像源和系统下载工具
sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-*
yum install -y wget
三、安装常用工具
yum install -y openssh-server vim lrzsz wget gcc-c++ pcre pcre-devel zlib zlib-devel ruby openssl openssl-devel patch bash-completion zlib.i686 libstdc++.i686 lsof unzip zip screen net-tools initscripts
四、环境安装
安装需要依赖的环境,下面我们用到两个,一个是nodejs,一个是 nginx
1.安装node.js,请一行一行的执行。
cd ~ #切换到用户文件夹
wget https://nodejs.org/dist/v12.18.2/node-v12.18.2-linux-x64.tar.xz
tar -xvf node-v12.18.2-linux-x64.tar.xz -C /usr/local/
cd /usr/local/
mv node-v12.18.2-linux-x64/ nodejs
ln -s /usr/local/nodejs/bin/node /usr/local/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/bin
2.CentOS7中使用yum安装Nginx的方法
1) 添加 nginx 官方提供的 yum 源(需要联网且时间较长)
rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm
2) 使用 yum 安装 nginx
yum install nginx
注1:yum方式安装nginx,它的安装根目录为/etc/nginx
注2:查看nginx版本
rpm -qa | grep nginx
3) 启动及设置开机启动
systemctl start nginx.service
systemctl enable nginx.service
4) 设置防火墙开放 80 端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload && firewall-cmd --list-port
5) 测试 nginx 是否可被访问,应该显示nginx的欢迎界面
http://服务器IP地址:80/
五、代码安装、运行
cd /opt #进入opt目录
git clone https://github.com/Elliottssu/insight.git #进行代码克隆
上面将代码下载下来后,接下来就是在当前目录下,下载依赖。
现在你所在的位置是在/opt (切换目录命令cd /opt)。
cd insight/insight-front-end/ #进入前端文件夹
npm install #安装前端依赖
npm run build #然后执行编译,这样就会输出一个build文件夹的静态资源
cd ../insight-back-end/ #进入后端文件夹
npm install #安装后端依赖
六、修改项目的 本地环境 和 生产环境 所使用的mysql数据库为自己的数据库
vi /opt/insight/insight-back-end/config/config.default.ts #修改本地环境
vi /opt/insight/insight-back-end/config/config.prod.ts #修改生产环境
七、mysql创建数据
在mysql数据库创建创建空白的数据库。项目运行时连接数据并自动创建所需的相关表项
mysql -uroot -p #进入数据库
Enter password: #输入数据库密码
create database insight_demo; #创建项目所用数据库 insight_demo,注意“;”也要输入
show databases; #创建项目所用数据库 insight_demo,注意“;”也要输入
八、代码运行,服务启动
Screen是一个可以在centos中创建多个虚拟终端,退出后 程序将后台继续运行。在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
yum -y install screen #centos7系统可以直接执行。
yum install epel-release -y #centos8系统首先需要安装epel,
yum install screen -y #然后再安装screen。
8.1创建screen会话,启动前端和后端
screen -S houduan #screen就会创建一个名字为houduan的会话。
cd /opt/insight/insight-back-end #进入后端文件夹
npm run dev #启动后端
暂时离开当前会话,保留screen会话中的任务或程序,用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
screen -S qiantai #screen就会创建一个名字为qiantai的会话。
cd /opt/insight/insight-front-end #进入前端文件夹
npm start #启动前端
暂时离开当前会话,保留screen会话中的任务或程序,用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
8.2恢复screen会话
可以执行:screen -ls screen会列出当前存在的会话列表,如下:
659.houduan即为刚才的screen创建的houduan会话,659是这个screen的会话的进程ID,恢复会话时也可以使用:screen -r 659
暂时离开当前会话,保留screen会话中的任务或程序,用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
九、结束
到目前为止,如果顺利的话,前端编译成功,后端服务启动成功,访问访问http://localhost:3000 即可访问。你就相当于配置成功了。
免责声明:
本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除。
本文中使用的部分图片来自于网络,如有侵权,请联系博主进行删除。
原文作者:ElliottsSu 原文地址:https://www.jianshu.com/p/5af19b772948 感谢并原创支持原创给大家带来更多科幻、有趣开源项目。