🐛 调整变量读取方式 🐛 修复Dockerfile问题
This commit is contained in:
parent
45d4342454
commit
0f55926ce3
|
|
@ -42,7 +42,19 @@ public class BackupService(ILogger<BackupService> logger, IConfiguration config,
|
|||
var url = _config.GetValue<string>("Database:Host") ?? "172.17.0.1";
|
||||
var user = _config.GetValue<string>("Database:User") ?? "backupUser";
|
||||
var password = _config.GetValue<string>("Database:Password") ?? "";
|
||||
var databases = _config.GetSection("Database:Databases").Get<string[]>() ?? ["my_database"];
|
||||
|
||||
// 支持两种格式:
|
||||
// 1. 数组格式(appsettings.json): ["db1", "db2"]
|
||||
// 2. 逗号分隔格式(环境变量): "db1,db2"
|
||||
var databases = _config.GetSection("Database:Databases").Get<string[]>();
|
||||
if (databases == null || databases.Length == 0)
|
||||
{
|
||||
// 尝试读取逗号分隔的字符串
|
||||
var databasesStr = _config.GetValue<string>("Database:Databases");
|
||||
databases = string.IsNullOrWhiteSpace(databasesStr)
|
||||
? ["my_database"]
|
||||
: databasesStr.Split(',', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
|
||||
}
|
||||
|
||||
var timestamp = DateTime.Now.ToString("yyyyMMddHHmmss");
|
||||
var dumpDir = $"/data/dumps/dump-{timestamp}";
|
||||
|
|
|
|||
|
|
@ -28,6 +28,5 @@ RUN dotnet publish "./SQLBackupToCOS.csproj" -c $BUILD_CONFIGURATION -o /app/pub
|
|||
FROM base AS final
|
||||
WORKDIR /app
|
||||
ENV TZ="Asia/Shanghai"
|
||||
RUN apt update && apt install -y mysql-client && mkdir /data && chmod 777 /data
|
||||
COPY --from=publish /app/publish .
|
||||
ENTRYPOINT ["dotnet", "SQLBackupToCOS.dll"]
|
||||
|
|
@ -4,3 +4,13 @@ services:
|
|||
build:
|
||||
context: .
|
||||
dockerfile: SQLBackupToCOS/Dockerfile
|
||||
environment:
|
||||
Database__Host: SQLHOST
|
||||
Database__User: SQLUSER
|
||||
Database__Password: StrongPassword!
|
||||
Database__Databases: DB1,DB2
|
||||
COS__BucketName: BUCKETNAME
|
||||
COS__Region: BUCKETREGION
|
||||
COS__SecretId: SECRETID
|
||||
COS__SecretKey: SECRETKEY
|
||||
COS__FilePath: PATH
|
||||
|
|
|
|||
Loading…
Reference in New Issue