fix: expose local ports in compose and auto-load .env in config package

This commit is contained in:
root
2026-06-29 15:48:29 +00:00
parent bd2a7ec2a6
commit 4eaab40e48
2 changed files with 41 additions and 0 deletions
+34
View File
@@ -1,12 +1,46 @@
package config
import (
"bufio"
"os"
"strconv"
"strings"
"time"
)
func init() {
loadDotEnv()
}
func loadDotEnv() {
file, err := os.Open(".env")
if err != nil {
return
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
line := strings.TrimSpace(scanner.Text())
if line == "" || strings.HasPrefix(line, "#") {
continue
}
parts := strings.SplitN(line, "=", 2)
if len(parts) != 2 {
continue
}
key := strings.TrimSpace(parts[0])
val := strings.TrimSpace(parts[1])
if (strings.HasPrefix(val, "\"") && strings.HasSuffix(val, "\"")) ||
(strings.HasPrefix(val, "'") && strings.HasSuffix(val, "'")) {
val = val[1 : len(val)-1]
}
if os.Getenv(key) == "" {
os.Setenv(key, val)
}
}
}
type Config struct {
Host string
Port string