UNCLASSIFIED - NO CUI

Skip to content

Accessing Odoo Returns HTTP500 Error

Summary

The Odoo container returns a HTTP500 error whenever anyone tries to access the application.

Steps to reproduce

Start a PostgreSQL server - $ docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name db postgres:10

Start an Odoo instance $ docker run -p 8069:8069 --name odoo --link db:db -t ib-odoo-image

Attempt to access odoo via a web browser: http://SERVER_IP:8069 (where SERVER_IP is the IP address of your docker server)

What is the current bug behavior?

Web browser is returned an HTTP500 error. Below is sample output from the container log:

2021-03-31 16:33:07,062 1 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 323, in run_wsgi
    execute(self.server.app)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 312, in execute
    application_iter = app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/server.py", line 440, in app
    return self.app(e, s)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 124, in application
    return application_unproxied(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 99, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1295, in __call__
    return self.dispatch(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1263, in __call__
    return self.app(environ, start_wrapped)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/middleware/shared_data.py", line 260, in __call__
    return self.app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1428, in dispatch
    explicit_session = self.setup_session(httprequest)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1326, in setup_session
    session_gc(self.session_store)
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/func.py", line 26, in __get__
    value = self.fget(obj)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1274, in session_store
    path = odoo.tools.config.session_dir
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/config.py", line 695, in session_dir
    os.makedirs(d, 0o700)
  File "/usr/local/lib/python3.8/os.py", line 223, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/var/lib/odoo/sessions' - - -
2021-03-31 16:33:26,439 1 INFO ? werkzeug: 127.0.0.1 - - [31/Mar/2021 16:33:26] "GET /favicon.ico HTTP/1.1" 50
0 - 0 0.000 0.001
2021-03-31 16:33:26,442 1 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 323, in run_wsgi
    execute(self.server.app)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 312, in execute
    application_iter = app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/server.py", line 440, in app
    return self.app(e, s)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 124, in application
    return application_unproxied(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 99, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1295, in __call__
    return self.dispatch(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1263, in __call__
    return self.app(environ, start_wrapped)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/middleware/shared_data.py", line 260, in __call__
    return self.app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1428, in dispatch
    explicit_session = self.setup_session(httprequest)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1326, in setup_session
    session_gc(self.session_store)
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/func.py", line 26, in __get__
    value = self.fget(obj)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1274, in session_store
    path = odoo.tools.config.session_dir
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/config.py", line 695, in session_dir
    os.makedirs(d, 0o700)
  File "/usr/local/lib/python3.8/os.py", line 223, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/var/lib/odoo/sessions' - - -

What is the expected correct behavior?

Odoo application will be presented to the end user when navigating to http://SERVER_IP:8069 (where SERVER_IP is the IP address of your docker server)

Relevant logs and/or screenshots

2021-03-31 16:33:07,062 1 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 323, in run_wsgi
    execute(self.server.app)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 312, in execute
    application_iter = app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/server.py", line 440, in app
    return self.app(e, s)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 124, in application
    return application_unproxied(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 99, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1295, in __call__
    return self.dispatch(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1263, in __call__
    return self.app(environ, start_wrapped)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/middleware/shared_data.py", line 260, in __call__
    return self.app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1428, in dispatch
    explicit_session = self.setup_session(httprequest)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1326, in setup_session
    session_gc(self.session_store)
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/func.py", line 26, in __get__
    value = self.fget(obj)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1274, in session_store
    path = odoo.tools.config.session_dir
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/config.py", line 695, in session_dir
    os.makedirs(d, 0o700)
  File "/usr/local/lib/python3.8/os.py", line 223, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/var/lib/odoo/sessions' - - -
2021-03-31 16:33:26,439 1 INFO ? werkzeug: 127.0.0.1 - - [31/Mar/2021 16:33:26] "GET /favicon.ico HTTP/1.1" 50
0 - 0 0.000 0.001
2021-03-31 16:33:26,442 1 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 323, in run_wsgi
    execute(self.server.app)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/serving.py", line 312, in execute
    application_iter = app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/server.py", line 440, in app
    return self.app(e, s)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 124, in application
    return application_unproxied(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/service/wsgi_server.py", line 99, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1295, in __call__
    return self.dispatch(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1263, in __call__
    return self.app(environ, start_wrapped)
  File "/usr/local/lib/python3.8/site-packages/werkzeug/middleware/shared_data.py", line 260, in __call__
    return self.app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1428, in dispatch
    explicit_session = self.setup_session(httprequest)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1326, in setup_session
    session_gc(self.session_store)
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/func.py", line 26, in __get__
    value = self.fget(obj)
  File "/usr/local/lib/python3.8/site-packages/odoo/http.py", line 1274, in session_store
    path = odoo.tools.config.session_dir
  File "/usr/local/lib/python3.8/site-packages/odoo/tools/config.py", line 695, in session_dir
    os.makedirs(d, 0o700)
  File "/usr/local/lib/python3.8/os.py", line 223, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/var/lib/odoo/sessions' - - -

Possible fixes

The error logs from the container make it look like the application cannot access /var/lib/odoo/sessions . Perhaps permissions need to be adjusted?

Defintion of Done

  • Bug has been identified and corrected within the container
Edited by foltz
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information