中文 / [English](LOCAL_INSTALL.en.md) # 本地部署教程 目的: - 降低部署门槛。方便社区用户本地一键部署,极大减少部署工作量 - 更专注于体验产品使用 - 部署环境统一,便于定位并解决异常 # ❗❗❗ 注意 ```js ❗❗❗" 安装包内的服务代码并不是当下最新的,需要重新构建更新包后,点击neatlogic系统右上角“问号”图标的帮助文档才能正常显示使用" ``` 如发现问题:<br> >请本地研发环境更新最新代码后,再确认是否重现<br> > **如果无法重现,需自行编译打包到具体服务部署路径(查看本文“服务详细”有介绍)替换更新,目前只有<br> > neatlogic : <a href="https://gitee.com/neat-logic/neatlogic-itom-all/blob/develop3.0.0/WAR_INSTALL.md">打包教程,点此查看</a> 或 <a href="https://gitee.com/neat-logic/neatlogic-itom-all/releases">使用最新封板提供的war包,点此查看</a>,停止服务,并删除/app/systems/neatlogic/apps下面的所有文件后,将新的war包copy过来,重启服务即可<br> > neatlogic-web : <a href="https://gitee.com/neat-logic/neatlogic-web/blob/develop3.0.0/README.md">打包教程,点此查看</a> 或 <a href="https://gitee.com/neat-logic/neatlogic-itom-all/releases">使用最新封板提供的dist包,点此查看</a>,删除/app/systems/neatlogic-web/dist目录,将新的dist目录copy过来即可<br> > neatlogic-runner :mvn install 出jar 替换重启服务即可<br> > neatlogic-autoexec-backend :纯脚本,直接替换文件即可<br> > 这几个服务需要更新<br> > **如果重现,请联系我们,提issue,谢谢!<br> ## 详细步骤(使用root用户执行) 下载一键部署安装包(目前仅开放支持x86架构的系统,建议在centos7环境下安装) [点击下载](https://pan.baidu.com/s/1WsTvyIKjK-Bfd3kQzQfnZA?pwd=ccct) ``` 1.拷贝安装包到目标机器的“/”根目录(如果条件不满足,在/目录加软连接对应目录,如: ln -s /home/app/app /app) 2.解压安装包 tar -xvf neatlogic_all_install_community_x86_64.tar.gz 3.进入install目录执行setup.sh脚本 cd /app/install && sh setup.sh 4.脚本执行完后,可以chrome浏览器访问http://虚拟机ip:8090/demo 前端页面,账号密码: admin/neatlogic@901 ``` 如有问题,因为环境问题,可能会有很多原因导致,可以先自己排查一下。 联系我们: - **企业微信** <br> <p align="left"><img src="https://gitee.com/neat-logic/neatlogic-itom-all/raw/develop3.0.0/README_IMAGES/contact_me.png" width="150" /></p> ## 服务详细 ```js 📌" deployadmin命令需要切app用户才能执行 " ``` | 服务名 | 端口 | 访问地址 | 服务启停命令 | 部署路径(更新版本) | 配置文件路径 | 描述 | | ---- | ---- | ---- | ---- | ---- | ---- | ---- | | neatlogic | 8282 | - | deployadmin -s neatlogic -a startall/stopall/restartall | /app/systems/neatlogic/apps/neatlogic.war | /app/systems/neatlogic/config/ |tomcat后端服务 ,通过http://后端虚拟机ip:8282/neatlogic/tenant/check/demo 验证服务是否正常 | | neatlogic-web | 8090 | http://虚拟机ip:8090/demo | service nginx start/stop/restart | /app/systems/neatlogic-web/dist | - | 前端服务 | | neatlogic-runner | 8084、tagent心跳端口:8888 | - | deployadmin -s neatlogic-runner -a startall/stopall/restartall | /app/systems/neatlogic-runner/lib/neatlogic-runner.jar | /app/systems/neatlogic-runner/config |执行器runner后端服务,通过http://虚拟机ip:8084/autoexecrunner/anonymous/api/rest/server/health/check/demo 验证服务是否正常| | nginx | - | - | service nginx start/stop/restart | /app/systems/nginx/ | /app/systems/nginx/conf | - | | neatlogicdb | 3306 | - | service neatlogicdb start/stop/restart | /app/databases/neatlogicdb | /app/databases/neatlogicdb/conf | mysql8数据库 , client连接通过命令: /app/databases/neatlogicdb/mysql/bin/mysql -uroot -p'neatlogic@901' --socket=/app/databases/neatlogicdb/data/mysql.sock | | collectdb | 27017 | - | service collectdb start/stop/restart | /app/databases/collectdb | /app/databases/collectdb/conf | mongodb数据库 | | neatlogic-autoexec-backend | - | - | - | /app/systems/autoexec/ | /app/systems/autoexec/conf | - | ## FAQ ### 乱码 ![输入图片说明](QUICK_START_IMAGES/faq1.png) **原因** :java_options 缺少-Dfile.encoding=UTF-8,安装包下个版本更新<br> **解决办法** :vim /app/systems/neatlogic/sysconfig/serveradmin/neatlogic.env ![输入图片说明](QUICK_START_IMAGES/faq11.png) ### deployadmin: command not found<br> **原因** :一般客户安装好环境之后 不会给root用户的,所以需要用app用户执行<br> **解决办法** :app用户执行或在root用户的.bash_profile PATH加上/app/serveradmin/bin<br> ### 页面提示租户不存在 ![输入图片说明](README_IMAGES/BUILD/tomcatFailed.png) ![输入图片说明](README_IMAGES/BUILD/tomcatFailed2.png) **原因** : 后端服务没启动或有异常导致启动失败<br> **解决办法** :停止服务 deployadmin -s neatlogic -a stopall,再启动服务 deployadmin -s neatlogic -a startall 观察日志没有异常,成功启动服务后(INFO: [xxxxx]毫秒后服务器启动)。<br> 如果前后端服务不在一个服务器上则在前端的服务器curl一下 ``` http://后端虚拟机ip:8282/neatlogic/tenant/check/demo ``` 确保前端服务器和后端服务器网络是正常的。<br> 如果前后端服务在同一个服务器上则在浏览器上访问下 ``` http://后端虚拟机ip:8282/neatlogic/tenant/check/demo ``` 看能否正常返回数据,类似如下: ``` {"Status":"OK","encrypt":"md5","themeConfig":{},"mobileFileDownloadEnabled":"0","commercialModuleSet":["pbc","process","cmdb","tenant"]} ``` 说明tomcat后端服务正常启动了,然后重新在浏览器访问http://虚拟机ip:8090/demo<br>