You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker部署Odoo遇PermissionError:无'/var/lib/odoo/sessions'权限

解决Docker部署Odoo时的PermissionError: /var/lib/odoo/sessions权限问题

问题分析

错误核心是Odoo进程无权限创建或写入/var/lib/odoo/sessions目录——容器内该目录默认由root用户拥有,而Odoo常规以odoo普通用户运行,导致权限冲突。

解决方案

方案1:通过Docker Compose指定运行用户

修改项目中的docker-compose.yml,在Odoo服务配置中添加用户ID和组ID映射,让容器内进程权限与本地用户一致:

services:
  odoo:
    # 保留原有配置...
    user: "${UID}:${GID}"

在项目根目录的.env文件中添加(本地执行id -u获取UID,id -g获取GID):

UID=1000
GID=1000

重新启动容器:

sh dev down && sh dev up -d

方案2:手动修复容器内目录权限

  1. 进入运行中的Odoo容器:
docker exec -it <你的Odoo容器名称> bash
  1. 创建目录并修改所有权:
mkdir -p /var/lib/odoo/sessions
chown -R odoo:odoo /var/lib/odoo

如果是挂载了本地数据卷到/var/lib/odoo,也可在本地直接调整权限:

sudo chown -R 1000:1000 ./path/to/your/odoo-data-folder

(注:1000是容器内odoo用户默认UID,可通过docker exec <容器名> id odoo确认)

方案3:修改Odoo配置指定会话目录

在Odoo配置文件(如odoo.conf)中添加自定义会话目录,指向容器内有权限的路径(比如/tmp):

session_dir = /tmp/odoo-sessions

确保该配置文件被正确挂载到容器内的Odoo配置路径,然后重启容器。

内容的提问来源于stack exchange,提问作者ITN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 19:36:18