diff --git a/docker-compose.yaml b/docker-compose.yaml index 1494a72..9b3a256 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,4 +1,4 @@ -version: '3' +version: "3" services: wg: @@ -10,6 +10,9 @@ services: - EMAIL_FROM - EMAIL_FROM_NAME - SESSION_SECRET + - WGUI_USERNAME=alpha + - WGUI_PASSWORD=this-unusual-password + ports: - 5000:5000 logging: diff --git a/util/db.go b/util/db.go index ded1306..4c9c7fb 100644 --- a/util/db.go +++ b/util/db.go @@ -15,6 +15,8 @@ import ( ) const dbPath = "./db" +const username_env_var = "WGUI_USERNAME" +const password_env_var = "WGUI_PASSWORD" const defaultUsername = "admin" const defaultPassword = "admin" const defaultServerAddress = "10.252.1.0/24" @@ -33,6 +35,13 @@ func DBConn() (*scribble.Driver, error) { return db, nil } +func getCredVar(key, fallback string) string { + if value, ok := os.LookupEnv(key); ok { + return value + } + return fallback +} + // InitDB to create the default database func InitDB() error { var clientPath string = path.Join(dbPath, "clients") @@ -112,8 +121,8 @@ func InitDB() error { } user := new(model.User) - user.Username = defaultUsername - user.Password = defaultPassword + user.Username = getCredVar(username_env_var, defaultUsername) + user.Password = getCredVar(password_env_var, defaultPassword) db.Write("server", "users", user) }