From 9344532b24fc8f5fe5c3ac177552e8f46eeb7fcd Mon Sep 17 00:00:00 2001 From: liangzai <2440983361@qq.com> Date: Sun, 8 Jun 2025 15:19:15 +0800 Subject: [PATCH] fix docker --- app/main/api/Dockerfile | 4 +- app/main/api/main.go | 2 +- docker-compose.yml | 165 ++++++++++++++++++++-------------------- 3 files changed, 85 insertions(+), 86 deletions(-) diff --git a/app/main/api/Dockerfile b/app/main/api/Dockerfile index 403ef84..361e1c4 100644 --- a/app/main/api/Dockerfile +++ b/app/main/api/Dockerfile @@ -14,8 +14,8 @@ ADD go.mod . ADD go.sum . RUN go mod download COPY . . -COPY app/user/cmd/api/etc /app/etc -RUN go build -ldflags="-s -w" -o /app/main app/main/cmd/api/main.go +COPY app/main/api/etc /app/etc +RUN go build -ldflags="-s -w" -o /app/main app/main/api/main.go FROM scratch diff --git a/app/main/api/main.go b/app/main/api/main.go index 736b221..8fe2455 100644 --- a/app/main/api/main.go +++ b/app/main/api/main.go @@ -26,7 +26,7 @@ func main() { // 根据 ENV 加载不同的配置文件 var defaultConfigFile string if env == "development" { - defaultConfigFile = "app/main/cmd/api/etc/main.dev.yaml" + defaultConfigFile = "app/main/api/etc/main.dev.yaml" } else { defaultConfigFile = "etc/main.yaml" } diff --git a/docker-compose.yml b/docker-compose.yml index 982a03f..e372e4b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,90 +1,89 @@ -version: '3' +version: "3" services: + mysql: + image: mysql:8.0.34 + container_name: tydata_mysql + environment: + # 时区上海 - Time zone Shanghai (Change if needed) + TZ: Asia/Shanghai + # root 密码 - root password + MYSQL_ROOT_PASSWORD: yfg87gyuYiy1 + MYSQL_DATABASE: tydata + MYSQL_USER: tydata + MYSQL_PASSWORD: 5vg67b3UNHu8 + ports: + - "21001:3306" + volumes: + # 数据挂载 - Data mounting + - ./data/mysql/data:/var/lib/mysql + # 日志 + command: + # 将mysql8.0默认密码策略 修改为 原先 策略 (mysql8.0对其默认策略做了更改 会导致密码无法匹配) + # Modify the Mysql 8.0 default password strategy to the original strategy (MySQL8.0 to change its default strategy will cause the password to be unable to match) + --default-authentication-plugin=mysql_native_password + --character-set-server=utf8mb4 + --collation-server=utf8mb4_general_ci + --explicit_defaults_for_timestamp=true + --lower_case_table_names=1 + privileged: true + restart: always + networks: + - tydata_net + - 1panel-network - mysql: - image: mysql:8.0.34 - container_name: tydata_mysql - environment: - # 时区上海 - Time zone Shanghai (Change if needed) - TZ: Asia/Shanghai - # root 密码 - root password - MYSQL_ROOT_PASSWORD: yfg87gyuYiy1 - MYSQL_DATABASE: tydata - MYSQL_USER: tydata - MYSQL_PASSWORD: 5vg67b3UNHu8 - ports: - - "21001:3306" - volumes: - # 数据挂载 - Data mounting - - ./data/mysql/data:/var/lib/mysql - # 日志 - command: - # 将mysql8.0默认密码策略 修改为 原先 策略 (mysql8.0对其默认策略做了更改 会导致密码无法匹配) - # Modify the Mysql 8.0 default password strategy to the original strategy (MySQL8.0 to change its default strategy will cause the password to be unable to match) - --default-authentication-plugin=mysql_native_password - --character-set-server=utf8mb4 - --collation-server=utf8mb4_general_ci - --explicit_defaults_for_timestamp=true - --lower_case_table_names=1 - privileged: true - restart: always - networks: - - tydata_net - - 1panel-network + redis: + image: redis:7.4.0 + container_name: tydata_redis + ports: + - "21002:6379" + environment: + # 时区上海 - Time zone Shanghai (Change if needed) + TZ: Asia/Shanghai + volumes: + # 数据文件 - data files + - ./data/redis/data:/data:rw + command: "redis-server --requirepass 3m3WsgyCKWqz --appendonly yes" + privileged: true + restart: always + networks: + - tydata_net - redis: - image: redis:7.4.0 - container_name: tydata_redis - ports: - - "21002:6379" - environment: - # 时区上海 - Time zone Shanghai (Change if needed) - TZ: Asia/Shanghai - volumes: - # 数据文件 - data files - - ./data/redis/data:/data:rw - command: "redis-server --requirepass 3m3WsgyCKWqz --appendonly yes" - privileged: true - restart: always - networks: - - tydata_net + asynqmon: + image: hibiken/asynqmon:latest + container_name: tydata_asynqmon + ports: + - "21003:8080" + environment: + - TZ=Asia/Shanghai + command: + - "--redis-addr=tydata_redis:6379" + - "--redis-password=3m3WsgyCKWqz" + restart: always + networks: + - tydata_net + depends_on: + - redis - asynqmon: - image: hibiken/asynqmon:latest - container_name: tydata_asynqmon - ports: - - "21003:8080" - environment: - - TZ=Asia/Shanghai - command: - - '--redis-addr=tydata_redis:6379' - - '--redis-password=3m3WsgyCKWqz' - restart: always - networks: - - tydata_net - depends_on: - - redis - - main: - container_name: tydata_main - build: - context: . - dockerfile: app/main/cmd/api/Dockerfile - ports: - - "21004:8888" - environment: - - TZ=Asia/Shanghai - - ENV=production - depends_on: - - mysql - - redis - networks: - - tydata_net - restart: always + main: + container_name: tydata_main + build: + context: . + dockerfile: app/main/api/Dockerfile + ports: + - "21004:8888" + environment: + - TZ=Asia/Shanghai + - ENV=production + depends_on: + - mysql + - redis + networks: + - tydata_net + restart: always networks: - tydata_net: - driver: bridge - 1panel-network: - external: true + tydata_net: + driver: bridge + 1panel-network: + external: true