腾讯云轻量应用服务器自建问卷在线收集系统

我们在工作中经常遇到需要向同事客户收集各项信息,提升客户服务质量。但市场上的问卷网站对于收集敏感信息(如身份证信息)的内容还会心存顾虑,且许多功能都需要收费,降低了收集信息的操作体验。这里就为大家推荐Tduck 填鸭表单收集系统。它是基于B/S架构的一款开源的表单在线收集系统,为企业构建自己的信息反馈系统的综合解决方案,助力企业提高反馈收集客户服务效率。主要应用与泛零售、电商、金融、调研、资料收集等行业用户,提供多种工具、多渠道、多方式收集有效信息,更好的提升客户服务,增加客户满意度。 gitee地址:https://gitee.com/TDuckApp/tduck-platform

准备工作

购买腾讯云服务器之后选择宝塔面板镜像,根据提示获取登录信息,登录进入宝塔面板

依赖安装

进入面板之后,安装如下依赖软件

代码语言:javascript
复制
Nginx 1.19
MySQL 5.7
Redis 6.2
Node.js版本管理器
Tomcat 8
堡塔应用管理器

然后根据官方文档:https://cloud.tencent.com/document/product/1207/44609远程连接到服务器命令行

进入服务器命令行执行下面命令安装Maven

代码语言:javascript
复制
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz
mkdir /usr/local/maven
tar -xvf apache-maven-3.8.1-bin.tar.gz -C /usr/local/maven

接下来需要重新编译一下Git命令,因为系统自带的git命令版本不达到要求

代码语言:javascript
复制
yum remove git -y
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.21.0.tar.gz
tar -zxf git-2.21.0.tar.gz
cd git-2.21.0
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
./configure --prefix=/usr/local/git
make && make install

卸载系统自带的git并且设置环境变量

代码语言:javascript
复制
yum remove git -y
vim /etc/profile

在文件末尾粘贴下面内容

代码语言:javascript
复制
export M2_HOME=/usr/local/maven/apache-maven-3.8.1
export MAVEN_HOME=/usr/local/maven/apache-maven-3.8.1
export PATH=${M2_HOME}/bin:${PATH}

export GIT_HOME=/usr/local/git
export PATH=PATH:GIT_HOME/bin

使环境变量生效,以及创建软连接

代码语言:javascript
复制
source /etc/profile
ln -s /usr/local/maven/apache-maven-3.8.1 /usr/bin/maven

启动后端服务

代码语言:javascript
复制
cd /www/wwwroot
git clone https://gitee.com/TDuckApp/tduck-platform.git
mv /www/wwwroot/tduck-platform/doc/tduck.sql /www/backup/database

然后在面板中创建一个数据库并点击导入

然后编辑/www/wwwroot/tduck-platform/tduck-api/src/main/resources/application-dev.yml文件,在文件中填入你的数据库用户密码,以及根据注释内容填写完整你的邮箱SMT

接下来开始编译

代码语言:javascript
复制
cd tduck-platform
mvn clean package -DskipTests

打开堡塔应用管理器,如图添加应用

代码语言:javascript
复制
启动文件 java
执行目录 /www/wwwroot/tduck-platform
启动参数 -Dfile.encoding=UTF-8 -jar tduck-api/target/tduck-api.jar

启动前端服务

特别注意:前端服务的测试端口默认为8888,会与宝塔面板默认端口冲突,建议先使用bt 8命令修改宝塔面板为其他未被占用的端口

然后执行下面命令拉取代码并且安装cnpm依赖启动项目
代码语言:javascript
复制
cd /www/wwwroot
git clone https://gitee.com/TDuckApp/tduck-front.git
npm install -g cnpm
ln -s /www/server/nodejs/v14.17.4/bin/cnpm /usr/local/bin/cnpm
cd tduck-front
cnpm install
cnpm run serve

出现如图提示之后即代表启动成功,可通过你的服务器公网IP:8888尝试访问

部署

代码语言:javascript
复制
cd /www/wwwroot/tduck-front
cnpm run build

然后在宝塔创建站点

添加伪静态

代码语言:javascript
复制
    try_files uri uri/ /index.html;
location /tduck-api {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8999/tduck-api;
}

通过你的域名即可打开前台,默认账号密码:test@tduck.com/12345678