From 1bc9bc16b7b351aee1cacf79449d0efe4a4f34ba Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Tue, 24 Jun 2025 15:21:11 +0800 Subject: [PATCH 01/11] =?UTF-8?q?perf(=E8=87=AA=E5=AE=9A=E4=B9=89docker?= =?UTF-8?q?=E4=BB=93=E5=BA=93):=20=E5=A2=9E=E5=8A=A0=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89docker=E4=BB=93=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- registry/compose.yaml | 45 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 registry/compose.yaml diff --git a/registry/compose.yaml b/registry/compose.yaml new file mode 100644 index 0000000..b40efe9 --- /dev/null +++ b/registry/compose.yaml @@ -0,0 +1,45 @@ +services: + registry: + image: registry:2 + container_name: registry + restart: always + ports: + - "5000:5000" + secrets: + - ssl-certificate-crt + - ssl-certificate-key + volumes: + - /data/docker/registry:/var/lib/registry + - /home/docker-compose/auth:/auth + #- /home/docker-compose/docker-registry/ssl:/ssl + environment: + REGISTRY_AUTH: htpasswd + REGISTRY_AUTH_HTPASSWD_REALM: "Registry Realm" + REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd + REGISTRY_HTTP_TLS_CERTIFICATE: /run/secrets/ssl-certificate-crt + REGISTRY_HTTP_TLS_KEY: /run/secrets/ssl-certificate-key + registry-ui: + image: joxit/docker-registry-ui:main + container_name: registry-ui + restart: always + ports: + - 5080:80 + environment: + - SINGLE_REGISTRY=true + - REGISTRY_TITLE=Docker Registry UI + - DELETE_IMAGES=true + - SHOW_CONTENT_DIGEST=true + - NGINX_PROXY_PASS_URL=https://transcodegroup.cn:5000 + - SHOW_CATALOG_NB_TAGS=true + - CATALOG_MIN_BRANCHES=1 + - CATALOG_MAX_BRANCHES=1 + - TAGLIST_PAGE_SIZE=100 + - REGISTRY_SECURED=false + - CATALOG_ELEMENTS_LIMIT=1000 + depends_on: + - registry +secrets: + ssl-certificate-crt: + file: ${SSL_CERTIFICATE:?required}.crt + ssl-certificate-key: + file: ${SSL_CERTIFICATE:?required}.key \ No newline at end of file From 04f9aa956780004a3c4025794368d938ce5cc98a Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Tue, 24 Jun 2025 15:24:43 +0800 Subject: [PATCH 02/11] =?UTF-8?q?fix(registry-ui):=20=E6=8D=A2=E6=8E=89?= =?UTF-8?q?=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- registry/compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/registry/compose.yaml b/registry/compose.yaml index b40efe9..2febe61 100644 --- a/registry/compose.yaml +++ b/registry/compose.yaml @@ -29,7 +29,7 @@ services: - REGISTRY_TITLE=Docker Registry UI - DELETE_IMAGES=true - SHOW_CONTENT_DIGEST=true - - NGINX_PROXY_PASS_URL=https://transcodegroup.cn:5000 + - NGINX_PROXY_PASS_URL=${SERVER_HOSTNAME}:5000 - SHOW_CATALOG_NB_TAGS=true - CATALOG_MIN_BRANCHES=1 - CATALOG_MAX_BRANCHES=1 From 6cec3e7ca9804a6f0c7a094976a7aabe482c2c9c Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Thu, 26 Jun 2025 15:50:11 +0800 Subject: [PATCH 03/11] =?UTF-8?q?fix(minio):=20=E9=BB=98=E8=AE=A4=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=99=A8=E5=9F=9F=E5=90=8D,=20=E9=81=BF=E5=85=8D?= =?UTF-8?q?=E5=8D=95=E6=9C=BA=E9=83=A8=E7=BD=B2minio=E6=97=A0=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- minio/compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/minio/compose.yml b/minio/compose.yml index ca456a4..f9c62f3 100644 --- a/minio/compose.yml +++ b/minio/compose.yml @@ -10,7 +10,7 @@ services: environment: - MINIO_ROOT_USER=${MINIO_USER:-minioadmin} - MINIO_ROOT_PASSWORD=${MINIO_PASSWORD:?required} - - MINIO_BROWSER_REDIRECT_URL=https://${VIDEO_HOSTNAME:?required} + - MINIO_BROWSER_REDIRECT_URL=https://${SERVER_HOSTNAME:-tripsdd.com} volumes: - "/data/minio-data:/data" command: server /data --console-address ":${MINIO_PORT_HTTP:-8001}" --address ":${MINIO_PORT:-8000}" From a1a0cfbe007b11133bc9b15b23b6082293f7e03e Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Thu, 26 Jun 2025 17:48:57 +0800 Subject: [PATCH 04/11] =?UTF-8?q?perf(linux=E5=91=BD=E4=BB=A4):=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=B8=AA=E5=BC=80=E6=BA=90=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E4=BB=93=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- registry/compose.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/registry/compose.yaml b/registry/compose.yaml index 2febe61..c2e74f1 100644 --- a/registry/compose.yaml +++ b/registry/compose.yaml @@ -38,6 +38,12 @@ services: - CATALOG_ELEMENTS_LIMIT=1000 depends_on: - registry + services: + ### linux命令工具,访问http://127.0.0.1:3000 + linux_command: + image: wcjiang/linux-command:latest + ports: + - "3000:3000" secrets: ssl-certificate-crt: file: ${SSL_CERTIFICATE:?required}.crt From 43c556c127bbc802d20a9a41f345163c2fb4ffc1 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 14:38:18 +0800 Subject: [PATCH 05/11] =?UTF-8?q?feat(WEB=5FBASE=5FURL):=20=E9=BB=98?= =?UTF-8?q?=E8=AE=A4SERVER=5FHOSTNAME?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.default | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.env.default b/.env.default index 79db81e..009c6cc 100644 --- a/.env.default +++ b/.env.default @@ -17,7 +17,7 @@ TRACK_SSL_CERTIFICATE=${SSL_CERTIFICATE} # 前端配置 WEB_PORT_HTTP=80 WEB_PORT_HTTPS=443 -WEB_BASE_URL='' # https://livedvr.tripsdd.com +WEB_BASE_URL=https://${SERVER_HOSTNAME} # https://livedvr.tripsdd.com #--------------------------------------------- ## 视频服务器 @@ -74,7 +74,7 @@ MAINTAIN_PORT='8080' # - access/ras_key|ras_key.pub: 访问密钥的公私钥对 # - refresh/ras_key|ras_key.pub: 刷新密钥的公私钥对 # - ip2region.xdb: ip到区域的映射数据, 下载连接: https://raw.githubusercontent.com/lionsoul2014/ip2region/master/data/ip2region.xdb -MAINTAIN_TOKEN_DIR='' +TOKEN_DIR='' ## MYSQL, 必填 MYSQL_HOST='mysql8' # mysql8 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC} From 0abe5b41c99d1808262c4f9ab778788a758105d4 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 14:38:44 +0800 Subject: [PATCH 06/11] =?UTF-8?q?feat(words):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=85=B3=E9=94=AE=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..69933c9 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "cSpell.words": [ + "tgtrack" + ] +} \ No newline at end of file From ede0d56b154c55be2f0c18a86e192fa3dc6d1cf4 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 14:43:21 +0800 Subject: [PATCH 07/11] =?UTF-8?q?feat(DEMO):=20=E5=A2=9E=E5=8A=A0track+vid?= =?UTF-8?q?eo=E7=89=88=E6=9C=AC=E7=9A=84demo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/track-video/.env | 18 ++++++++++++++++++ examples/track-video/compose.yaml | 19 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 examples/track-video/.env create mode 100644 examples/track-video/compose.yaml diff --git a/examples/track-video/.env b/examples/track-video/.env new file mode 100644 index 0000000..ca48471 --- /dev/null +++ b/examples/track-video/.env @@ -0,0 +1,18 @@ +SERVER_IP_PUBLIC='111.111.111.111' +SERVER_IP_INTERNAL='127.0.0.1' +SERVER_HOSTNAME='tgtrack.com' + +SSL_CERTIFICATE='/home/docker-compose/ssl/br_tgtrack_com' + +## MYSQL, 必填 +MYSQL_PASSWORD='' +## REDIS初始密码 +REDIS_PASSWORD='' +## MONGODB初始密码 +MONGODB_PASSWORD='' +## RABBITMQ初始密码 +RABBITMQ_PASSWORD='' +## MINIO初始密码 +MINIO_PASSWORD='' +## MINIO初始密码 +MAIL_PASSWORD='' \ No newline at end of file diff --git a/examples/track-video/compose.yaml b/examples/track-video/compose.yaml new file mode 100644 index 0000000..d81d75e --- /dev/null +++ b/examples/track-video/compose.yaml @@ -0,0 +1,19 @@ +## V2单机部署方案 +# 1. 修改.env文件. 初始化各种密码 +# 2. 生成/home/token秘钥, SSL证书文件 +# 3. docker compose up -d启动服务 +include: + - ../docker/mysql8/compose.yml + - ../docker/redis/compose.yml + - ../docker/mongodb/compose.yml + - ../docker/rabbitmq/compose.yml + - ../docker/minio/compose.yml + - ../docker/maintain/compose.yml + - ../docker/jtt808/compose.yml + - ../docker/video/compose.yml + - path: + - ../docker/nginx/compose.yml + - ../docker/nginx/compose.track.yml + - path: + - ../docker/video-nginx/compose.yml + - ../docker/video-nginx/compose.minio.yml \ No newline at end of file From 50e731e6f3d3d97ade2cd58be8697db79acc09ec Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 14:45:51 +0800 Subject: [PATCH 08/11] =?UTF-8?q?fix(=E5=90=8E=E5=8F=B0=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E8=B7=AF=E5=BE=84):=20=E9=BB=98=E8=AE=A4/home/docker-compose/t?= =?UTF-8?q?oken?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- maintain/compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maintain/compose.yml b/maintain/compose.yml index 74859b8..2b5c849 100644 --- a/maintain/compose.yml +++ b/maintain/compose.yml @@ -5,7 +5,7 @@ services: restart: always volumes: - /etc/localtime:/etc/localtime - - ${MAINTAIN_TOKEN_DIR:?required}:/home/token + - ${MAINTAIN_TOKEN_DIR:-/home/docker-compose/token}:/home/token - /data/logs/maintain:/logs ports: - ${MAINTAIN_PORT:-8080}:8080 From d78bc015f172409dd4a3192d59886413d8ee3584 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 16:56:04 +0800 Subject: [PATCH 09/11] =?UTF-8?q?fix(MAINTAIN=5FTOKEN=5FDIR):=20=E8=BF=98?= =?UTF-8?q?=E5=8E=9F=E5=B8=B8=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.default | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.default b/.env.default index 009c6cc..99ddbe7 100644 --- a/.env.default +++ b/.env.default @@ -74,7 +74,7 @@ MAINTAIN_PORT='8080' # - access/ras_key|ras_key.pub: 访问密钥的公私钥对 # - refresh/ras_key|ras_key.pub: 刷新密钥的公私钥对 # - ip2region.xdb: ip到区域的映射数据, 下载连接: https://raw.githubusercontent.com/lionsoul2014/ip2region/master/data/ip2region.xdb -TOKEN_DIR='' +MAINTAIN_TOKEN_DIR='' ## MYSQL, 必填 MYSQL_HOST='mysql8' # mysql8 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC} From 0eb3ed9342532ee81614e56b659cb6a2ba124772 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 27 Jun 2025 17:48:07 +0800 Subject: [PATCH 10/11] =?UTF-8?q?fix(demo):=20=E4=BF=AE=E6=94=B9=E5=BF=85?= =?UTF-8?q?=E5=A1=AB=E9=A1=B9=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/track-video/.env | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/track-video/.env b/examples/track-video/.env index ca48471..8ed1474 100644 --- a/examples/track-video/.env +++ b/examples/track-video/.env @@ -1,8 +1,8 @@ -SERVER_IP_PUBLIC='111.111.111.111' -SERVER_IP_INTERNAL='127.0.0.1' +SERVER_IP_PUBLIC='' # 请输入服务器公网IP地址 +SERVER_IP_INTERNAL='' # 请输入服务器内网IP地址 SERVER_HOSTNAME='tgtrack.com' -SSL_CERTIFICATE='/home/docker-compose/ssl/br_tgtrack_com' +SSL_CERTIFICATE='/home/docker-compose/ssl/tgtrack_com' ## MYSQL, 必填 MYSQL_PASSWORD='' From b5d85ab2c99dee33e257a9bf4a7519de3ffb2dc1 Mon Sep 17 00:00:00 2001 From: "ipcjs.mac4" Date: Mon, 30 Jun 2025 10:40:43 +0800 Subject: [PATCH 11/11] =?UTF-8?q?wip:=20=E6=B7=BB=E5=8A=A0=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.default | 4 ++-- minio/compose.yml | 2 +- registry/compose.yaml | 51 ------------------------------------------- 3 files changed, 3 insertions(+), 54 deletions(-) delete mode 100644 registry/compose.yaml diff --git a/.env.default b/.env.default index 99ddbe7..23c0044 100644 --- a/.env.default +++ b/.env.default @@ -70,11 +70,11 @@ JTT808_PORT_FTP_PASSIVE=9041-9049 ## maintain MAINTAIN_HOST='maintain' # maintain | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC} MAINTAIN_PORT='8080' -# 必填, TOKEN目录的绝对路径 +# TOKEN目录的绝对路径, 包含以下文件, 最新版服务器已经支持自动生成这些文件: # - access/ras_key|ras_key.pub: 访问密钥的公私钥对 # - refresh/ras_key|ras_key.pub: 刷新密钥的公私钥对 # - ip2region.xdb: ip到区域的映射数据, 下载连接: https://raw.githubusercontent.com/lionsoul2014/ip2region/master/data/ip2region.xdb -MAINTAIN_TOKEN_DIR='' +MAINTAIN_TOKEN_DIR='/home/docker-compose/token' ## MYSQL, 必填 MYSQL_HOST='mysql8' # mysql8 | ${SERVER_IP_INTERNAL} | ${SERVER_IP_PUBLIC} diff --git a/minio/compose.yml b/minio/compose.yml index f9c62f3..8b2e376 100644 --- a/minio/compose.yml +++ b/minio/compose.yml @@ -10,7 +10,7 @@ services: environment: - MINIO_ROOT_USER=${MINIO_USER:-minioadmin} - MINIO_ROOT_PASSWORD=${MINIO_PASSWORD:?required} - - MINIO_BROWSER_REDIRECT_URL=https://${SERVER_HOSTNAME:-tripsdd.com} + - MINIO_BROWSER_REDIRECT_URL=${WEB_BASE_URL:?required} volumes: - "/data/minio-data:/data" command: server /data --console-address ":${MINIO_PORT_HTTP:-8001}" --address ":${MINIO_PORT:-8000}" diff --git a/registry/compose.yaml b/registry/compose.yaml deleted file mode 100644 index c2e74f1..0000000 --- a/registry/compose.yaml +++ /dev/null @@ -1,51 +0,0 @@ -services: - registry: - image: registry:2 - container_name: registry - restart: always - ports: - - "5000:5000" - secrets: - - ssl-certificate-crt - - ssl-certificate-key - volumes: - - /data/docker/registry:/var/lib/registry - - /home/docker-compose/auth:/auth - #- /home/docker-compose/docker-registry/ssl:/ssl - environment: - REGISTRY_AUTH: htpasswd - REGISTRY_AUTH_HTPASSWD_REALM: "Registry Realm" - REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd - REGISTRY_HTTP_TLS_CERTIFICATE: /run/secrets/ssl-certificate-crt - REGISTRY_HTTP_TLS_KEY: /run/secrets/ssl-certificate-key - registry-ui: - image: joxit/docker-registry-ui:main - container_name: registry-ui - restart: always - ports: - - 5080:80 - environment: - - SINGLE_REGISTRY=true - - REGISTRY_TITLE=Docker Registry UI - - DELETE_IMAGES=true - - SHOW_CONTENT_DIGEST=true - - NGINX_PROXY_PASS_URL=${SERVER_HOSTNAME}:5000 - - SHOW_CATALOG_NB_TAGS=true - - CATALOG_MIN_BRANCHES=1 - - CATALOG_MAX_BRANCHES=1 - - TAGLIST_PAGE_SIZE=100 - - REGISTRY_SECURED=false - - CATALOG_ELEMENTS_LIMIT=1000 - depends_on: - - registry - services: - ### linux命令工具,访问http://127.0.0.1:3000 - linux_command: - image: wcjiang/linux-command:latest - ports: - - "3000:3000" -secrets: - ssl-certificate-crt: - file: ${SSL_CERTIFICATE:?required}.crt - ssl-certificate-key: - file: ${SSL_CERTIFICATE:?required}.key \ No newline at end of file