jxTMS是以低成本快速定制为核心诉求的、SaaS模式的业务管理系统二次开发平台,可参考:jxTMS简介。建议使用前先阅读:jxTMS设计思想,以更好的使用jxTMS。
本次发布为docker版本,本系列文章主要介绍docker版本的简单使用:
准备
1、下拉镜像
因为是docker版本,所以只要下拉相应的镜像而免去了安装与配置的麻烦:
docker pull jxandrew/tms
镜像因为预装了java、mysql和rabbitMQ等环境依赖,所以比较大,请耐心等待。
2、启动容器
镜像下拉成功后,执行:
docker run -itd --name tms --privileged=true -p 10022:22 -p 10018:10018 -p 10028:10028 -p 1883:1883 -p 10873:873 jxandrew/tms /sbin/init
即可启动一个名为tms的容器。该容器使用到了五个端口:
-
10022端口,该端口映射到容器的22端口,用于ssh/sftp。其中ssh主要用于显示log,sftp主要用于上传定制代码
-
10018端口,是web访问的主端口
-
10028端口,提供给外部系统访问的REST端口
-
1883端口,是MQTT接收端口
-
10873端口,该端口映射到容器的873端口,用于rsync同步代码
tms容器启动后,可执行:
docker attach tms
连接到tms容器的root用户控制台,某些时候我们需要通过该控制台执行一些任务。
关闭容器,可执行:
docker stop tms
容器关闭后,如需再次启动,则执行:
docker start tms
由于启动容器时使用了/sbin/init作为容器启动命令,所以tms容器会自动启动一系列服务,其中就包括ssh。可以用ssh登录到容器中:
ssh root@127.0.0.1 -p 10022
要求添加key时输入yes,然后输入密码【123456】即以root用户登录到tms容器中
3、启动jxTMS
4.0版jxTMS在启动jxTMS的同时,还会启动一个python服务,所以笔者制作了一个tms的服务。以root登录到tms容器中,然后执行:
systemctl start tms
即会启动jxTMS以及python服务。如果想在容器启动后就自动启动jxTMS,则输入:
systemctl enable tms
jxTMS是设计用来作为服务程序一直执行的,所以没有关闭命令,如果想关闭jxTMS需要手动杀掉jxTMS进程:
#查看jxTMS进程号
psg java
#该脚本会显示所有命令行中带java的进程,找到【java -jar tms.jar】所在行,开头的数字就是进程号
#kill 12345
注:jxTMS是以java8开发的,千万不要升级java环境
4、系统日志
执行如下命令来查看jxTMS的系统日志:
cd /home/tms/logs
#查看实时日志
tail -f rolling.log
#查看倒数xxx行的日志,同时可以分页慢慢看
tail -n xxx rolling.log | more
#从头分页看日志,但数量比较多,不好定位
more rolling.log
注:jxTMS的系统日志中只包含平台相关的日志信息,开发者一般是不需要关心系统日志,而更关心的是自己所需定制的组织的日志信息。各组织的运行信息和用户操作信息由组织日志提供,后面会予以具体讲解
执行如下命令来查看python服务的系统日志:
cd /home/tms/python/logs
#查看实时日志
tail -f rolling.log
#查看倒数xxx行的日志,同时可以分页慢慢看
tail -n xxx rolling.log | more
#从头分页看日志,但数量比较多,不好定位
more rolling.log
参考资料:
下面的系列文章讲述了如何用jxTMS开发一个实用的业务功能:
下面的系列文章讲述了jxTMS的一些基本开发能力: