Skip to content

Commit 1bdc7eb

Browse files
author
th-ci
committed
wip: 配置bus和track的nginx
1 parent 24d7c0e commit 1bdc7eb

File tree

11 files changed

+90
-95
lines changed

11 files changed

+90
-95
lines changed

.env.default

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ SERVER_IP_INTERNAL='' # 127.0.0.1
77
SERVER_HOSTNAME='' # livedvr.tripsdd.com
88
SSL_CERTIFICATE='' # /home/docker-compose/ssl/livedvr_tripsdd_com
99

10+
# bus和track部署在同一台服务器上时, 需要通过域名区分两者
11+
BUS_HOSTNAME=${SERVER_HOSTNAME}
12+
BUS_SSL_CERTIFICATE=${SSL_CERTIFICATE}
13+
TRACK_HOSTNAME=${SERVER_HOSTNAME}
14+
TRACK_SSL_CERTIFICATE=${SSL_CERTIFICATE}
15+
1016
#---------------------------------------------
1117
# 前端配置
1218
WEB_PORT_HTTP=80
@@ -48,9 +54,9 @@ VIDEO_PORT_HTTPS_5=9089
4854

4955
# 必填, 后端和流媒体服务往网关服务器注册或者下发指令
5056
# 单机部署推荐别名jtt808,内网多服务器部署推荐内网IP, 外网部署使用外网IP
51-
JTT808_HOSTNAME='' # jtt808 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
57+
JTT808_HOST='jtt808' # jtt808 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
5258

53-
#808网关
59+
## 808网关
5460
JTT808_IP=${SERVER_IP_PUBLIC} # 默认使用服务器外网IP,设备使用
5561
JTT808_PORT=9011
5662
JTT808_PORT_HTTP=9012
@@ -61,31 +67,40 @@ JTT808_PORT_FTP_PASSIVE=9041-9049
6167

6268
#---------------------------------------------
6369

64-
#MYSQL, 必填
70+
## maintain
71+
MAINTAIN_HOST='maintain' # maintain | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
72+
MAINTAIN_PORT='8080'
73+
# 必填, TOKEN目录的绝对路径
74+
# - access/ras_key|ras_key.pub: 访问密钥的公私钥对
75+
# - refresh/ras_key|ras_key.pub: 刷新密钥的公私钥对
76+
# - ip2region.xdb: ip到区域的映射数据, 下载连接: https://raw.githubusercontent.com/lionsoul2014/ip2region/master/data/ip2region.xdb
77+
MAINTAIN_TOKEN_DIR=''
78+
79+
## MYSQL, 必填
6580
MYSQL_HOST='mysql8' # mysql8 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
6681
MYSQL_PORT=3306
6782
MYSQL_USERNAME='root' #xxxxxxxx
6883
MYSQL_PASSWORD='' #xxxxxxxx
6984

70-
#REDIS, 必填
85+
## REDIS, 必填
7186
REDIS_HOST='redis' # redis | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
7287
REDIS_PORT=6379
7388
REDIS_PASSWORD='' #xxxxxxxx
7489

75-
# MongoDB, jtt808必填
90+
## MongoDB, jtt808必填
7691
MONGODB_HOST='mongodb' # mongodb | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
7792
MONGODB_PORT=27017
7893
MONGODB_PORT_HTTP=15672
7994
MONGODB_USERNAME='root' # MONGODB
8095
MONGODB_PASSWORD='' # MONGODB
8196

82-
# Rabbitmq, Rtp存储模式必填
97+
## Rabbitmq, Rtp存储模式必填
8398
RABBITMQ_HOST='rabbitmq' # rabbitmq | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
8499
RABBITMQ_PORT=5672
85100
RABBITMQ_USERNAME='' # admin
86101
RABBITMQ_PASSWORD='' # 123
87102

