Serverless - 函数计算
基于Go - gin web框架部署Serverless应用时,虽然在高级设置里添加了环境变量的配置,如下图 但在代码里通过如下方式并不能获取到环境变量值
package main
import (
"os"
"fmt"
)
func main() {
v := os.Getenv("name1")
fmt.Println(v)
}
并且在应用基本信息页面也没有展示自定义环境变量信息
用于k8s制作测试镜像,可以按需返回指定环境变量,如PodIP,HOSTNAME;
调用格式:http://{ip}:8080?env={envName} env参数区分大小写
vi webserver.go
go build webserver.go
package main
import ( "fmt" "net/http" "os" "time" "net/url" )
func HandlerGetEnv(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, time.Now().Format("2006-01-02 15:04:05"))
queryForm, err := url.ParseQuery(r.URL.RawQuery) if err == nil && len(queryForm["env"]) > 0 { fmt.Fprintf(w, "ENV %s: %s", queryForm["env"][0], os.Getenv(queryForm["env"][0])) } else { fmt.Fprint(w, "Usage: http://{ip}:8080?env={envName}") }
}
func main() { http.HandleFunc("/", HandlerGetEnv) http.ListenAndServe(":8080", nil) }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。