From 8928f4a4cd1c13aa7e9d7bc8cca7a2edf80998fe Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Thu, 6 Nov 2025 18:22:29 +0800 Subject: [PATCH 1/5] =?UTF-8?q?feat(=E6=95=B0=E6=8D=AE=E5=BA=93=E5=A4=87?= =?UTF-8?q?=E4=BB=BD):=20=E5=A2=9E=E5=8A=A0=E5=A4=87=E4=BB=BD=E4=BB=93?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql-backup/compose.yml | 67 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 mysql-backup/compose.yml diff --git a/mysql-backup/compose.yml b/mysql-backup/compose.yml new file mode 100644 index 0000000..17c741a --- /dev/null +++ b/mysql-backup/compose.yml @@ -0,0 +1,67 @@ +services: + mysql8: + image: mysql:8.4 + # 国内拦了 用加速站 + #image: docker.m.daocloud.io/mysql:8.4 + container_name: mysql8 + restart: always + ports: + - ${MYSQL_PORT:-3306}:3306 + configs: + - source: mysql8.conf + target: /etc/mysql/conf.d + - source: mysql8.initdb + target: /docker-entrypoint-initdb.d + volumes: + - "${DATA_DIR:-/data}/mysql8/data:/var/lib/mysql" + - "${DATA_DIR:-/data}/mysql8/logs:/var/log/mysql" + - "${DATA_DIR:-/data}/mysql8/backup/database:/mysql/backup/database" + - "${DATA_DIR:-/data}/mysql8/backup/log:/mysql/backup/log" + environment: + # 设置密码 + - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required} + logging: + driver: "json-file" + options: + # 限制日志文件大小 + max-size: "100m" + mysql-cron-backup: + image: fradelg/mysql-cron-backup + container_name: backup-cbus + depends_on: + - mysql8 + volumes: + - "${DATA_DIR:-/data}/mysql8/backup:/backup" + environment: + - MYSQL_HOST=mysql8 + - MYSQL_PORT={MYSQL_PORT:-3306} + - MYSQL_USER=root + - MYSQL_PASS=${MYSQL_PASSWORD:?required} + - MAX_BACKUPS=15 + # 是否在容器启动时立即执行一次备份:1 表示立即备份,0 表示等到下一个定时点再执行。 + - INIT_BACKUP=0 + # 每天凌晨 3 点执行一次备份。cron 表达式格式:分 时 日 月 星期 + - CRON_TIME=0 3 * * * + # gzip 压缩等级(1–9),9 表示压缩最小、CPU 占用最高。 + - GZIP_LEVEL=9 + # 指定数据库 + - DATABASES=cbus + # As of MySQL 8.0.21 this is needed + # 忽略表(多个以空格分隔) + - MYSQLDUMP_OPTS=--no-tablespaces \ + --single-transaction \ + --ignore-table=cbus.log_event \ + --ignore-table=cbus.log_attendance \ + --ignore-table=cbus.log_dispatch \ + --ignore-table=cbus.log_dsp \ + --ignore-table=cbus.log_login \ + --ignore-table=cbus.log_message \ + --ignore-table=cbus.log_station \ + --ignore-table=cbus.log_system \ + --ignore-table=cbus.log_web_socket \ + --ignore-table=cbus.service_on_time \ + --ignore-table=cbus.service_over_speed \ + --ignore-table=cbus.schedule_plan_table \ + --ignore-table=cbus.device_position \ + --ignore-table=cbus.device_depart_arrive + restart: unless-stopped \ No newline at end of file From 9754c6140d2d867e825ed04f40d78eafb23f5c19 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Thu, 6 Nov 2025 18:50:58 +0800 Subject: [PATCH 2/5] =?UTF-8?q?feat(cbus=E5=A4=87=E4=BB=BD):=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=A4=87=E4=BB=BDcbus=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql-backup/compose.yml | 67 ++++++++++++---------------------------- 1 file changed, 20 insertions(+), 47 deletions(-) diff --git a/mysql-backup/compose.yml b/mysql-backup/compose.yml index 17c741a..e2eec5f 100644 --- a/mysql-backup/compose.yml +++ b/mysql-backup/compose.yml @@ -1,33 +1,7 @@ services: - mysql8: - image: mysql:8.4 - # 国内拦了 用加速站 - #image: docker.m.daocloud.io/mysql:8.4 - container_name: mysql8 - restart: always - ports: - - ${MYSQL_PORT:-3306}:3306 - configs: - - source: mysql8.conf - target: /etc/mysql/conf.d - - source: mysql8.initdb - target: /docker-entrypoint-initdb.d - volumes: - - "${DATA_DIR:-/data}/mysql8/data:/var/lib/mysql" - - "${DATA_DIR:-/data}/mysql8/logs:/var/log/mysql" - - "${DATA_DIR:-/data}/mysql8/backup/database:/mysql/backup/database" - - "${DATA_DIR:-/data}/mysql8/backup/log:/mysql/backup/log" - environment: - # 设置密码 - - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required} - logging: - driver: "json-file" - options: - # 限制日志文件大小 - max-size: "100m" - mysql-cron-backup: + mysql-cron-backup-cbus: image: fradelg/mysql-cron-backup - container_name: backup-cbus + container_name: mysql-cron-backup-cbus depends_on: - mysql8 volumes: @@ -45,23 +19,22 @@ services: # gzip 压缩等级(1–9),9 表示压缩最小、CPU 占用最高。 - GZIP_LEVEL=9 # 指定数据库 - - DATABASES=cbus - # As of MySQL 8.0.21 this is needed - # 忽略表(多个以空格分隔) - - MYSQLDUMP_OPTS=--no-tablespaces \ - --single-transaction \ - --ignore-table=cbus.log_event \ - --ignore-table=cbus.log_attendance \ - --ignore-table=cbus.log_dispatch \ - --ignore-table=cbus.log_dsp \ - --ignore-table=cbus.log_login \ - --ignore-table=cbus.log_message \ - --ignore-table=cbus.log_station \ - --ignore-table=cbus.log_system \ - --ignore-table=cbus.log_web_socket \ - --ignore-table=cbus.service_on_time \ - --ignore-table=cbus.service_over_speed \ - --ignore-table=cbus.schedule_plan_table \ - --ignore-table=cbus.device_position \ - --ignore-table=cbus.device_depart_arrive + - MYSQL_DATABASE=cbus + # 忽略表(多个以空格分隔) + - | + MYSQLDUMP_OPTS=--no-tablespaces --single-transaction + --ignore-table=cbus.log_event + --ignore-table=cbus.log_attendance + --ignore-table=cbus.log_dispatch + --ignore-table=cbus.log_dsp + --ignore-table=cbus.log_login + --ignore-table=cbus.log_message + --ignore-table=cbus.log_station + --ignore-table=cbus.log_system + --ignore-table=cbus.log_web_socket + --ignore-table=cbus.service_on_time + --ignore-table=cbus.service_over_speed + --ignore-table=cbus.schedule_plan_table + --ignore-table=cbus.device_position + --ignore-table=cbus.device_depart_arrive restart: unless-stopped \ No newline at end of file From 471fa00b18277ba9a4c6b9e09465778c4874543c Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 7 Nov 2025 09:47:09 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat(mysql=E5=A4=87=E4=BB=BD):=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0cbus=E5=92=8Cmaintain=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{compose.yml => compose.cbus.yml} | 3 +- mysql-backup/compose.maintain.yml | 57 +++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) rename mysql-backup/{compose.yml => compose.cbus.yml} (97%) create mode 100644 mysql-backup/compose.maintain.yml diff --git a/mysql-backup/compose.yml b/mysql-backup/compose.cbus.yml similarity index 97% rename from mysql-backup/compose.yml rename to mysql-backup/compose.cbus.yml index e2eec5f..c4fd6ad 100644 --- a/mysql-backup/compose.yml +++ b/mysql-backup/compose.cbus.yml @@ -23,12 +23,13 @@ services: # 忽略表(多个以空格分隔) - | MYSQLDUMP_OPTS=--no-tablespaces --single-transaction - --ignore-table=cbus.log_event --ignore-table=cbus.log_attendance --ignore-table=cbus.log_dispatch --ignore-table=cbus.log_dsp + --ignore-table=cbus.log_event --ignore-table=cbus.log_login --ignore-table=cbus.log_message + --ignore-table=cbus.log_plan_change --ignore-table=cbus.log_station --ignore-table=cbus.log_system --ignore-table=cbus.log_web_socket diff --git a/mysql-backup/compose.maintain.yml b/mysql-backup/compose.maintain.yml new file mode 100644 index 0000000..6d6fdb4 --- /dev/null +++ b/mysql-backup/compose.maintain.yml @@ -0,0 +1,57 @@ +services: + mysql-cron-backup-maintain: + image: fradelg/mysql-cron-backup + container_name: mysql-cron-backup-maintain + depends_on: + - mysql8 + volumes: + - "${DATA_DIR:-/data}/mysql8/backup:/backup" + environment: + - MYSQL_HOST=mysql8 + - MYSQL_PORT={MYSQL_PORT:-3306} + - MYSQL_USER=root + - MYSQL_PASS=${MYSQL_PASSWORD:?required} + - MAX_BACKUPS=15 + # 是否在容器启动时立即执行一次备份:1 表示立即备份,0 表示等到下一个定时点再执行。 + - INIT_BACKUP=0 + # 每天凌晨 3 点执行一次备份。cron 表达式格式:分 时 日 月 星期 + - CRON_TIME=0 3 * * * + # gzip 压缩等级(1–9),9 表示压缩最小、CPU 占用最高。 + - GZIP_LEVEL=9 + # 指定数据库 + - MYSQL_DATABASE=maintain + # 忽略表(多个以空格分隔) + - | + MYSQLDUMP_OPTS=--no-tablespaces --single-transaction + --ignore-table=maintain.jtt808_alarm + --ignore-table=maintain.jtt808_alarm_count + --ignore-table=maintain.jtt808_alarm_file + --ignore-table=maintain.jtt808_alarm_safety + --ignore-table=maintain.jtt808_card + --ignore-table=maintain.jtt808_cmd + --ignore-table=maintain.jtt808_cmd_face + --ignore-table=maintain.jtt808_connect + --ignore-table=maintain.jtt808_face + --ignore-table=maintain.jtt808_fence + --ignore-table=maintain.jtt808_file_upload + --ignore-table=maintain.jtt808_health + --ignore-table=maintain.jtt808_io + --ignore-table=maintain.jtt808_media_file + --ignore-table=maintain.jtt808_media_photograph + --ignore-table=maintain.jtt808_obd + --ignore-table=maintain.jtt808_passenger + --ignore-table=maintain.jtt808_position + --ignore-table=maintain.jtt808_position_history + --ignore-table=maintain.jtt808_position_last + --ignore-table=maintain.jtt808_position_migrate_task + --ignore-table=maintain.jtt808_register + --ignore-table=maintain.jtt808_tpms + --ignore-table=maintain.jtt808_video_storage + --ignore-table=maintain.log_error + --ignore-table=maintain.log_geocoder + --ignore-table=maintain.log_login + --ignore-table=maintain.log_mail + --ignore-table=maintain.log_message + --ignore-table=maintain.log_system + --ignore-table=maintain.log_text + restart: unless-stopped \ No newline at end of file From 7f4aa1fb151620ed176db90a9975b1b69fd9dd55 Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 7 Nov 2025 09:50:46 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat(demo):=20=E9=BB=98=E8=AE=A4=E5=90=AF?= =?UTF-8?q?=E7=94=A8=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/bus-http/compose.yaml | 1 + examples/bus-https/compose.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/examples/bus-http/compose.yaml b/examples/bus-http/compose.yaml index b066f0a..dbc3d91 100644 --- a/examples/bus-http/compose.yaml +++ b/examples/bus-http/compose.yaml @@ -1,6 +1,7 @@ # Bus单机部署, 使用http include: - ../docker/mysql8/compose.yml + - ../docker/mysql-backup/compose.cbus.yml - ../docker/rabbitmq/compose.yml - ../docker/redis/compose.yml - ../docker/bus/compose.yml diff --git a/examples/bus-https/compose.yaml b/examples/bus-https/compose.yaml index d05b2a8..82d02b3 100644 --- a/examples/bus-https/compose.yaml +++ b/examples/bus-https/compose.yaml @@ -2,6 +2,7 @@ # 密码/端口/域名等信息在.env文件中配置 include: - ../docker/mysql8/compose.yml + - ../docker/mysql-backup/compose.cbus.yml - ../docker/rabbitmq/compose.yml - ../docker/redis/compose.yml - ../docker/bus/compose.yml From 1ee9fff93be4767c7547913323b89e6920c0780a Mon Sep 17 00:00:00 2001 From: niexiaorong Date: Fri, 7 Nov 2025 10:50:56 +0800 Subject: [PATCH 5/5] =?UTF-8?q?feat(=E9=87=87=E7=94=A8=E5=8F=98=E9=87=8F):?= =?UTF-8?q?=20=E9=BB=98=E8=AE=A4=E4=BD=BF=E7=94=A8=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mysql-backup/compose.cbus.yml | 6 ++---- mysql-backup/compose.maintain.yml | 6 ++---- mysql8/compose.yml | 2 -- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/mysql-backup/compose.cbus.yml b/mysql-backup/compose.cbus.yml index c4fd6ad..14ff942 100644 --- a/mysql-backup/compose.cbus.yml +++ b/mysql-backup/compose.cbus.yml @@ -2,14 +2,12 @@ services: mysql-cron-backup-cbus: image: fradelg/mysql-cron-backup container_name: mysql-cron-backup-cbus - depends_on: - - mysql8 volumes: - "${DATA_DIR:-/data}/mysql8/backup:/backup" environment: - - MYSQL_HOST=mysql8 + - MYSQL_HOST=${MYSQL_HOST:-mysql8} - MYSQL_PORT={MYSQL_PORT:-3306} - - MYSQL_USER=root + - MYSQL_USER=${MYSQL_USERNAME:-root} - MYSQL_PASS=${MYSQL_PASSWORD:?required} - MAX_BACKUPS=15 # 是否在容器启动时立即执行一次备份:1 表示立即备份,0 表示等到下一个定时点再执行。 diff --git a/mysql-backup/compose.maintain.yml b/mysql-backup/compose.maintain.yml index 6d6fdb4..b02366f 100644 --- a/mysql-backup/compose.maintain.yml +++ b/mysql-backup/compose.maintain.yml @@ -2,14 +2,12 @@ services: mysql-cron-backup-maintain: image: fradelg/mysql-cron-backup container_name: mysql-cron-backup-maintain - depends_on: - - mysql8 volumes: - "${DATA_DIR:-/data}/mysql8/backup:/backup" environment: - - MYSQL_HOST=mysql8 + - MYSQL_HOST=${MYSQL_HOST:-mysql8} - MYSQL_PORT={MYSQL_PORT:-3306} - - MYSQL_USER=root + - MYSQL_USER=${MYSQL_USERNAME:-root} - MYSQL_PASS=${MYSQL_PASSWORD:?required} - MAX_BACKUPS=15 # 是否在容器启动时立即执行一次备份:1 表示立即备份,0 表示等到下一个定时点再执行。 diff --git a/mysql8/compose.yml b/mysql8/compose.yml index 13e061d..f670fda 100644 --- a/mysql8/compose.yml +++ b/mysql8/compose.yml @@ -15,8 +15,6 @@ services: volumes: - "${DATA_DIR:-/data}/mysql8/data:/var/lib/mysql" - "${DATA_DIR:-/data}/mysql8/logs:/var/log/mysql" - - "${DATA_DIR:-/data}/mysql8/backup/database:/mysql/backup/database" - - "${DATA_DIR:-/data}/mysql8/backup/log:/mysql/backup/log" environment: # 设置密码 - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD:?required}