使用 Docker 部署 SurveyKing 调查问卷系统

news2025/1/13 7:41:45

1)SurveyKing 介绍

SurveyKing 是一款功能强大、操作简便的开源问卷系统。它不仅满足了用户对问卷调查的基本需求,还提供了丰富的逻辑设置和灵活的问题设置,使得问卷制作更加智能化和个性化。此外,SurveyKing 还具有快速部署和安全可靠等优点,使得用户能够轻松高效地开展问卷调查工作。

2)产品对比

GitHub:https://github.com/javahuang/SurveyKing

/问卷网腾讯问卷问卷星金数据SurveyKing
问卷调查✔️✔️✔️✔️✔️
在线考试✔️✔️✔️✔️
投票✔️✔️✔️✔️✔️
支持题型🥇🥉🥇🥈🥈
题型设置🥇🥉🥇🥇🥇
自动计算🥉🥈🥇
逻辑设置🥈🥈🥈🥈🥇
自定义校验✔️
自定义导出🥈🥉🥇
手机端编辑✔️✔️✔️✔️✔️
公开查询✔️✔️✔️
私有部署💰💰💰💰💰💰💰💰💰💰💰💰🆓

3)功能特性

  • 🥇 支持 20 多种题型,如填空、选择、下拉、级联、矩阵、分页、签名、题组、上传、横向填空等
  • 🎉 多种创建问卷方式,Excel 导入问卷、文本导入问卷、在线编辑器编辑问卷
  • 💪 多种问卷设置,支持白名单答卷、公开查询、答卷限制等
  • 🎇 数据,支持问卷数据新增、编辑、标记、导出、打印、预览和打包下载附件
  • 🎨 报表,支持对问题实时统计分析并以图形(条形图、柱形图、扇形图)、表格的形式展示输出和导出
  • 🚀 安装部署简单(最快 1 分钟部署),支持一键 Windows 部署、一键 Docker 部署、前后端分离部署、单 Jar 部署、二级目录部署
  • 🥊 响应式布局,所有页面完美适配电脑端和移动端 (包含问卷编辑、设置、答卷)
  • 👬 支持多人协作管理问卷
  • 🎁 后端支持多种数据库,可支持所有带有 jdbc 驱动的关系型数据库
  • 🐯 安全、可靠、稳定、高性能的后端 API 服务
  • 🙆 支持完善的 RBAC 权限控制
  • 🦋 支持可视化配置问卷跳转和显示逻辑,以及通过公式实现自定义逻辑(卷王的逻辑设置比目前主流商业调查问卷系统强大的多)
    • 显示隐藏逻辑
    • 值计算逻辑 动态计算问题答案,从最简单的根据身高体重计算BMI,到复杂的根据多个问题答案组合逻辑和数值实现复杂的运算
    • 文本替换逻辑 动态显示题目内容
    • 值校验逻辑 可以根据其他问题答案来判断当前问题是否有效
    • 必填逻辑 动态判断当前问题是否必填
    • 选项自动勾选逻辑 根据其他问题和选项答案自动勾选
    • 选项显示隐藏逻辑 动态的显示或者隐藏选项
    • 结束问卷逻辑
    • 跳转逻辑 动态跳转
    • 结束问卷自定义提示语逻辑 答卷后,可以根据问卷答案或者考试分数来显示不同的提示语信息
    • 自定义跳转链接逻辑 答卷后,可以根据问卷答案或者考试分数来跳转到不同的链接,且支持携带答案参数
  • 🌈 支持选项唯一设置,多问卷数据关联查询、更新和删除,考试自动算分,自定义提示语,自定义跳转链接等等

4)在线体验

Demo:https://s.surveyking.cn/user/login

image.png
image.png
image.png

5)在线部署

5.1)安装 Docker 环境

# 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh
# 关闭防火墙
systemctl disable --now firewalld
setenforce 0
# 启用 Docker
systemctl enable --now docker

5.2)开启 IPv4 forwarding

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
systemctl restart network
sysctl net.ipv4.ip_forward

5.3)部署 SurveyKing

# 创建 SurveyKing 数据存放目录
mkdir /docker/surveyking -p

