docker搭建odoo16开发环境

要使用Docker搭建Odoo 16的开发环境,我们需要准备两个主要文件:一个是docker-compose.yml文件,用来定义和运行多个Docker应用容器,包括Odoo 16和PostgreSQL 15;另一个是odoo.conf文件,用来配置Odoo应用。下面我会详细解释这两个文件。

1. docker-compose.yml

这个文件用于定义和运行Odoo和PostgreSQL容器。创建一个名为docker-compose.yml的文件,并填入以下内容:

yaml 复制代码
version: '3.7'
services:
  web:
    image: odoo:16
    depends_on:
      - db
    ports:
      - "8069:8069"
    volumes:
      - odoo-web-data:/var/lib/odoo
      - ./config:/etc/odoo
      - ./addons:/mnt/extra-addons
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=odoo

  db:
    image: postgres:15
    environment:
      POSTGRES_DB: odoodb
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: odoo
    volumes:
      - odoo-db-data:/var/lib/postgresql/data

volumes:
  odoo-web-data:
  odoo-db-data:
参数解析:
  • version: 指定docker-compose文件格式版本。
  • services: 定义需要运行的服务容器。
  • web: Odoo服务容器。
    • image: 使用的Odoo Docker镜像版本。
    • depends_on: 定义容器间的依赖关系,此处Odoo依赖于数据库服务。
    • ports: 映射容器和主机的端口。
    • volumes: 挂载卷,用于数据持久化和配置文件的共享。
    • environment: 设置环境变量,如数据库主机、用户名和密码。
  • db: PostgreSQL服务容器。
    • image: 使用的PostgreSQL Docker镜像版本。
    • environment: 设置环境变量,包括数据库名、用户名和密码。
    • volumes: 数据库数据的持久化存储。

2. odoo.conf

接下来,你需要准备Odoo的配置文件odoo.conf。在./config目录下创建一个名为odoo.conf的文件,并填入以下内容:

conf 复制代码
[options]
; This is the password that allows database operations:
admin_passwd = admin
db_host = db
db_port = 5432
db_user = odoo
db_password = odoo
addons_path = /mnt/extra-addons
文件解析:
  • [options]: 标识配置选项的开始。
  • admin_passwd: 设置数据库操作的管理员密码。
  • db_host: 数据库主机名,与docker-compose.yml中的服务名称相对应。
  • db_port: 数据库端口号。
  • db_user: 数据库用户名。
  • db_password: 数据库密码。
  • addons_path: 附加模块的路径。

最后步骤

  1. 确保docker-compose和Docker已安装在你的机器上。
  2. 在包含docker-compose.yml和odoo.conf文件的同一目录下运行docker-compose up。Docker将根据docker-compose.yml中的定义启动Odoo 16和PostgreSQL 15容器。
  3. 通过浏览器访问http://localhost:8069
相关推荐
特立独行的猫A3 小时前
用仓颉语言 cj-tauri 框架,五分钟给娃做了个鸿蒙形近字游戏
java·后端·python
大可不必了7 小时前
03 函数定义和调用
开发语言·python
承渊政道8 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛8 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
imgsq8 小时前
GESP Python 一到四级:备考路线与真题特点
python·青少年编程
eggwyw10 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
2601_9679791210 小时前
纯手写:Python安装pip完整教程,搞了几小时,终于成功
python·教程·pip·安装·包管理
Norna10 小时前
缓存文件从没写出来:一个 .json 被当成目录用了
python
aifannihao13 小时前
AI 学习第 14 课:CNN 训 6 轮卡在 0.5352,数据没打乱
pytorch·python·深度学习·cnn·学习路线
yuyuxun113 小时前
协同过滤的校园二手物品智能推荐系统的设计与实现 毕业设计-附源码40082
javascript·vue.js·spring boot·python·数据分析·django·课程设计