Mongodb 如何正确地将env从代码传输到k8s?
Golang上的应用程序有一些字符串:Mongodb 如何正确地将env从代码传输到k8s?,mongodb,go,kubernetes,Mongodb,Go,Kubernetes,Golang上的应用程序有一些字符串: type configuration struct { ListenPort string `env:"listen" default:":8080"` MongoHost string `env:"mongo_host" default:"mongo-srv:27017"` MongoUser string `env:"
type configuration struct {
ListenPort string `env:"listen" default:":8080"`
MongoHost string `env:"mongo_host" default:"mongo-srv:27017"`
MongoUser string `env:"mongo_user" default:"user"`
MongoPass string `env:"mongo_pass" default:"password"`
MongoDBname string `env:"mongo_db_name" default:"MyDB"`
}
如何从evnironment传输值以在k8s中部署此应用程序?
我试着这么做。但它不起作用
kind: Deployment
metadata:
name: MyApp
namespace: App
...
spec:
containers:
...
env:
- name: listen
value: "8080"
- name: mongo_host
value: "mongo-srv:27017"
...
你怎么知道它不起作用?如果您在Kubernetes之外运行Go代码,那么这些环境变量设置是否得到尊重?当我使用应用程序运行pod时,它无法连接到db。也许我使用的环境变量不正确。是否值得从代码中删除这些参数,但将其另外写入docker compose中?您是否试图将结构值从go代码提取到pod/容器中?@shubham_asati是的。您能否解释一下您试图实现的目标。。请提供有关该场景的更多信息