2.13 将Go HTTP服务器容器化:完整Dockerfile实战案例
引言
将Go HTTP服务器容器化是云原生开发的基础技能。本文将通过完整的实战案例,手把手教你如何将Go HTTP服务器容器化,包括Dockerfile编写、多阶段构建、优化等。
一、Go HTTP服务器
1.1 示例应用
// main.gopackagemainimport("fmt""log""net/http""os")funchandler(w http.ResponseWriter,r*http.Request){hostname,_:=os.Hostname()fmt.Fprintf(w,"Hello from %s\n",hostname)}funcmain(){http.HandleFunc("/",handler)port:=os.Getenv("PORT")ifport==""{port="8080"}log.Printf("Server starting on :%s",port)log.Fatal(http