簡體   English   中英

Odoo Bus.bus 不可用

[英]Odoo Bus.bus unavailable

在 docker 本地運行 odoo v14 時,我經常收到以下錯誤消息:

odoo-14.0-stage    | 2021-04-26 10:51:00,476 10 ERROR update odoo.http: Exception during JSON request handling. 
odoo-14.0-stage    | Traceback (most recent call last):
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
odoo-14.0-stage    |     result = request.dispatch()
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 683, in dispatch
odoo-14.0-stage    |     result = self._call_function(**self.params)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 359, in _call_function
odoo-14.0-stage    |     return checked_call(self.db, *args, **kwargs)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/service/model.py", line 94, in wrapper
odoo-14.0-stage    |     return f(dbname, *args, **kwargs)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 347, in checked_call
odoo-14.0-stage    |     result = self.endpoint(*a, **kw)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 912, in __call__
odoo-14.0-stage    |     return self.method(*args, **kw)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 531, in response_wrap
odoo-14.0-stage    |     response = f(*args, **kw)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/addons/bus/controllers/main.py", line 35, in poll
odoo-14.0-stage    |     raise Exception("bus.Bus unavailable")
odoo-14.0-stage    | Exception
odoo-14.0-stage    | 
odoo-14.0-stage    | The above exception was the direct cause of the following exception:
odoo-14.0-stage    | 
odoo-14.0-stage    | Traceback (most recent call last):
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 639, in _handle_exception
odoo-14.0-stage    |     return super(JsonRequest, self)._handle_exception(exception)
odoo-14.0-stage    |   File "/home/odoo/addons/odoo/odoo/http.py", line 315, in _handle_exception
odoo-14.0-stage    |     raise exception.with_traceback(None) from new_cause
odoo-14.0-stage    | Exception: bus.Bus unavailable

我的 odoo.conf 文件:

[options]

# Service Settings
addons_path = /home/odoo/addons/odoo/addons,/home/odoo/addons/extra,/home/odoo/custom/custom_addons,/home/odoo/custom/edited_addons,/home/odoo/custom/paysy_addons
data_dir = /var/lib/odoo

# Database
db_host = postgres-12.2
db_user = odoo_13_0_stage
db_password = password

# Tuning Options
workers = 2
max_cron_threads = 1
limit_time_cpu = 600
limit_time_real = 1200
osv_memory_age_limit = 1.0
osv_memory_count_limit = False

# Network / Ports
xmlrpc_port = 8069
netrpc_port = 8070
xmlrpcs_port = 8071
longpolling_port = 8072
proxy_mode = True

我認為這與長輪詢有關,但不確定。 如您所見,我已經將 proxy_mode 設置為 true,配置了 longpolling 端口並設置了 2 個 worker。 我還嘗試按照其他地方的建議配置零個或兩個以上的工作人員。

希望有人可以提供幫助。

PS:按照我的 docker-compose 文件:

version: "3.9"
services:

    odoo-14.0-stage:
        container_name: odoo-14.0-stage
        image: odoo-14.0:stage
        build: ./volumes/
        ports:
            - 13001:8069/tcp
            - 8070:8070
            - 8071:8071
            - 8072:8072
        depends_on:
            - postgres-12.2
        volumes:
            - ./config:/etc/odoo:ro
            - ./volumes:/home/odoo/addons
            - ./addons:/home/odoo/custom
            - ./data:/var/lib/odoo
        restart: always

    postgres-12.2:
        container_name: postgres-12.2
        image: postgres:12.2
        build: ./postgres/12.2/
        volumes:
            - ./postgres/12.2/volumes/data:/var/lib/postgresql/data:delegated
        restart: always

這些日志是 Odoo 告訴您需要正確配置代理的一種神秘方式。

Odoo 正常操作是通過主端口(也稱為 HTTP)完成的,默認為 8069。但是,長輪詢請求有點不同:

  • 在線程模式下( workers = 0 ,最適合開發),它們通過相同的 8069 端口。
  • 在多進程模式下( workers = 2或更多,最適合生產),他們使用默認偵聽端口 8072 的特定進程。

您的瀏覽器對 Odoo 的配置方式一無所知。 它只是通過同一個端口發出所有請求,無論它是什么(提示:HTTP 默認使用 80,HTTPS 使用 443)。

這就是為什么,如果您在多進程模式下使用 Odoo,web 瀏覽器和 Odoo 之間必須有一個反向代理,根據路徑將請求定向到正確的端口。

Odoo 文檔給出了一個示例 nginx 配置和更多細節。 檢查出來: https://www.odoo.com/documentation/14.0/administration/install/deploy.html#id7

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM