Skip to Content

v1.0.2-202505201826

修改日志

  • 服务端
    • 清理冗余代码:
      • 移除穿透科技对接相关的数据库建表及服务端实现代码(已改用WebRTC方案)
      • 优化设备数据存储方案:
        • 停用原数据库存储设备快照及历史数据(电量/定位等)方案
        • 后续将采用Elasticsearch/Manticore Search等分布式搜索引擎替代方案(应对数千级设备数据量)
    • 中间件升级
      • apache/activemq-artemis2.35.0 升级为 2.41.0-alpine: 有多项改进, 包括管理 API 增强、消息存储性能优化、高可用性提升、TLS 配置简化、新增 OAuth2 支持以及多个安全漏洞修复。Alpine 镜像进一步减小体积、优化 JVM 参数, 并更新至最新 Alpine Linux 3.18+ 基础系统。完整变更日志 
      • coturn/coturn4.6.2 升级为 4.6.3-alpine: 主要修复了 STUN/TURN 协议实现中的安全漏洞(如 CVE-2023-48790 缓冲区溢出风险), 改进了证书验证逻辑, 增强了对 DTLS 和 TLS 1.3 的支持稳定性, 并优化了 Alpine 环境下的资源占用。此外, 更新了 Alpine 基础镜像至 3.18+, 提升了容器安全性与性能。完整变更日志 
      • nginx1.26.1-alpine 升级为 1.28.0-alpine: 核心模块支持了 HTTP/3 的 early data 特性;HTTP 映射模块新增了 map_hash_max_size 和 map_hash_bucket_size 指令用于优化哈希表性能;Stream 模块新增 udp_stream 指令以支持 UDP 流处理;更新了 PCRE2 库至 10.44 版本以提升正则表达式处理能力;修复了若干 HTTP/2 和 HTTP/3 相关的稳定性问题, 包括帧处理和连接管理方面的缺陷;同时 Alpine 基础镜像的更新也带来了系统依赖组件的安全修复和性能优化。生产环境升级前建议在测试环境验证应用兼容性。
      • bitnami/redis7.2.5 升级为 7.4.3: Redis 内核升级至 7.4.3 版本, 带来了新的 JSON.GET 和 JSON.SET 命令以增强 JSON 数据处理能力;优化了内存管理机制, 减少了大键值对操作时的内存碎片;改进了 RDB 和 AOF 持久化的性能, 特别是在处理大量写入操作时;新增了 CLIENT UNBLOCK 命令用于更灵活地管理阻塞客户端;修复了潜在的数据同步延迟问题和 Lua 脚本执行的边缘情况;容器镜像层面优化了启动脚本, 增强了与 Kubernetes 和 Helm 的集成稳定性;同时更新了底层依赖包以修复安全漏洞, 提升了容器的安全性。
  • Web 客户端
    • 修复 Device running information 中的定位显示问题。
    • 统一多处定位显示格式, 使其与视频中的定位格式保持一致。
    • 调整页面色彩, 使其与之前版本相近。
    • 将多播界面的对齐方式默认值从 “end” 改为 “start”。
    • 解决新版本上线后需手动刷新页面以更新静态文件缓存的问题:
      • 在页面的 HTTP 元信息(HTTP Meta)中, 通过 http-equiv 属性添加强制不缓存的设置。
      • 在所有跳转的 HTTP URL 处添加 build_time 参数, 参数值为当前 Web 项目编译打包的时间。
    • 已将登录界面的背景图更换为通过 AI 生成的图片。
    • MQTT 客户端优化:配置 reconnectPeriod: 5000 以实现自动重连功能, 即每 5000 毫秒尝试重连一次;设置 keepalive: 30, 借助 MQTT 协议自带的心跳机制, 客户端将自动每 30 秒发送一次 PINGREQ 消息, 以维持连接稳定性。

移除穿透科技对接相关的数据库建表及服务端实现代码, 以下为删表部分

DROP TABLE IF EXISTS device_forwarding_server CASCADE; DROP TABLE IF EXISTS device_forwarding_server_data_acquisition_device CASCADE; DROP TABLE IF EXISTS device_forwarding_server_model CASCADE; DROP TABLE IF EXISTS device_p2p_server CASCADE; DROP TABLE IF EXISTS device_p2p_server_data_acquisition_device CASCADE; DROP TABLE IF EXISTS device_p2p_server_data_acquisition_server CASCADE; DROP TABLE IF EXISTS device_p2p_server_forwarding_server CASCADE; DROP TABLE IF EXISTS device_p2p_server_model CASCADE;

