#!/bin/bash echo "=== 修复服务配置文件中的硬编码问题 ===" SERVICES_DIR="d:/FzxBDSH/services" # 修复所有服务的配置文件 for service in $(ls -d "$SERVICES_DIR"/*/); do config_file="$service/src/main/resources/application.yml" if [ -f "$config_file" ]; then echo "修复: $config_file" # 替换数据库地址为环境变量 sed -i 's/jdbc:mariadb:\/\/fzx-local-mariadb:3306/jdbc:mariadb:\/\/${DB_HOST:mariadb}:3306/g' "$config_file" # 替换Redis地址为环境变量 sed -i 's/host: ${SPRING_REDIS_HOST:fzx-local-redis}/host: ${SPRING_REDIS_HOST:mariadb}/g' "$config_file" # 确保数据库密码使用环境变量 sed -i 's/password: ${SPRING_DATASOURCE_PASSWORD:}/password: ${SPRING_DATASOURCE_PASSWORD:fzx@2024!dev}/g' "$config_file" # 确保Redis密码使用环境变量 sed -i 's/password: ${SPRING_REDIS_PASSWORD:}/password: ${SPRING_REDIS_PASSWORD:fzx@2024!dev}/g' "$config_file" echo " ✓ 已修复" fi done echo "" echo "=== 配置修复完成 ===" echo "现在可以使用环境变量 DB_HOST 来指定数据库地址" echo "默认值为 mariadb,本地开发时可以设置为 fzx-local-mariadb"