88-
# Minio, Rtp存储模式必填
103+
## Minio, Rtp存储模式必填
89104
MINIO_HOST='minio' # minio | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC}
90105
MINIO_PORT=9000
91106
MINIO_USER=minioadmin

environments/.env.video.storage

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ VIDEO_HOSTNAME=livedvr.tripsdd.com
55
VIDEO_SSL_CERTIFICATE=/home/docker-compose/ssl/livedvr_tripsdd_com
66

77
## 网关服务器
8-
JTT808_HOSTNAME=103.20.204.149
8+
JTT808_HOST=103.20.204.149
99

1010
# RABBITMQ
1111
RABBITMQ_HOST=1111 # 58.82.168.181

environments/.env.video.stream

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ VIDEO_HOSTNAME=livedvr.tripsdd.com
55
VIDEO_SSL_CERTIFICATE=/home/docker-compose/ssl/livedvr_tripsdd_com
66

77
## 网关服务器
8-
JTT808_HOSTNAME=103.20.204.149
8+
JTT808_HOST=103.20.204.149

maintain/compose.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ services:
66
restart: always
77
volumes:
88
- /etc/localtime:/etc/localtime
9-
- /home/token:/home/token
9+
- ${MAINTAIN_TOKEN_DIR:?required}:/home/token
1010
- /data/logs/maintain:/logs
1111
ports:
12-
- 8080:8080
12+
- ${MAINTAIN_PORT:-8080}:8080
1313
environment:
1414
# DB
1515
- SPRING_DATASOURCE_URL=jdbc:mysql://${MYSQL_HOST:-mysql8}:${MYSQL_PORT:-3306}/maintain?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
@@ -41,7 +41,7 @@ services:
4141
- spring_my_minio_secretKey=${MINIO_SECRETKEY:?required}
4242

4343
# 网关指令
44-
- spring_my_gateway_jtt808_url=http://${JTT808_HOSTNAME:-jtt808}:${JTT808_PORT_HTTP:-9012}
44+
- spring_my_gateway_jtt808_url=http://${JTT808_HOST:-jtt808}:${JTT808_PORT_HTTP:-9012}
4545

4646
# 短信服务
4747
# - tencent_sms_secret_id=AKID74lBKCoAF2YomUv60e06vTkkSt3wYtxk
@@ -55,10 +55,10 @@ services:
5555
- spring_my_push_group_key=98b94f0f85808bfa0ac9cb5b
5656
- spring_my_push_group_secret=63b4ff15d550ba1675b1dceb
5757

58-
# 跨域 逗号分割
59-
- spring_my_cors_origin-patterns=https://*.tgtrack.com,https://*.tripsdd.com,https://tripsdd.com
58+
# 跨域 逗号分割
59+
- spring_my_cors_origin-patterns=https://*.tgtrack.com,https://*.tripsdd.com,https://tripsdd.com
6060

61-
#Mail-预设了bus的邮箱
61+
# Mail-预设了bus的邮箱
6262
- spring_mail_host=${MAIL_HOST:-smtp.transcodegroup.com}
6363
- spring_mail_username=${MAIL_USERNAME:-smtp.transcodegroup.com}
6464
- spring_mail_password=${MAIL_PASSWORD:?required}

nginx/compose.bus.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,19 @@ services:
22
nginx:
33
configs:
44
- source: bus.conf.template
5-
target: /etc/nginx/templates/bus.conf.template
5+
target: /etc/nginx/templates/bus.conf.template
6+
secrets:
7+
- bus-ssl-certificate
8+
- bus-ssl-certificate-key
9+
environment:
10+
- BUS_HOSTNAME=${BUS_HOSTNAME:?required}
11+
12+
secrets:
13+
bus-ssl-certificate:
14+
file: ${BUS_SSL_CERTIFICATE:?required}.crt
15+
bus-ssl-certificate-key:
16+
file: ${BUS_SSL_CERTIFICATE:?required}.key
17+
18+
configs:
19+
bus.conf.template:
20+
file: ./conf/conf.d/bus.conf.template