测试说明

本部分详细阐述在 Ubuntu Server 22.04 LTS 系统上执行安装程序测试的具体步骤。

测试步骤

下载安装包并安装

# 通过 scp 获取 scp root@47.121.142.93:/home/tmp/es-center-server-*-app-1.0.2-202505201826.tar.gz . # 创建安装目录, 路径可根据实际需求灵活调整 sudo mkdir -p /tmp/es-center-server-install-app # 将下载的安装包解压到指定的安装目录 sudo tar -xzvf es-center-server-install-app-1.0.2-202505201826.tar.gz -C /tmp/es-center-server-install-app # 查看解压后安装目录下各文件和文件夹的大小 sudo du -sh /tmp/es-center-server-install-app/* # 安装前可选择修改配置文件。命令行输入的参数会覆盖配置文件中的设置, # 但若命令行参数数量少于配置文件中的参数, 可根据特殊需求手动调整配置文件。 sudo nano /tmp/es-center-server-install-app/es-center-server-service/.env # 根据实际情况指定服务安装目录、数据存储目录、内网 IP、公网 IP 以及域名。 # 进入安装目录并执行安装脚本完成安装。 # 特别注意, `data-root-dir` 对应的目录至关重要, 用于存储服务器运行过程中产生的数据(如日志文件、数据库内容等)。 # 因此, 务必将其设置为具有充足存储空间且安全可靠的目录。 # 推荐将此目录设置为磁盘阵列中的某个目录, 以确保数据的安全性与可靠性。 # `internal-eth-name` 是内网网卡名称(如 eth0), 涉及 janus 服务的配置需根据实际情况调整。 cd /tmp/es-center-server-install-app sudo ./cli install-server \ --service-root-dir /opt/es-center-server-service \ --data-root-dir /var/lib/es-center-server-data \ --internal-eth-name eth0 \ --internal-ip 172.16.8.178 \ --external-ip 120.26.124.232 \ --domain-name zxs-cs.netbodycamera.com # 显示 docker 实例信息 sudo docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Image}}\t{{.Status}}"

安装成功后, 导入词条:

平台支持随时导入词条, 以便于新增或修改词条内容。

词条文件下载链接:

在中心服务平台成功安装后, 请使用管理员账号登录系统, 并导入中文词条文件。

导入完成后, 请等待大约3分钟, 然后刷新页面。随后, 您可以测试平台的中英文切换功能。


更新或申请 SSL 证书

要更新或申请服务器的 SSL 证书, 请按照以下步骤操作:

  1. 确保配置文件中已正确配置域名。
  2. 执行以下命令调用 certbot 来生成新的 SSL 证书, 并将其应用于服务器。
# 更新并生成 SSL 证书 cd /opt/es-center-server-service sudo ./cli update-server-ssl # 在命令行界面打印以下信息时, 请按一下回车键: # # Account registered. # Requesting a certificate for zxs-cs.netbodycamera.com

配置文件说明

安装前, 配置文件位于安装程序目录的相对路径:./es-center-server-service/.env 安装后, 配置文件位于 service-root-dir 对应的目录下, 文件名为:.env

