odoo Docker Compose 部署

1. docker-compose.yml配置

version: '3.1'
services:
web:
image: odoo:14
depends_on:
- mydb
ports:
- "8069:8069"
network_mode: host
environment:
- HOST=mydb
- USER=odoo
- PASSWORD=myodoo
volumes:
- odoo-web-data:/var/lib/odoo
- ./config:/etc/odoo
- ./addons:/mnt/extra-addons
mydb:
image: postgres:14
ports:
- "5432:5432"
environment:
- POSTGRES_DB=postgres
- POSTGRES_PASSWORD=myodoo
- POSTGRES_USER=odoo
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdata

volumes:
odoo-web-data:
odoo-db-data:

主要参数解读:

./config 配置文件目录 可以在该目录下添加 odoo.conf 文件
./addons 用户自定义模块目录 自己开发的源码目录可以放在这里

2. config下odoo.conf简单配置内容

[options]
addons_path = /mnt/extra-addons
auto_reload = True

3. 启动项目

docker-compose up -d

4. 使用外部数据库

  1. 去掉docker-compose.yml里面关于数据库配置

  2. odoo.conf配置数据库参数

    db_host = localhost
    db_user = odoo
    db_name = odoo
    db_password = xxx

  3. 出现-i base 错误

    进入web服务容器内部

    docker-compose exec web bash
    # 执行初始化数据库命令
    odoo -i base -d odoo --stop-after-init
    # 关闭web服务后,再重启服务
    docker-compose down
    docker-compose up -d

  4. 静态文件加载失败 404
    删除数据表所有数据 ir_attachment
    重启服务

posted @ 2023-04-10 17:22  gz_xiaohai  阅读(1186)  评论(0)    收藏  举报