INNER CODE UNIT · Go
main
ThreeDotsLabs/monolith-microservice-shop · cmd/microservices/shop/main.go:17
func main() {
log.Println("Starting shop microservice")
ctx := cmd.Context()
r := createShopMicroservice()
server := &http.Server{Addr: os.Getenv("SHOP_SHOP_SERVICE_BIND_ADDR"), Handler: r}
go func() {
if err := server.ListenAndServe(); err != http.ErrServerClosed {
panic(err)
}
}()
<-ctx.Done()
log.Println("Closing shop microservice")
if err := server.Close(); err != nil {
panic(err)