# #################################### # ### es-center-server Basic Configuration # #################################### # Root directory for the es-center-server service ES_CENTER_SERVER_SERVICE_ROOT_DIR=/opt/es-center-server-service # Data root directory for the es-center-server ES_CENTER_SERVER_DATA_ROOT_DIR=/var/lib/es-center-server-data # Internal IP address of the es-center-server ES_CENTER_SERVER_INTERNAL_IP=192.168.0.1 # External IP address of the es-center-server ES_CENTER_SERVER_EXTERNAL_IP=192.168.0.1 # Domain name of the es-center-server ES_CENTER_SERVER_DOMAIN_NAME=example.com # #################################### # ### es-center-server-coturn WebRTC Traversal Service Configuration # #################################### # Docker image tag for the COTURN service ES_CENTER_SERVER_COTURN_DOCKER_IMAGE_TAG=latest # Domain name for the COTURN service ES_CENTER_SERVER_COTURN_DOMAIN_NAME=example.com # Internal Ethernet interface name for the COTURN service ES_CENTER_SERVER_COTURN_INTERNAL_ETH_NAME=eth0 # Internal IP address of the COTURN service ES_CENTER_SERVER_COTURN_INTERNAL_IP=192.168.0.1 # External IP address of the COTURN service ES_CENTER_SERVER_COTURN_EXTERNAL_IP=192.168.0.1 # Specifies the main listening port for the COTURN service. # This is the port on which the COTURN server listens for incoming connections. ES_CENTER_SERVER_COTURN_LISTENING_PORT=3478 # Defines the minimum port number within the range used by the COTURN service. # COTURN may allocate ports starting from this value for certain operations. ES_CENTER_SERVER_COTURN_MIN_PORT=20000 # Defines the maximum port number within the range used by the COTURN service. # COTURN will not allocate ports beyond this value for relevant operations. ES_CENTER_SERVER_COTURN_MAX_PORT=39999 # TURN username for the COTURN service ES_CENTER_SERVER_COTURN_TURN_USERNAME=webrtc-1 # TURN credential for the COTURN service ES_CENTER_SERVER_COTURN_TURN_CREDENTIAL=A7mKp2L9xQ4Zn3T8 # #################################### # ### es-center-server-janus WebRTC Gateway Configuration # #################################### # Docker image tag for the Janus service ES_CENTER_SERVER_JANUS_DOCKER_IMAGE_TAG=0.0.3 # Identifier for the Janus instance ES_CENTER_SERVER_JANUS_NO=janus-1 # Internal Ethernet interface name for the Janus service ES_CENTER_SERVER_JANUS_INTERNAL_ETH_NAME=eth0 # Internal IP address of the Janus service ES_CENTER_SERVER_JANUS_INTERNAL_IP=192.168.0.1 # External IP address of the Janus service ES_CENTER_SERVER_JANUS_EXTERNAL_IP=192.168.0.1 # Defines the range of ports that the Janus service will use for Real - Time Transport Protocol (RTP) traffic. # RTP is responsible for the actual transmission of audio and video data. # The Janus service will allocate ports from 40000 to 59999 for handling RTP streams during media communication. ES_CENTER_SERVER_JANUS_RTP_PORT_RANGE=40000-59999 # #################################### # ### es-center-server-activemq-artemis Message Queue Configuration # #################################### # Docker image tag for the ActiveMQ Artemis service ES_CENTER_SERVER_ACTIVEMQ_ARTEMIS_DOCKER_IMAGE_TAG=latest # Username for the ActiveMQ Artemis service ES_CENTER_SERVER_ACTIVEMQ_ARTEMIS_USER=artemis # Password for the ActiveMQ Artemis service ES_CENTER_SERVER_ACTIVEMQ_ARTEMIS_PASSWORD=abcd1234abcd # TCP port for the ActiveMQ Artemis service ES_CENTER_SERVER_ACTIVEMQ_ARTEMIS_TCP_PORT=61616 # HTTP port for the ActiveMQ Artemis service ES_CENTER_SERVER_ACTIVEMQ_ARTEMIS_HTTP_PORT=8161 # #################################### # ### es-center-server-emqx MQTT Message Broker Configuration # #################################### # Docker image tag for the EMQX service ES_CENTER_SERVER_EMQX_DOCKER_IMAGE_TAG=5 # HTTP port for the EMQX service ES_CENTER_SERVER_EMQX_HTTP_PORT=18083 # HTTPS port for the EMQX service ES_CENTER_SERVER_EMQX_HTTPS_PORT=8883 # TCP port for the EMQX service ES_CENTER_SERVER_EMQX_TCP_PORT=1883 # WebSocket port for the EMQX service ES_CENTER_SERVER_EMQX_WS_PORT=8083 # Secure WebSocket port for the EMQX service ES_CENTER_SERVER_EMQX_WSS_PORT=8084 # IP address of the EMQX service ES_CENTER_SERVER_EMQX_IP=192.168.0.1 # #################################### # ### es-center-server-nginx Reverse Proxy Configuration # #################################### # Docker image tag for the Nginx service ES_CENTER_SERVER_NGINX_DOCKER_IMAGE_TAG=stable-alpine # HTTP port for the Nginx service ES_CENTER_SERVER_NGINX_HTTP_PORT=80 # HTTPS port for the Nginx service ES_CENTER_SERVER_NGINX_HTTPS_PORT=443 # #################################### # ### es-center-server-pg Database Cluster Configuration # #################################### # Docker image tag for PostgreSQL instance 0 ES_CENTER_SERVER_PG_0_DOCKER_IMAGE_TAG=16.3.0 # Docker image tag for PostgreSQL instance 1 ES_CENTER_SERVER_PG_1_DOCKER_IMAGE_TAG=16.3.0 # Docker image tag for Pgpool service ES_CENTER_SERVER_PG_PGPOOL_DOCKER_IMAGE_TAG=4.5.2 # Username for Repmgr in PostgreSQL ES_CENTER_SERVER_PG_REPMGR_USERNAME=repmgr # Password for Repmgr in PostgreSQL ES_CENTER_SERVER_PG_REPMGR_PASSWORD=abcd1234abcd # Password for the 'postgres' user in PostgreSQL ES_CENTER_SERVER_PG_POSTGRESQL_POSTGRES_PASSWORD=abcd1234abcd # Username for the application in PostgreSQL ES_CENTER_SERVER_PG_POSTGRESQL_USERNAME=es # Password for the application in PostgreSQL ES_CENTER_SERVER_PG_POSTGRESQL_PASSWORD=abcd1234abcd # Username for SR check in Pgpool ES_CENTER_SERVER_PG_PGPOOL_SR_CHECK_USER=repmgr # Password for SR check in Pgpool ES_CENTER_SERVER_PG_PGPOOL_SR_CHECK_PASSWORD=abcd1234abcd # Username for the 'postgres' user in Pgpool ES_CENTER_SERVER_PG_PGPOOL_POSTGRES_USERNAME=postgres # Password for the 'postgres' user in Pgpool ES_CENTER_SERVER_PG_PGPOOL_POSTGRES_PASSWORD=abcd1234abcd # Admin username for Pgpool ES_CENTER_SERVER_PG_PGPOOL_ADMIN_USERNAME=admin # Admin password for Pgpool ES_CENTER_SERVER_PG_PGPOOL_ADMIN_PASSWORD=abcd1234abcd # Custom usernames for PostgreSQL in Pgpool ES_CENTER_SERVER_PG_PGPOOL_POSTGRES_CUSTOM_USERS=es # Custom passwords for PostgreSQL in Pgpool ES_CENTER_SERVER_PG_PGPOOL_POSTGRES_CUSTOM_PASSWORDS=abcd1234abcd # Port for the PostgreSQL service ES_CENTER_SERVER_PG_PORT=5433 # #################################### # ### es-center-server-redis Cache Service Configuration # #################################### # Docker image tag for the Redis service ES_CENTER_SERVER_REDIS_DOCKER_IMAGE_TAG=7.2.5 # Port for the Redis service ES_CENTER_SERVER_REDIS_PORT=6379 # Password for the Redis service ES_CENTER_SERVER_REDIS_PASSWORD=abcd1234abcd # Maximum memory limit for the Redis service ES_CENTER_SERVER_REDIS_MAXMEMORY=100mb # Memory eviction policy for the Redis service, using LRU ES_CENTER_SERVER_REDIS_MAXMEMORY_POLICY=allkeys-lru # #################################### # ### es-center-server-main-service Main Service Configuration # #################################### # Docker image tag for the main service ES_CENTER_SERVER_MAIN_SERVICE_DOCKER_IMAGE_TAG=1.20250416 # Java options for the main service, setting memory limits ES_CENTER_SERVER_MAIN_SERVICE_JAVA_OPTS=-Xmx1024m -Xms512m -Xmn256m -XX:MaxDirectMemorySize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 # Commented-out alternative Java options for the main service with different memory limits # ES_CENTER_SERVER_MAIN_SERVICE_JAVA_OPTS=-Xmx2048m -Xms1024m -Xmn512m -XX:MaxDirectMemorySize=256m -XX:+UseG1GC -XX:MaxGCPauseMillis=150 # HTTP port for the main service ES_CENTER_SERVER_MAIN_SERVICE_HTTP_PORT=84 # #################################### # ### es-center-server-device-service Device Service Configuration # #################################### # Docker image tag for the device service ES_CENTER_SERVER_DEVICE_SERVICE_DOCKER_IMAGE_TAG=1.20250416 # Java options for the device service, setting memory limits ES_CENTER_SERVER_DEVICE_SERVICE_JAVA_OPTS=-Xmx1024m -Xms512m -Xmn256m -XX:MaxDirectMemorySize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 # Commented-out alternative Java options for the device service with different memory limits # ES_CENTER_SERVER_DEVICE_SERVICE_JAVA_OPTS=-Xmx2048m -Xms1024m -Xmn512m -XX:MaxDirectMemorySize=256m -XX:+UseG1GC -XX:MaxGCPauseMillis=150 # HTTP port for the device service ES_CENTER_SERVER_DEVICE_SERVICE_HTTP_PORT=86 # #################################### # ### es-center-server-web-app Web Application Configuration # #################################### # Docker image tag for the web application ES_CENTER_SERVER_WEB_APP_DOCKER_IMAGE_TAG=1.20250416 # HTTP port for the web application ES_CENTER_SERVER_WEB_APP_HTTP_PORT=89