# 使用 Docker-Cli 运行 SurveyKing 容器
docker run -p 1991:1991 -v /docker/surveyking:/surveyking registry.cn-hangzhou.aliyuncs.com/surveyking/surveyking

5.4)验证 SurveyKing

docker ps -a

image.png

6)访问 SurveyKing

使用浏览器访问 SurveyKing 前台,http://服务器IP地址:1999

登录界面
用户名:admin
密码:123456

image.png

问卷管理页

image.png

问卷创建页

image.png
image.png

用户管理

image.png

发布管理

image.png

访问体验

image.png

总结

SurveyKing 从开源到现在,于 Github 所获得 Start 已经有 2.8K
对于笔者而言,SurveyKing 为笔者目前使用过最好的问卷调查系统。无论是加密传输,数据保护,密码访问,工作流,数据管理,问卷修改,还是数据导出,数据统计分析,卷王无疑都是非常出色的。问卷系统实时展示条形图,柱状图,扇形图,以及表格的形式展示数据。数据内容导出 Excel 与 zip 压缩包,方便归档整理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1609308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

gin框架提高篇(四)

参数校验(一) uuid包:https://github.com/satori/go.uuid 因为作者更改了参数限制,导致会出问题 → 问题解决 package mainimport ("fmt""github.com/gin-gonic/gin""github.com/go-playground/validato…

STL容器搜索:当直接访问STL容器时,如何执行有效和正确的搜索?

在访问STL容器时进行搜索 一、简介二、std::vector, std::deque, std::list三、std::map, std::multimap, std::set, std::multiset四、std::string六、总结 一、简介 本文主要了解如何在直接访问c容器时高效地进行搜索。在STL容器中搜索,要牢记一个原则&#xff1…

禾赛面经分享

前言 禾赛的linux开发工程师(实习),base是上海,以下是面试遇到的一些问题。 目录 前言题目与答案C语言部分嵌入式相关手撕题 题目与答案 C语言部分 static关键字的作用 static修饰局部变量时:①改变了其存储位置&…

基础知识集合

https://blog.csdn.net/sheng_q/category_10901984.html?spm1001.2014.3001.5482 epoll 事件驱动的I/O模型,同时处理大量的文件描述符 内核与用户空间共享一个事件表:监控的文件描述符以它们的状态,当状态变化,内核将事件通知给…

【分治】Leetcode 库存管理 III

