From 07c5b9cf5ad3202983721c2a2a5fab5c68c62769 Mon Sep 17 00:00:00 2001 From: Marc Di Luzio Date: Mon, 1 Jun 2020 18:10:25 +0100 Subject: [PATCH] Fix passing port on command line --- docker-compose.yml | 3 ++- main.go | 2 ++ pkg/server/server.go | 6 ++++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 39f20f1..d324eea 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,4 +3,5 @@ services: rove-server: build: . ports: - - "80:8080" \ No newline at end of file + - "80:80" + command: ./rove-server --port 80 \ No newline at end of file diff --git a/main.go b/main.go index 2729d78..ac03668 100644 --- a/main.go +++ b/main.go @@ -13,6 +13,8 @@ import ( var port = flag.Int("port", 8080, "The port to host on") func main() { + flag.Parse() + s := server.NewServer( server.OptionPort(*port), server.OptionPersistentData()) diff --git a/pkg/server/server.go b/pkg/server/server.go index c667855..7e07149 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -65,7 +65,6 @@ func NewServer(opts ...ServerOption) *Server { world: game.NewWorld(), persistence: EphemeralData, router: router, - server: &http.Server{Addr: ":8080", Handler: router}, } // Apply all options @@ -73,6 +72,9 @@ func NewServer(opts ...ServerOption) *Server { o(s) } + // Set up the server object + s.server = &http.Server{Addr: fmt.Sprintf(":%d", s.port), Handler: router} + return s } @@ -104,7 +106,7 @@ func (s *Server) Run() { defer s.sync.Done() // Listen and serve the http requests - fmt.Println("Serving HTTP") + fmt.Printf("Serving HTTP on port %d\n", s.port) if err := s.server.ListenAndServe(); err != nil && err != http.ErrServerClosed { log.Fatal(err) }