验证安装结果

为确认安装是否成功, 可执行以下操作:

# 系统初次启动需进行数据初始化, 等待 4 分钟后可通过浏览器访问指定 IP 验证安装情况。 # admin 账号的登录密码将在首次登录时生成。 # 示例访问地址:https://192.168.1.33 # 检查是否成功导入 Docker 镜像 sudo docker images # 查看是否有 Docker 容器成功运行 sudo docker ps # 检查配置文件是否已复制到目标目录 sudo ls -la /opt/es-center-server-service/ # 检查数据目录是否已成功创建 sudo ls -la /var/lib/es-center-server-data/ # 查看配置文件内容 sudo cat /opt/es-center-server-service/.env # 查看配置文件内容, 确认占位符是否已被替换为正确的值 sudo cat /opt/es-center-server-service/es-center-server-coturn/etc/coturn/turnserver.conf # listening-ip=ES_CENTER_SERVER_COTURN_INTERNAL_IP # relay-ip=ES_CENTER_SERVER_COTURN_INTERNAL_IP # external-ip=ES_CENTER_SERVER_COTURN_EXTERNAL_IP/ES_CENTER_SERVER_COTURN_INTERNAL_IP # server-name=ES_CENTER_SERVER_COTURN_DOMAIN_NAME # realm=ES_CENTER_SERVER_COTURN_DOMAIN_NAME # 查看各个服务的状态 sudo docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" # 查看各个服务的日志, 确保服务正常运行 # es-center-server-coturn WebRTC Traversal Service sudo docker compose -f /opt/es-center-server-service/es-center-server-coturn/docker-compose.yml logs -f # es-center-server-janus WebRTC Gateway sudo docker compose -f /opt/es-center-server-service/es-center-server-janus/docker-compose.yml logs -f # es-center-server-activemq-artemis Message Queue sudo docker compose -f /opt/es-center-server-service/es-center-server-activemq-artemis/docker-compose.yml logs -f # es-center-server-emqx MQTT Message Broker sudo docker compose -f /opt/es-center-server-service/es-center-server-emqx/docker-compose.yml logs -f # es-center-server-nginx Reverse Proxy sudo docker compose -f /opt/es-center-server-service/es-center-server-nginx/docker-compose.yml logs -f # es-center-server-pg Database Cluster sudo docker compose -f /opt/es-center-server-service/es-center-server-pg/docker-compose.yml logs -f # es-center-server-redis Cache Service sudo docker compose -f /opt/es-center-server-service/es-center-server-redis/docker-compose.yml logs -f # es-center-server-main-service Main Service sudo docker compose -f /opt/es-center-server-service/es-center-server-main-service/docker-compose.yml logs -f # es-center-server-device-service Device Service sudo docker compose -f /opt/es-center-server-service/es-center-server-device-service/docker-compose.yml logs -f # es-center-server-web-app Web Application sudo docker compose -f /opt/es-center-server-service/es-center-server-web-app/docker-compose.yml logs -f

