Docker一键部署Odoo 系统

Docker一键部署Odoo 系统

💡
Odoo,是一套企业资源规划及客户关系管理系统,分为社区版和企业版, 也就是免费和付费的区别。通常来说社区版的功能已经足以满足大多企业的要求。该系统提供较灵活的模块架构,常用模块包括:采购管理、销售管理、库存管理、财务管理、货品管理、营销管理、客户关系管理、生产管理、人事管理及服务支持等等,同时也支持手机端访问。

界面预览:

前期准备:

  • 服务器一台,开发环境最低配置1核2G(推荐2核4G),如果服务器内存低于2G,随着数据的增长,后期会有报错;
  • 已经解析的域名一个(生产环境必备);
  • 开放指定端口8069;
  • 生产环境硬件要求:
    Xnip2023-11-16_15-12-48.webp
  • 本教程演示的时候采用的是Ubuntu20.04;
  • 需要安装Docker Engine、Docker-compose、Nginx Proxy Manager;
  • 关于如何安装Docker,请参考Docker安装教程
  • 官方安装说明
  • 官方开源项目链接
  • 各个版本之间平滑迁移的工具

开始安装:

#切换到指定安装目录
cd /root

#创建项目所需的目录
mkdir odoo

#进入网站项目文件夹
cd /root/odoo

#创建一个docker-compose.yml配置文件
touch docker-compose.yml

#编辑该文件
vim docker-compose.yml

将下面代码复制到docker-compose.yml中保存即可

version: '3.1'
services:
  web:
    image: odoo:16.0
    container_name: odoo16
    restart: always  # 总是重新启动容器
    depends_on:
      - db  # 依赖于名为db的服务
    ports:
      - "8069:8069"  # 映射端口 8069 到宿主机端口 8069,ODOO默认使用的是8069端口
    volumes:
      - odoo-web-data:/var/lib/odoo  # 映射数据卷,用于保存Odoo的数据
      - ./config:/etc/odoo  # 映射配置文件目录
      - ./addons:/mnt/extra-addons  # 映射附加模块目录

  db:
    image: postgres:15
    container_name: odoo16_db
    restart: always  # 总是重新启动容器
    environment:
      - POSTGRES_DB=postgres  # 设置数据库名称为postgres
      - POSTGRES_PASSWORD=odoo  # 设置数据库密码为odoo
      - POSTGRES_USER=odoo  # 设置数据库用户为odoo
      - PGDATA=/var/lib/postgresql/data/pgdata
    volumes:
      - odoo-db-data:/var/lib/postgresql/data/pgdata  # 映射数据卷,用于保存PostgreSQL的数据

volumes:
  odoo-web-data:  # Odoo数据卷
  odoo-db-data:  # PostgreSQL数据卷
#拉取项目镜像并在后台启动容器
docker-compose up -d

登录配置:

打开浏览器,地址栏内输入http://IP:8069端口形式访问

请记住上面Master Password的密码和Email地址,此处的Email地址不可随意填写,今后登录会用到E-mail地址。信息填写完毕后点击Create database的按钮完成数据库的创建。

登录完成后会跳转到管理界面:

请注意:带激活的按钮表示该功能免费,激活后即可使用。而带升级字样的按钮表示部分免费或者需要收费。

当你测试无误后,就可以将自己的域名在Nginx Proxy Manager面板中与服务器IP进行绑定​。