一、概述
与 Windows 版(全量绿色包)不同,Linux 版需要单独安装 Java、MySQL、Redis、Nginx ,然后手动部署各服务模块。部署完成后可以通过 startup.sh 脚本管理各子服务,也可以配置为 systemd 系统服务实现开机自启。
服务架构:
终端设备
↓ JT808协议 :8808
jt808_server ← 核心协议服务(Java)
jt1078_server ← 视频流服务(Java)
jt1078_ftp ← 视频附件FTP服务(Java)
jsatl12_server ← 苏标主动安全服务(Java)
↓
MySQL + Redis
↓
Nginx :8800 ← 反向代理,对外提供Web访问
↓
浏览器
二、系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | CentOS 7/8、Ubuntu 20.04/22.04、Debian 11+ |
| CPU | 2 核及以上 |
| 内存 | 4 GB 以上(推荐 8 GB) |
| 磁盘 | 至少 20 GB 可用空间 |
| Java | OpenJDK 8 或 11 |
| MySQL | 8.0 |
| Redis | 5.0+ |
| Nginx | 1.18+ |
三、安装基础环境
3.1 安装 Java
Ubuntu:
bash
apt update && apt install -y openjdk-8-jdk
验证安装:
bash
java -version
# 输出类似:openjdk version "1.8.0_xxx"
3.2 安装 MySQL 8.0
Ubuntu 20.04:
bash
# 更新源
sudo apt update
sudo apt upgrade -y
sudo apt install mysql-server -y
systemctl start mysql
systemctl enable mysql
初始化 MySQL root 密码:
bash
# 默认没有密码,直接登录
mysql -uroot
# 修改密码,并刷新
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'lgx123';
FLUSH PRIVILEGES;
进入 MySQL 后执行:
sql
-- 创建数据库
CREATE DATABASE tracseek ;
3.3 安装 Redis
Ubuntu:
bash
sudo apt install -y redis-server
修改 Redis 配置,设置密码:
bash
# Ubuntu
vi /etc/redis/redis.conf
找到并修改以下配置项:
ini
# 取消注释并设置密码(与 TracSeek 配置保持一致)
requirepass lgx123
启动 Redis:
bash
systemctl start redis
systemctl enable redis
# 验证连接
redis-cli -a lgx123 ping
# 返回 PONG 表示正常
3.4 安装 Nginx
Ubuntu:
bash
sudo apt install -y nginx
四、部署 TracSeek 服务
4.1 上传并解压安装包
将 tracseek.zip 上传到服务器,推荐部署到 /opt/tracseek:
bash
mkdir -p /opt/tracseek
cd /opt/tracseek
unzip tracseek.zip
# 解压后目录结构
ls /opt/tracseek
# jt808_server/ jt1078_server/ jt1078_ftp/ jsatl12_server/ jt808_html/
4.2 初始化数据库
bash
mysql -uroot -plgx123 tracseek < /opt/tracseek/jt808_server/conf/tracseek.sql
验证导入成功:
bash
mysql -uroot -plgx123 -e "USE tracseek; SHOW TABLES;" | head -10
4.3 配置 jt808_server(核心服务)
数据库配置 jt808_server/conf/config/db.properties:
properties
database.url=jdbc:mysql://127.0.0.1:3306/tracseek?useSSL=false&useUnicode=true&characterEncoding=UTF8&serverTimezone=GMT&autoReconnect=true&rewriteBatchedStatements=true
database.username=root
database.password=lgx123
Redis 配置 jt808_server/conf/config/redis.properties:
properties
redis.host=127.0.0.1
redis.port=6379
redis.password=lgx123
redis.database=1
服务端口配置 jt808_server/conf/config/tracseek.properties:
properties
# Web API 内部端口
lingx.http.port=18800
# JT808 设备接入端口
jt808.server.port=8808
公网部署时 ,还需修改 jt808_server/conf/config.properties:
properties
# 将 127.0.0.1 改为服务器公网 IP
tracseek.database.ip=127.0.0.1
tracseek.redis.ip=127.0.0.1
4.4 配置 jt1078_ftp(FTP 附件服务)
编辑 jt1078_ftp/conf/config/ftp.properties,将路径改为 Linux 路径:
properties
jt1078.ftp.port=6898
jt1078.ftp.passivePorts=6891-6897
jt1078.ftp.account=ftp123
jt1078.ftp.password=ftp123456
4.5 配置 jsatl12_server(苏标服务)
编辑 jsatl12_server/conf/config/db.properties:
properties
database.url=jdbc:mysql://127.0.0.1:3306/tracseek?useSSL=false&useUnicode=true&characterEncoding=UTF8&serverTimezone=GMT&autoReconnect=true&rewriteBatchedStatements=true
database.username=root
database.password=lgx123
编辑 jsatl12_server/conf/config/server.properties(公网部署时修改 IP):
properties
file.port=6821
# 修改为 Linux 路径
file.base.dir=/opt/tracseek/jt808_html
# 公网部署时改为公网 IP
file.domain=http://127.0.0.1:8800
4.6 配置 Nginx
创建 TracSeek 的 Nginx 配置文件:
bash
cat > /etc/nginx/conf.d/tracseek.conf << 'EOF'
server {
listen 8800;
server_name _;
client_max_body_size 50m;
# 前端静态文件
location / {
root /opt/tracseek/jt808_html;
index index.html;
try_files $uri $uri/ /index.html;
}
# API 代理
location /api {
proxy_pass http://127.0.0.1:18800/api;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /lingx3api {
proxy_pass http://127.0.0.1:18800/api;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /excel {
proxy_pass http://127.0.0.1:18800/excel;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /download {
proxy_pass http://127.0.0.1:18800/download;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /upload {
proxy_pass http://127.0.0.1:18800/upload;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
# WebSocket 代理
location /websocket {
proxy_pass http://127.0.0.1:18800/websocket;
proxy_http_version 1.1;
proxy_read_timeout 3600s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
location /wss6899/ {
proxy_pass http://127.0.0.1:6899/;
proxy_http_version 1.1;
proxy_read_timeout 3600s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
}
EOF
测试并启动 Nginx:
bash
nginx -t
systemctl start nginx
systemctl enable nginx
五、启动所有服务
给所有启动脚本添加执行权限:
bash
chmod +x /opt/tracseek/jt808_server/startup.sh
chmod +x /opt/tracseek/jt808_server/restart.sh
chmod +x /opt/tracseek/jt1078_server/startup.sh
chmod +x /opt/tracseek/jt1078_server/restart.sh
chmod +x /opt/tracseek/jt1078_ftp/startup.sh
chmod +x /opt/tracseek/jsatl12_server/startup.sh
按顺序启动各服务:
bash
# 1. 启动 jt808 核心服务
cd /opt/tracseek/jt808_server && ./startup.sh
# 2. 启动视频服务
cd /opt/tracseek/jt1078_server && ./startup.sh
# 3. 启动 FTP 附件服务
cd /opt/tracseek/jt1078_ftp && ./startup.sh
# 4. 启动苏标主动安全服务
cd /opt/tracseek/jsatl12_server && ./startup.sh
验证服务是否启动成功:
bash
# 查看 Java 进程
ps -ef | grep java | grep -v grep
# 检查端口监听
ss -tlnp | grep -E '8808|18800|6802|6821|6898'
六、配置 systemd 开机自启(推荐)
以 jt808_server 为例创建服务单元:
bash
cat > /etc/systemd/system/tracseek-jt808.service << 'EOF'
[Unit]
Description=TracSeek JT808 Server
After=network.target mysqld.service redis.service
[Service]
Type=forking
WorkingDirectory=/opt/tracseek/jt808_server
ExecStart=/opt/tracseek/jt808_server/startup.sh
ExecStop=/bin/bash -c "ps -ef | grep com.lingx.jt808.server.App | grep java | awk '{print $2}' | xargs kill -9"
Restart=on-failure
User=root
[Install]
WantedBy=multi-user.target
EOF
其他服务参照以上模板,替换 WorkingDirectory、ExecStart、ExecStop 中的类名即可。
bash
systemctl daemon-reload
systemctl enable tracseek-jt808
systemctl start tracseek-jt808
七、防火墙端口开放
Ubuntu(ufw):
bash
ufw allow 8800/tcp
ufw allow 8808/tcp
ufw allow 6802:6803/tcp
ufw allow 6821/tcp
ufw allow 6891:6898/tcp
ufw reload
八、访问与验证
打开浏览器访问:
http://服务器IP:8800/
| 账号 | 密码 |
|---|---|
| admin | 123456 |
登录后,前往系统设置 → 将 127.0.0.1 修改为服务器公网 IP;视频设置中同样修改。
九、常用运维命令
bash
# 重启 jt808 服务
cd /opt/tracseek/jt808_server && ./restart.sh
# 查看 jt808 实时日志
tail -f /opt/tracseek/jt808_server/logs/lingx.log
# 查看 jt1078 控制台输出
tail -f /opt/tracseek/jt1078_server/console.log
# 停止某个 Java 服务(以 jt808 为例)
ps -ef | grep com.lingx.jt808.server.App | grep java | awk '{print $2}' | xargs kill -9
# 检查所有服务进程
ps -ef | grep -E 'jt808|jt1078|jsatl12' | grep java | grep -v grep
十、相关资源
- 官网 :https://www.lingx.com
- 演示平台 :http://gps.lingx.com/
- 技术支持 QQ :
283853318