题目讲解 LCR 159. 库存管理 III 本题的含义就是让求出最小的k个数 算法讲解 class Solution { public:void my_qsort(vector<int>& nums, int l, int r){if(l > r) return ;int i l, left l-1, right r1;int key nums[rand() % (r - l 1) l];//完成分三…

大数据真题讲解系列——拼多多数据分析面试题

拼多多数据分析面试题&#xff1a;连续3次为球队得分的球员名单 问题&#xff1a; 两支篮球队进行了激烈的比赛&#xff0c;比分交替上升。比赛结束后&#xff0c;你有一个两队分数的明细表&#xff08;名称为“分数表”&#xff09;。表中记录了球队、球员号码、球员姓名、得…

hv第一坑:定时器

错误代码 重试策略&#xff1a;一次延迟1s,最长30s直至事件成功。 int try_count 0;//do something if(not success)m_loop->setTimerInLoop((try_count > 30 ? 30: try_count) *1000 , cb, INFINITE, 0x100);表现现象 cpu 爆了内存爆了 总结原因 hv内部代码bug&…

Maven通过flatten-maven-plugin插件实现多模块版本统一管理

正文 起因是公司开始推代码版本管理的相关制度&#xff0c;而开发过程中经常使用多模块构建项目&#xff0c;每次做版本管理时都需要对每个模块及子模块下的pom文件中parent.version和模块下依赖中的version进行修改&#xff0c;改的地方非常多&#xff0c;且非常容易漏。为此…

如何用Python构建一个生产级别的电影推荐系统 - 机器学习手册

构建项目是彻底学习概念并发展必要技能的最有效方式之一。 项目使您沉浸在现实世界的问题解决中&#xff0c;巩固您的知识&#xff0c;并培养批判性思维、适应能力和项目管理专业知识。 本指南将带您逐步构建一个根据用户喜好量身定制的电影推荐系统。我们将利用一个庞大的包…

20240419,继承,多态

土豆的老家陕西安康&#xff01;怪舒服的咯&#xff0c;广西一眼望去全是房子啦&#xff0c;小时候一眼开敞水田再也回不来啦 目录 五&#xff0c;继承 5.1 基本语法 5.2 继承方式 5.3 继承中的对象模型 5.4 构造和析构顺序 5.5 同名成员处理 5.6 同名静态成员处理 5.…

c#+unity基础

序列化&#xff1a; [SerializeField]&#xff0c;点不出来&#xff0c;只能在面板上显示绑定游戏物体 //公有隐藏 特有函数 特有函数&#xff1a;不需要调用&#xff0c;自动执行 Awake最先执行->OnEable 面向对象思想 面向对象思想&#xff1a;分为具体对象和抽象对…

从预训练损失的角度,理解语言模型的涌现能力

原文&#xff1a;Understanding Emergent Abilities of Language Models from the Loss Perspective 摘要 本文从预训练损失的角度重新审视语言模型的涌现能力&#xff0c;挑战了以往以模型大小或训练计算量为标准的观念。通过实验&#xff0c;作者发现预训练损失是预测下游任…

【算法】合并两个有序链表

本题来源---《合并两个有序链表》 题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] /*** Definition for singl…

JavaSE——常用API进阶二(6/8)-ZoneId、ZoneDateTime、Instant(常见方法、用法示例)

目录 ZoneId 常见方法 用法示例 ZoneDateTime 常见方法 用法示例 Instant 常见方法 用法示例 如果在开发中我们有这样的需求&#xff1a;我们的系统需要获取美国现在的时间&#xff0c;或者其他地区的时间给用户观看&#xff0c;或者进行一些处理&#xff0c;那应该怎…

循环开关定时器(Smart PLC梯形图代码)

很多设备不需要复杂的逻辑时序控制,只需要实现简单的循环定时开关功能,对于这样的控制我们可以利用定时器组合去实现,但是如果系统里需要循环定时控制的设备比较多,那我们建议大家编写一个这样的循环定时开关功能块,SMART PLC循环开关定时器还可以参考下面文章链接 1、周…

短视频批量采集提取软件|视频关键词下载工具

短视频批量采集软件&#xff1a;快速抓取、高效下载 一、开发背景 随着短视频平台的兴起&#xff0c;获取并分析相关视频内容已成为许多业务的必要步骤。然而&#xff0c;传统的手动方式无法满足快速、批量获取的需求&#xff0c;因此我们开发了一款专业的短视频批量采集软件。…

FreeRTOS时间管理

FreeRTOS时间管理 主要要了解延时函数&#xff1a; 相对延时&#xff1a;指每次延时都是从执行函数vTaskDelay()开始&#xff0c;直到延时指定的时间结束。 绝对延时&#xff1a;指将整个任务的运行周期看成一个整体&#xff0c;适用于需要按照一定频率运行的任务。 函数 vTa…

springcloud第4季 springcloud-alibaba之sentinel

一 sentinel介绍 1.1 sentinel作用 sentinel是面向分布式、多语言异构化服务架构的流量治理组件&#xff0c;主要以流量为切入点&#xff0c;从流量路由、流量控制、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障服务的稳定性。 1.2 组成部分 sen…

A Geolocation Databases Study(2011年)第五部分:Evalution Model

下载地址:A Geolocation Databases Study | IEEE Journals & Magazine | IEEE Xplore 被引次数:195 Shavitt Y, Zilberman N. A geolocation databases study[J]. IEEE Journal on Selected Areas in Communications, 2011, 29(10): 2044-2056. 5. Discussion 在我们讨…

Jenkins的安装和部署

文章目录 概述Jenkins部署项目的流程jenkins的安装启动创建容器进入容器浏览器访问8085端口 Jenkins创建项目创建example项目 概述 Jenkins&#xff1a;是一个开源的、提供友好操作界面的持续集成&#xff08;CLI&#xff09;工具&#xff0c;主要用于持续、自动构建的一些定时…