code: func startHTTP(ctx *cli.Context) (err error) {
  	server, cleanup, err := newServer(ctx)
  	if err != nil {
  		return err
  	}
  	defer cleanup()
  
  	listener, err := net.Listen("tcp", ctx.String("addr"))
  	if err != nil {
  		return err
  	}
  	log.Info("http", "address", listener.Addr().String())
  
  	return http.Serve(listener, server)
  }
docs: // startHTTP starts a global store with HTTP RPC server.
  // It is used for "http" cli command.