nginx/compose.track.yml

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,25 @@ services:
22
nginx:
33
configs:
44
- source: track.conf.template
5-
target: /etc/nginx/templates/track.conf.template
5+
target: /etc/nginx/templates/track.conf.template
6+
secrets:
7+
- track-ssl-certificate
8+
- track-ssl-certificate-key
9+
environment:
10+
- MAINTAIN_HOST=${MAINTAIN_HOST}
11+
- MAINTAIN_PORT=${MAINTAIN_PORT}
12+
- MINIO_HOST=${MINIO_HOST}
13+
- MINIO_PORT=${MINIO_PORT}
14+
- JTT808_HOST=${JTT808_HOST}
15+
- JTT808_PORT_HTTP=${JTT808_PORT_HTTP}
16+
- TRACK_HOSTNAME=${TRACK_HOSTNAME:?required}
17+
18+
secrets:
19+
track-ssl-certificate:
20+
file: ${TRACK_SSL_CERTIFICATE:?required}.crt
21+
track-ssl-certificate-key:
22+
file: ${TRACK_SSL_CERTIFICATE:?required}.key
23+
24+
configs:
25+
track.conf.template:
26+
file: ./conf/conf.d/track.conf.template

nginx/compose.yml

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ services:
44
container_name: nginx
55
restart: always
66
ports:
7-
# 默认443和80
8-
- ${WEB_PORT_HTTPS}:443
9-
- ${WEB_PORT_HTTP}:80
7+
- ${WEB_PORT_HTTPS:-443}:443
8+
- ${WEB_PORT_HTTP:-80}:80
109
privileged: true
1110
secrets:
1211
- ssl-certificate
@@ -17,8 +16,6 @@ services:
1716
configs:
1817
- source: nginx.conf
1918
target: /etc/nginx/nginx.conf
20-
environment:
21-
- JTT808_PORT_HTTP=${JTT808_PORT_HTTP}
2219

2320
secrets:
2421
ssl-certificate:
@@ -29,7 +26,3 @@ secrets:
2926
configs:
3027
nginx.conf:
3128
file: ./conf/nginx.conf
32-
bus.conf.template:
33-
file: ./conf/conf.d/bus.conf.template
34-
track.conf.template:
35-
file: ./conf/conf.d/track.conf.template

