123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- #!/bin/bash -e
- SCRIPT_DIR=$(cd $(dirname ${BASH_SOURCE[0]}); pwd)
- p=$SCRIPT_DIR"/application_product.yml"
- t1=" "
- t2=" "
- t3=" "
- GBWebPort=$gb_WebPort
- GBSipPort=$gb_SIPPort
- GBExternalHost=$gb_Host
- GBSipDomain=$gb_domain
- GBSipID=$gb_id
- GBSipPASSWD=$gb_password
- GBExternalHost=$gb_externalHost
- #mediaSecret=$media_Secret
- echo "
- ZLM流媒体服务器信息
- zlmIP:$mediaIP
- streamIP:$streamIP
- sdpIP:$sdpIP
- webPort:$hookPort
- mediaId:$mediaId
- mediaSecret: $mediaSecret
- rtp端口范围:$rtpPortStart-$rtpPortEnd
- "
- echo "GBWebPort"
- finalMysqlHost=$mysqlHost;
- finalRedisHost=$redisHost;
- if [ "$redisHost" = "0.0.0.0" ];then
- finalRedisHost="127.0.0.1";
- fi
- if [ "$mysqlHost" = "0.0.0.0" ];then
- finalMysqlHost="127.0.0.1";
- fi
- echo "#hfy 国标平台配置文件" > "$p"
- echo "spring:" >> "$p"
- # redis 配置项
- echo "${t1}redis:" >> "$p"
- echo "${t2}#[必须修改] Redis服务器IP, REDIS安装在本机的,使用127.0.0.1:" >> "$p"
- echo "${t2}host: $finalRedisHost" >> "$p"
- echo "${t2}port: $redisPort" >> "$p"
- echo "${t2}database: $redisDB" >> "$p"
- echo "${t2}password: $redisPasswd" >> "$p"
- echo "${t2}timeout: 10000" >> "$p"
- echo "${t2}#[可选] 一个pool最多可分配多少个jedis实例" >> "$p"
- echo "${t2}poolMaxTotal: 1000" >> "$p"
- echo "${t2}#[可选] 一个pool最多有多少个状态为idle(空闲)的jedis实例" >> "$p"
- echo "${t2}poolMaxIdle: 500" >> "$p"
- echo "${t2}#[可选] 最大的等待时间(秒)" >> "$p"
- echo "${t2}poolMaxWait: 5" >> "$p"
- # [必选] jdbc数据库配置
- # redis 配置项
- echo "${t1}#[必选] jdbc数据库配置" >> "$p"
- echo "${t1}datasource:" >> "$p"
- echo "${t2}type: com.alibaba.druid.pool.DruidDataSource" >> "$p"
- echo "${t2}driver-class-name: com.mysql.cj.jdbc.Driver" >> "$p"
- echo "${t2}url: jdbc:mysql://$finalMysqlHost:$mysqlPort/$mysqlDB?useUnicode=true&characterEncoding=UTF8&rewriteBatchedStatements=true&serverTimezone=PRC&useSSL=true&allowMultiQueries=true&AllowPublicKeyRetrieval=true" >> "$p"
- echo "${t2}username: $mysqlUser" >> "$p"
- echo "${t2}password: $mysqlPasswd" >> "$p"
- echo "${t2}druid:" >> "$p"
- echo "${t3}initialSize: 10 # 连接池初始化连接数" >> "$p"
- echo "${t3}minIdle: 5 # 连接池最小空闲连接数" >> "$p"
- echo "${t3}maxWait: 60000 # 获取连接时最大等待时间,单位毫秒。配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。" >> "$p"
- echo "${t3}keepAlive: true # 连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作。" >> "$p"
- echo "${t3}validationQuery: select 1 # 检测连接是否有效sql,要求是查询语句,常用select 'x'。如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用。" >> "$p"
- echo "${t3}testWhileIdle: true # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。" >> "$p"
- echo "${t3}testOnBorrow: false # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。" >> "$p"
- echo "${t3}testOnReturn: false # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。" >> "$p"
- echo "${t3}poolPreparedStatements: false # 是否開啟PSCache,並且指定每個連線上PSCache的大小" >> "$p"
- echo "${t3}timeBetweenEvictionRunsMillis: 60000 # 配置間隔多久才進行一次檢測,檢測需要關閉的空閒連線,單位是毫秒" >> "$p"
- echo "${t3}minEvictableIdleTimeMillis: 300000 # 配置一個連線在池中最小生存的時間,單位是毫秒" >> "$p"
- echo "${t3}filters: stat,slf4j # 配置监控统计拦截的filters,监控统计用的filter:sta, 日志用的filter:log4j" >> "$p"
- echo "${t3}useGlobalDataSourceStat: true # 合并多个DruidDataSource的监控数据" >> "$p"
- echo "${t3}connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=1000" >> "$p"
- echo "${t3}maxActive: 200 # 连接池最大连接数" >> "$p"
- echo "server:" >> "$p"
- echo "${t1}address: 0.0.0.0" >> "$p"
- echo "${t1}# 国标平台web端口" >> "$p"
- echo "${t1}port: $gb_WebPort" >> "$p"
- echo "${t1}# [可选] HTTPS配置, 默认不开启" >> "$p"
- echo "${t1}ssl:" >> "$p"
- echo "${t2}# [可选] 是否开启HTTPS访问" >> "$p"
- echo "${t2}enabled: false" >> "$p"
- echo "${t2}# [可选] 证书文件路径,放置在resource/目录下即可,修改xxx为文件名" >> "$p"
- echo "${t2}key-store: classpath:xxx.jks" >> "$p"
- echo "${t2}# [可选] 证书密码" >> "$p"
- echo "${t2}key-store-password: password" >> "$p"
- echo "${t2}# [可选] 证书类型, 默认为jks,根据实际修改" >> "$p"
- echo "${t2}key-store-type: JKS" >> "$p"
- echo "${t2}# 配置证书可以使用如下两项,如上面二选一即可" >> "$p"
- echo "${t2}# PEM 编码证书" >> "$p"
- echo "${t2}certificate: xx.pem" >> "$p"
- echo "${t2}# 私钥文件" >> "$p"
- echo "${t2}# certificate-private-key: xx.key" >> "$p"
- echo "sip:" >> "$p"
- echo "${t1}# [必须修改] 本机的IP, 必须是网卡上的IP,用于sip下协议栈监听ip,如果监听所有设置为0.0.0.0" >> "$p"
- echo "${t1}monitor-ip: 0.0.0.0" >> "$p"
- echo "${t1}# [必须修改] 本机的IP,zlm需要可与此ip通信" >> "$p"
- echo "${t1}ip: $GBExternalHost" >> "$p"
- echo "${t1}# [必须修改] 国标协议sip信令端口" >> "$p"
- echo "${t1}port: $GBSipPort" >> "$p"
- echo "${t1}# 根据国标协议6.1.2的规则制定的 10位数" >> "$p"
- echo "${t1}domain: $GBSipDomain" >> "$p"
- echo "${t1}# 平台id" >> "$p"
- echo "${t1}id: $GBSipID" >> "$p"
- echo "${t1}# sip认证密码" >> "$p"
- echo "${t1}password: $GBSipPASSWD" >> "$p"
- echo "${t1}# 设备心跳超时时间" >> "$p"
- echo "${t1}keepalive-timeout: 255" >> "$p"
- echo "${t1}# [可选] 国标级联注册失败,再次发起注册的时间间隔。 默认60秒" >> "$p"
- echo "${t1}register-time-interval: 60" >> "$p"
- echo "${t1}# [可选] 云台控制速度" >> "$p"
- echo "${t1}ptz-speed: 50" >> "$p"
- echo "${t1}# 是否存储alarm信息" >> "$p"
- echo "${t1}alarm: false" >> "$p"
- echo "${t1}# hfy ai图片存储位置" >> "$p"
- echo "${t1}mediaPath: mFile" >> "$p"
- echo "media:" >> "$p"
- echo "${t1}# zlm服务器唯一id,用于触发hook时区别是哪台服务器,general.mediaServerId" >> "$p"
- echo "${t1}id: $mediaId" >> "$p"
- echo "${t1}# zlm服务器的IP" >> "$p"
- echo "${t1}ip: $mediaIP" >> "$p"
- echo "${t1}# wvp在国标信令中使用的ip,此ip为摄像机可以访问到的ip, 置空使用 media.ip" >> "$p"
- echo "${t1}sdp-ip: $sdpIP" >> "$p"
- echo "${t1}# zlm服务器的hook所使用的IP, 默认使用sip.ip" >> "$p"
- echo "${t1}hook-ip: $mediaIP" >> "$p"
- echo "${t1}# zlm服务器的http.port" >> "$p"
- echo "${t1}http-port: $hookPort" >> "$p"
- echo "${t1}# [可选] 是否自动配置ZLM, 如果希望手动配置ZLM, 可以设为false, 不建议新接触的用户修改" >> "$p"
- echo "${t1}auto-config: true" >> "$p"
- echo "${t1}# zlm服务器的hook.admin_params=secret" >> "$p"
- echo "${t1}secret: $secret" >> "$p"
- echo "${t1}# [可选] zlm服务器的http.sslport, 置空使用zlm配置文件配置" >> "$p"
- echo "${t1}http-ssl-port:" >> "$p"
- echo "${t1}rtmp-port:" >> "$p"
- echo "${t1}rtmp-ssl-port:" >> "$p"
- echo "${t1}rtp-proxy-port:" >> "$p"
- echo "${t1}rtsp-port:" >> "$p"
- echo "${t1}rtsp-ssl-port:" >> "$p"
- echo "${t1}# [可选] zlm服务器的general.streamNoneReaderDelayMS" >> "$p"
- echo "${t1}stream-none-reader-delay-ms: 60000" >> "$p"
- echo "${t1}rtp:" >> "$p"
- echo "${t2}# 是否启用多端口模式, 开启后会在portRange范围内选择端口用于媒体流传输,建议q" >> "$p"
- echo "${t2}enable: true" >> "$p"
- echo "${t2}# 端口范围" >> "$p"
- echo "${t2}port-range: $rtpPortStart,$rtpPortEnd" >> "$p"
- echo "${t2}# 发送给设备所使用的端口范围" >> "$p"
- echo "${t2}send-port-range: $rtpPortStart,$rtpPortEnd" >> "$p"
|