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-composeDocker已安装在你的机器上。
  2. 在包含docker-compose.ymlodoo.conf文件的同一目录下运行docker-compose up。Docker将根据docker-compose.yml中的定义启动Odoo 16和PostgreSQL 15容器。
  3. 通过浏览器访问http://localhost:8069
相关推荐
AI小云25 分钟前
【Python与AI基础】Python编程基础:模块和包
人工智能·python
努力努力再努力wz38 分钟前
【C++进阶系列】:万字详解智能指针(附模拟实现的源码)
java·linux·c语言·开发语言·数据结构·c++·python
小蕾Java1 小时前
Python详细安装教程(附PyCharm使用)
开发语言·python·pycharm
weixin_307779131 小时前
使用AWS IAM和Python自动化权限策略分析与导出
开发语言·python·自动化·云计算·aws
惜月_treasure2 小时前
从零构建私域知识库问答机器人:Python 全栈实战(附完整源码)
开发语言·python·机器人
哈里谢顿3 小时前
threading模块学习
python
mit6.8243 小时前
[VoiceRAG] Azure | 使用`azd`部署应用 | Dockerfile
python
砥锋3 小时前
计算机人的雷达入门:零基础用Python+Cinrad可视化雷达数据【实战指南】
python
你们瞎搞3 小时前
arcgis矢量数据转为标准geojson格式
python·arcgis·json·地理空间数据
郝学胜-神的一滴3 小时前
Python中的鸭子类型:理解动态类型的力量
开发语言·python·程序人生·软件工程