nginx/conf/conf.d/bus.conf.template

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,13 @@ upstream dsp_server {
1414
server {
1515
listen 80;
1616
listen [::]:80;
17-
# listen 443 ssl;
18-
# listen [::]:443 ssl;
19-
server_name ${PUBLIC_HOSTNAME_BUS} tg-th-bus.ipcjs.top;
17+
listen 443 ssl;
18+
listen [::]:443 ssl;
19+
server_name ${BUS_HOSTNAME};
20+
21+
ssl_certificate /run/secrets/bus-ssl-certificate;
22+
ssl_certificate_key /run/secrets/bus-ssl-certificate-key;
2023

21-
# 证书文件 *.crt *.cer
22-
ssl_certificate /etc/nginx/ssl/xn.transcodegroup.cn.crt;
23-
# 证书key文件
24-
ssl_certificate_key /etc/nginx/ssl/xn.transcodegroup.cn.key;
25-
2624
location / {
2725
alias /usr/share/nginx/html/bus/;
2826
index index.html index.htm;
@@ -75,15 +73,6 @@ server {
7573
proxy_set_header Connection $connection_upgrade;
7674
}
7775

78-
location /ws {
79-
proxy_redirect off;
80-
set $dynamic "shadowsocks";
81-
proxy_pass http://$dynamic:8338;
82-
proxy_set_header Host $http_host;
83-
proxy_set_header Upgrade $http_upgrade;
84-
proxy_set_header Connection $connection_upgrade;
85-
}
86-
8776
error_page 500 502 503 504 /50x.html;
8877

8978
}

nginx/conf/conf.d/track.conf.template

Lines changed: 12 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,19 @@
22
upstream track_api_server {
33
zone upstream_zone 64k;
44
# 动态解析上游域名
5-
server maintain:8080 resolve;
5+
server ${MAINTAIN_HOST}:${MAINTAIN_PORT} resolve;
66
}
77

88
# track前端
99
server {
1010
listen 80;
1111
listen [::]:80;
12-
# listen 443 ssl;
13-
# listen [::]:443 ssl;
14-
server_name th-track.transcodegroup.cn tg-th-track.ipcjs.top localhost;
15-
16-
# 启用跨域
17-
#add_header Access-Control-Allow-Origin *;
18-
# 允许跨域的方法
19-
#add_header Access-Control-Allow-Methods 'GET,POST,PUT,DELETE';
20-
# 允许跨域的头标识
21-
#add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
22-
23-
# 证书文件 *.crt *.cer
24-
#ssl_certificate /etc/nginx/ssl/xn.transcodegroup.cn.crt;
25-
# 证书key文件
26-
#ssl_certificate_key /etc/nginx/ssl/xn.transcodegroup.cn.key;
12+
listen 443 ssl;
13+
listen [::]:443 ssl;
14+
server_name ${TRACK_HOSTNAME};
15+
16+
ssl_certificate /run/secrets/track-ssl-certificate;
17+
ssl_certificate_key /run/secrets/track-ssl-certificate-key;
2718

2819
# 平台前端
2920
location / {
@@ -59,14 +50,12 @@ server {
5950
}
6051

6152
location /minio/ {
62-
# 动态解析域名
63-
set $dynamic "minio";
64-
proxy_pass http://$dynamic:9000/;
53+
proxy_pass http://${MINIO_HOST}:${MINIO_PORT}/;
6554
}
6655

6756
location /jtt808/ {
6857
# 网关的数据代理
69-
proxy_pass http://jtt808:${JTT808_PORT_HTTP}/jtt808/;
58+
proxy_pass http://${JTT808_HOST}:${JTT808_PORT_HTTP}/jtt808/;
7059
}
7160

7261
location /api/ {
@@ -77,36 +66,9 @@ server {
7766
proxy_set_header Upgrade $http_upgrade;
7867
proxy_set_header Connection $connection_upgrade;
7968
}
80-
81-
location /pass {
82-
proxy_pass http://track_api_server/pass;
83-
proxy_set_header X-Real-IP $remote_addr;
84-
proxy_set_header Host $http_host;
85-
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
86-
proxy_set_header Upgrade $http_upgrade;
87-
proxy_set_header Connection $connection_upgrade;
88-
}
89-
90-
location /file {
91-
proxy_pass http://track_api_server/file;
92-
proxy_set_header X-Real-IP $remote_addr;
93-
proxy_set_header Host $http_host;
94-
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
95-
proxy_set_header Upgrade $http_upgrade;
96-
proxy_set_header Connection $connection_upgrade;
97-
}
98-
99-
location /datamotor {
100-
proxy_pass http://track_api_server/datamotor;
101-
proxy_set_header X-Real-IP $remote_addr;
102-
proxy_set_header Host $http_host;
103-
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
104-
proxy_set_header Upgrade $http_upgrade;
105-
proxy_set_header Connection $connection_upgrade;
106-
}
107-
108-
location /video {
109-
proxy_pass http://track_api_server/video;
69+
70+
location ~ ^/(pass|file|datamotor|video)/ {
71+
proxy_pass http://track_api_server;
11072
proxy_set_header X-Real-IP $remote_addr;
11173
proxy_set_header Host $http_host;
11274
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

single.stack.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ include:
1313
- ../../docker/jtt808/compose.yml
1414
- path:
1515
- ../../docker/nginx/compose.yml
16-
- ../../docker/nginx/compose.track.yml
16+
- ../../docker/nginx/compose.track.yml

0 commit comments

Comments
 (0)