We are using version 10 of Odoo on CentOS 7.4.1708.
Why are we not able to use port 80 for Odoo? There are a number of workarounds using NATs but not explanation as to why it doesn't just work. Since port 80 is the standard for http, I think that it is reasonable expectation that we be able to use it for a web-based service.
Below is the output to /var/log/messages after an attempted start. It almost looks like the odoo user just needs elevated permissions such as an entry in visudo to get the port that it needs:
Sep 19 14:53:06 template7 systemd: Starting Odoo Open Source ERP and CRM...
Sep 19 14:53:07 template7 odoo: Exception in thread odoo.service.httpd:
Sep 19 14:53:07 template7 odoo: Traceback (most recent call last):
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/threading.py", line 812, in __bootstrap_inner Sep 19 14:53:07 template7 odoo: self.run()
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/threading.py", line 765, in run Sep 19 14:53:07 template7 odoo: self.__target(*self.__args, **self.__kwargs)
Sep 19 14:53:07 template7 odoo: File "/usr/lib/python2.7/site-packages/odoo/service/server.py", line 250, in http_thread Sep 19 14:53:07 template7 odoo: self.httpd = ThreadedWSGIServerReloadable(self.interface, self.port, app)
Sep 19 14:53:07 template7 odoo: File "/usr/lib/python2.7/site-packages/odoo/service/server.py", line 105, in __init__ Sep 19 14:53:07 template7 odoo: handler=RequestHandler)
Sep 19 14:53:07 template7 odoo: File "/usr/lib/python2.7/site-packages/werkzeug/serving.py", line 410, in __init__ Sep 19 14:53:07 template7 odoo: HTTPServer.__init__(self, (host, int(port)), handler)
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/SocketServer.py", line 419, in __init__ Sep 19 14:53:07 template7 odoo: self.server_bind()
Sep 19 14:53:07 template7 odoo: File "/usr/lib/python2.7/site-packages/odoo/service/server.py", line 115, in server_bind Sep 19 14:53:07 template7 odoo: super(ThreadedWSGIServerReloadable, self).server_bind()
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/BaseHTTPServer.py", line 108, in server_bind Sep 19 14:53:07 template7 odoo: SocketServer.TCPServer.server_bind(self)
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/SocketServer.py", line 430, in server_bind Sep 19 14:53:07 template7 odoo: self.socket.bind(self.server_address)
Sep 19 14:53:07 template7 odoo: File "/usr/lib64/python2.7/socket.py", line 224, in meth Sep 19 14:53:07 template7 odoo: return getattr(self._sock,name)(*args)
Sep 19 14:53:07 template7 odoo: error: [Errno 13] Permission denied