购买咨询
微信咨询
电话咨询
预约演示
跳转到内容

脚本一键部署

🎉 只需几分钟

通过 Shell 脚本可快速在 Ubuntu/CentOS 系统中完成调问系统的自动化部署,包含环境检测、依赖安装、服务配置等全流程操作。

安装命令

sh
sudo wget https://dw-install.oss-cn-beijing.aliyuncs.com/shell/install-ubuntu-2.71.sh && bash install-ubuntu-2.71.sh
sh
wget https://dw-install.oss-cn-beijing.aliyuncs.com/shell/install-centos-1.61.sh && bash install-centos-1.61.sh

安装视频

安装说明

前置条件

  • 架构要求:服务器架构为 x86_64,暂不支持 arm 架构
  • 硬件要求:服务器内存 ≥ 8GB,硬盘可用空间 ≥ 20GB
  • 网络要求:服务器需能访问公网,确保可下载安装包及依赖
  • 发行版要求
    • CentOS 7
    • Ubuntu 18Ubuntu 20Ubuntu 22Ubuntu 24

服务冲突处理逻辑

脚本使用包管理器安装服务:MySQLRedisJDKElasticsearch,可能会出现冲突的情况。您需要保证服务器上没有卸载残留文件影响安装,端口冲突的情况无需考虑,脚本会自动处理端口冲突的问题。对于已有服务,脚本检测覆盖的安装方式如下:

  • 包管理器安装(含系统默认源、第三方PPA源,如apt/dpkg);
  • 离线安装(含二进制包解压、源码编译、免安装绿色版,无论是否配置Systemd服务、是否加入系统全局PATH);

此处对脚本已有服务冲突逻辑进行说明,若您服务器已安装上述服务则需要查看以下内容。

本地已有MySQL服务

已安装MariaDB

脚本未对Maria进DB行冲突处理,若已安装MariaDB需要提前处理进行取舍,避免冲突导致脚本退出。

sh
# 查看是否安装MairaDB。
systemctl status mariadb

MySQL版本小于8

  • 包管理器安装: Ubuntu20 及以上的版本如果发现本地安装的mysql版本小于8,会直接使用包管理器进行安装,若低版本的MySQL是通过包管理器管理的,那么脚本运行及实际使用可能会出现问题。
  • 源码编译安装: 小于 ubuntu20 的版本,由于其默认的官方源就是小于MySQL8的,因此会直接通过源码编译的方式进行安装。但是源码编译可能需要较长时间,编译时间与CPU核心数相联系。

MySQL版本大于8

  • 检查数据库: 其中Mysql版本若大于8或者等于8将使用本地MySQL服务,但脚本会创建dwsurvey数据库,需要保证已有的MySQL服务中没有同名数据库,以免脚本退出。
  • 检查连接用户: 复用MySQL数据库时可以指定不同端口的MySQL来进行连接,处理服务器上有多个MySQL服务的情况。复用时指定用户然后输入密码即可,但是需要保证进行复用的用户在本地可以使用127.0.0.1进行连接。
shell
# 保证进行复用的用户可通过如下方式登录
mysql -h 127.0.0.1 -P 3307 -u root -p
# 若无法登录请使用原有登录的方式创建已有用户的127.0.0.1的登录地址
> create user 'diaowen'@'127.0.0.1' identified by 'diaowen?123'
> grant all privileges on *.* to 'diaowen'@'127.0.0.1' with grant option;
> flush privileges;

MySQL多用户

  • localhost:默认用Unix Socket文件连接,多MySQL实例会共用Socket导致冲突。
  • 127.0.0.1:强制使用TCP/IP协议连接,绑定独立端口,无复用问题。

本地已有Redis服务

复用当前服务

脚本会检测本地安装的运行在不同端口的Redis服务,请确认需要复用的服务的密码,脚本会在连续输入三次错误密码后退出。建议优先复用闲置端口的Redis服务,减少资源占用。

新建Redis服务

若本地Redis存储有业务数据,担心复用导致数据污染/冲突。可选择新建Redis服务。脚本会自动分配未被占用的端口,新建服务为调问系统专属,数据隔离性更好,不会影响原有Redis数据。

本地已有JDK服务

已有非JDK1.8服务

脚本可以通过在服务启动时使用绝对路径来指定jdk版本,处理本地已有非 JDK1.8 的情况。脚本在安装时不会影响原有JDK服务,污染环境变量,但依然是建议在安装前进行取舍。如果是纯净环境那么脚本的运行可以保障,后续服务的运行也较为稳定。

本地已有ES服务

已有Elasticsearch服务

脚本不会去检测已有的Elasticsearch服务,会直接进行安装,自动处理端口冲突的问题。JVM的初始堆内存和最大堆内容都会被设置为1G,在安装前需要保证服务器根目录无dwsurvey文件夹,且systemd管理服务中无dw-elasticsearch服务即可。

更新步骤

  1. 停止服务
shell
sudo systemctl stop dwsurvey
  1. 查看 /dwsurvey/jar/ 中的jar包包名,更新需要保证jar包名完全相同
shell
ls /dwsurvey/jar/
  1. 将原jar包备份
sh
sudo mv dwsurvey-ent-vue-8.11.3.jar dwsurvey-ent-vue-8.11.3.jar.0207.bak
  1. 将新jar包传输进来,并改名使得与原jar包同名
  2. 将改名后的新jar包移动进来,来替代原有jar包
  3. 启动服务,等待服务完全启动
shell
sudo systemctl start dwsurvey
  1. 登录系统检查更新情况

调问-专业的开源问卷表单系统