安装后配置更新或升级

修改配置文件

安装成功后, 可通过修改配置文件更新配置, 具体步骤如下:

# 使用 vim 或 nano 编辑器修改配置文件中 `# custom` 部分的内容, 其余部分保持不变 sudo vi /opt/es-center-server-service/.env sudo nano /opt/es-center-server-service/.env # 完成修改后, 进入服务目录并执行更新脚本 cd /opt/es-center-server-service sudo ./cli update-server # 验证各个服务中的配置是否已更新 sudo cat /opt/es-center-server-service/es-center-server-coturn/etc/coturn/turnserver.conf sudo cat /opt/es-center-server-service/es-center-server-janus/opt/janus/etc/janus/janus.transport.mqtt.jcfg sudo cat /opt/es-center-server-service/es-center-server-nginx/etc/nginx/conf.d/default.conf sudo cat /opt/es-center-server-service/es-center-server-web-app/etc/nginx/conf.d/default.conf

升级服务

# 通过 wget 下载 wget https://zxs-dev.netbodycamera.com/download/es-center-server-upgrade-app-1.0.2-202505201826.tar.gz # 创建升级目录, 此目录路径可依据实际情况灵活设定 sudo mkdir -p /tmp/es-center-server-upgrade-app # 把下载的升级包解压至指定的升级目录 sudo tar -xzvf es-center-server-upgrade-app-1.0.2-202505201826.tar.gz -C /tmp/es-center-server-upgrade-app # 查看解压后升级目录里各文件和文件夹的大小 sudo du -sh /tmp/es-center-server-upgrade-app/* # 进入升级目录并执行升级脚本以完成升级。 # 必须指定已安装的服务根目录 `service-root-dir`, 若该目录不存在或者目录下没有 .env 文件, 升级将停止 cd /tmp/es-center-server-upgrade-app sudo ./cli upgrade-server \ --service-root-dir /opt/es-center-server-service

