ListenAndServe返回net.DNSError“节点名称或服务名称提供”

我试图写一个去http服务器,但我有一个问题,当我尝试聆听传入的连接。
硬件设置:MacOS Sierra 10.12.4,docker 17.03
我有一个XML文件,将打开一个。 phpmyadmin和sql:

mysql: extends: service: mysql-5.7 ports: - "3306:3306" phpmyadmin: image: phpmyadmin/phpmyadmin:latest links: - "mysql:db" ports: - "8080:80" 

这似乎工作正常。 在此之后,我写了一个go文件来连接和监听连接:

 stack := negroni.New() stack.Use(cors.New(cors.Options{ AllowedOrigins: []string{"*"}, AllowedMethods: []string{"GET", "POST", "PUT", "DELETE"}, AllowedHeaders: []string{"*"}, AllowCredentials: true, })) external := &http.Server{ Addr: "10001", Handler: stack, } // Start the server, listening for incomming connections. go func() { err = external.ListenAndServe() if err != nil && err != http.ErrServerClosed { level.Error(logger).Log("msg", "error while listening", "err", err) os.Exit(1) } }() 

这会产生错误:

level =错误时间= 2017-06-19T09:28:14.726843314Z app =“Falbala”env = local pid = 1084 host = P5RO-PORT367.local msg =“监听时出错”err =“listen tcp:lookup tcp / 10001 “:节点名称或服务名称提供,或不知道”

有任何想法吗?
谢谢

从文档中 ,地址值应该是一个string。

 // ListenAndServe always returns a non-nil error. func ListenAndServe(addr string, handler Handler) error { server := &Server{Addr: addr, Handler: handler} return server.ListenAndServe() } 

你能试一下吗?

 external := http.Server{ Addr: ":10001", Handler: stack, }