docker容器的In-Go应用程序捕获环境变量
我想在docker中创建一个Golang应用程序的映像。我编译了应用程序,并在上面创建了图像,它按预期工作。 然而,该应用程序需要某些参数:数据库名称、用户、数据库服务器的ip等。。。 因此,我知道在docker中,我可以使用标志docker容器的In-Go应用程序捕获环境变量,docker,go,environment-variables,Docker,Go,Environment Variables,我想在docker中创建一个Golang应用程序的映像。我编译了应用程序,并在上面创建了图像,它按预期工作。 然而,该应用程序需要某些参数:数据库名称、用户、数据库服务器的ip等。。。 因此,我知道在docker中,我可以使用标志-e将环境变量发送到容器,因此,我的问题是: 如何在Golang应用程序中捕获这些值?您可以使用或从环境变量中获取值。我更喜欢使用os.LookupEnv,因为我得到一个布尔值,表示变量有一个值,然后我有自己的方法有一个默认值 func getEnv(key strin
-e
将环境变量发送到容器,因此,我的问题是:
如何在Golang应用程序中捕获这些值?您可以使用或从环境变量中获取值。我更喜欢使用os.LookupEnv,因为我得到一个布尔值,表示变量有一个值,然后我有自己的方法有一个默认值
func getEnv(key string, defaultValue string) string {
if value, ok := os.LookupEnv(key); ok {
return value
}
return defaultValue
}
您可以使用或从环境变量中获取值。我更喜欢使用os.LookupEnv,因为我得到一个布尔值,表示变量有一个值,然后我有自己的方法有一个默认值
func getEnv(key string, defaultValue string) string {
if value, ok := os.LookupEnv(key); ok {
return value
}
return defaultValue
}