             # Synchronous initialize of other functionality, now that the database, etc., are working.
             winston.debug("base_url='#{BASE_URL}'")
 
-            winston.debug("initializing primus websocket server")
-            init_primus_server(http_server)
-
-            winston.debug("initializing the http proxy server")
+            if program.port
+                winston.debug("initializing primus websocket server")
+                init_primus_server(http_server)
 
             if program.proxy_port
+                winston.debug("initializing the http proxy server on port #{program.proxy_port}")
                 hub_proxy.init_http_proxy_server
                     database       : database
                     compute_server : compute_server

                 console.log("User added to project.")
            process.exit()
    else
        console.log("Running web server; pidfile=#{program.pidfile}, port=#{program.port}, proxy_port=#{program.proxy_port}")
        # logFile = /dev/null to prevent huge duplicated output that is already in program.logfile
        if program.foreground
            start_server (err) ->

                    winston.debug("connected to database.")
                    cb()
        (cb) ->
            if not program.port
                cb(); return
            if program.dev or program.update
                winston.debug("updating the database schema...")
                database.update_schema(cb:cb)
            else
                cb()
        (cb) ->
            if not program.port
                cb(); return
            init_stripe(cb)
        (cb) ->
            if not program.port
                cb(); return
            init_support(cb)
        (cb) ->
            init_compute_server(cb)
        (cb) ->
            if not program.port
                cb(); return
            # proxy server and http server; this working etc. *relies* on compute_server having been created
            # However it can still serve many things without database.  TODO: Eventually it could inform user
            # that database isn't working.
