diff --git a/cozy-oauth-proxy b/cozy-oauth-proxy
index 167f394e0d82fb1f3524763fbcba5a0cda17a335..e71175ed9ea710631e991bb169c96b0c356f4b42 100755
Binary files a/cozy-oauth-proxy and b/cozy-oauth-proxy differ
diff --git a/main.go b/main.go
index 87eb21aebe77d4f461a0f9b59b6c85e302255ab4..6ed54806cb4035481e04f68e40a6ac995d9ee2d7 100644
--- a/main.go
+++ b/main.go
@@ -15,7 +15,7 @@ import (
 )
 
 var (
-	httpPort = flag.Int("http_port", 80, "HTTP port to serve on (defaults to 80)")
+	httpPort = flag.Int("http_port", LookupEnvOrInt("HTTP_PORT", 80), "HTTP port to serve on (defaults to 80)")
 )
 
 type TokenResponse struct {
@@ -29,6 +29,24 @@ type TokenResponse struct {
 	UsagePointId         string `json:"usage_points_id"`
 }
 
+func LookupEnvOrString(key string, defaultVal string) string {
+	if val, ok := os.LookupEnv(key); ok {
+		return val
+	}
+	return defaultVal
+}
+
+func LookupEnvOrInt(key string, defaultVal int) int {
+	if val, ok := os.LookupEnv(key); ok {
+		v, err := strconv.Atoi(val)
+		if err != nil {
+			log.Fatalf("LookupEnvOrInt[%s]: %v", key, err)
+		}
+		return v
+	}
+	return defaultVal
+}
+
 func main() {
 	// Parse the flags
 	flag.Parse()
@@ -47,7 +65,7 @@ func main() {
 	log.SetLevel(log.DebugLevel)
 
 	mux := http.NewServeMux()
-	log.Info("Server started")
+	log.Infof("Starting Server on port %d\n", *httpPort)
 
 	mux.HandleFunc("/healthcheck", func(w http.ResponseWriter, r *http.Request) {
 		io.WriteString(w, "OK\n")