独立部署 Coturn 服务

# 通过 wget 下载 wget https://zxs-dev.netbodycamera.com/download/es-center-server-coturn-service-install-app-1.0.2-202505201826.tar.gz # 通过分布式部署 Coturn 服务, 分担直播转发的流量压力。 # 创建 Coturn 服务的安装目录 sudo mkdir -p /tmp/es-center-server-coturn-service-install-app # 将安装包解压到指定目录 sudo tar -xzvf es-center-server-coturn-service-install-app-1.0.2-202505201826.tar.gz -C /tmp/es-center-server-coturn-service-install-app # 进入安装目录 cd /tmp/es-center-server-coturn-service-install-app # 执行安装脚本完成 Coturn 服务的安装 sudo ./cli install-server-coturn-service \ --service-root-dir /opt/es-center-server-coturn-service \ --internal-eth-name eth0 \ --internal-ip 172.16.8.178 \ --external-ip 120.26.124.232 \ --domain-name zxs-cs-coturn.netbodycamera.com # 安装后的常用检查方式 # 查看服务的日志, 确保服务正常运行 sudo docker compose -f /opt/es-center-server-coturn-service/es-center-server-coturn/docker-compose.yml logs -f # 根据实际情况, 修改配置文件并更新服务 cd /opt/es-center-server-coturn-service sudo nano .env sudo ./cli update-server

独立部署 Janus 服务

# 通过 wget 下载 wget https://zxs-dev.netbodycamera.com/download/es-center-server-janus-service-install-app-1.0.2-202505201826.tar.gz # 通过分布式部署 Janus 服务, 分担 WEBRTC SFU 的流量压力。 # 创建 Janus 服务的安装目录 sudo mkdir -p /tmp/es-center-server-janus-service-install-app # 将安装包解压到指定目录 sudo tar -xzvf es-center-server-janus-service-install-app-1.0.2-202505201826.tar.gz -C /tmp/es-center-server-janus-service-install-app # 进入安装目录 cd /tmp/es-center-server-janus-service-install-app # 执行安装脚本完成 Janus 服务的安装 sudo ./cli install-server-janus-service \ --service-root-dir /opt/es-center-server-janus-service \ --internal-eth-name eth0 \ --internal-ip 172.16.8.178 \ --external-ip 120.26.124.232 \ --janus-server-no janus-1 \ --emqx-ip 172.16.8.178 \ --emqx-tcp-port 1883 \ --coturn-external-ip 120.26.124.233 # 安装后的常用检查方式 # 查看服务的日志, 确保服务正常运行 sudo docker compose -f /opt/es-center-server-janus-service/es-center-server-janus/docker-compose.yml logs -f # 根据实际情况, 修改配置文件并更新服务 cd /opt/es-center-server-janus-service sudo nano .env sudo ./cli update-server
Last updated on