From bbbd857a4571b91b129ff30d1763e89882c2ce78 Mon Sep 17 00:00:00 2001 From: Yaodong Yu <2814461814@qq.com> Date: Tue, 13 Feb 2024 23:12:25 +0800 Subject: [PATCH] fix: fix bug that failed to run initApi adapter in docker (#2696) --- conf/conf.go | 14 +++----------- object/adapter.go | 1 + 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/conf/conf.go b/conf/conf.go index 41771357..6e36b6b9 100644 --- a/conf/conf.go +++ b/conf/conf.go @@ -71,7 +71,10 @@ func GetConfigInt64(key string) (int64, error) { func GetConfigDataSourceName() string { dataSourceName := GetConfigString("dataSourceName") + return ReplaceDataSourceNameByDocker(dataSourceName) +} +func ReplaceDataSourceNameByDocker(dataSourceName string) string { runningInDocker := os.Getenv("RUNNING_IN_DOCKER") if runningInDocker == "true" { // https://stackoverflow.com/questions/48546124/what-is-linux-equivalent-of-host-docker-internal @@ -81,7 +84,6 @@ func GetConfigDataSourceName() string { dataSourceName = strings.ReplaceAll(dataSourceName, "localhost", "host.docker.internal") } } - return dataSourceName } @@ -108,13 +110,3 @@ func GetConfigBatchSize() int { } return res } - -func GetConfigRealDataSourceName(driverName string) string { - var dataSourceName string - if driverName != "mysql" { - dataSourceName = GetConfigDataSourceName() - } else { - dataSourceName = GetConfigDataSourceName() + GetConfigString("dbName") - } - return dataSourceName -} diff --git a/object/adapter.go b/object/adapter.go index 4fd79a4c..3c863990 100644 --- a/object/adapter.go +++ b/object/adapter.go @@ -178,6 +178,7 @@ func (adapter *Adapter) InitAdapter() error { dataSourceName = strings.ReplaceAll(dataSourceName, "dbi.", "db.") } + dataSourceName = conf.ReplaceDataSourceNameByDocker(dataSourceName) engine, err := xorm.NewEngine(driverName, dataSourceName) if err != nil { return err