源代码安装

源“installation”并不是指安装 Odoo,而是指直接从源代码运行 Odoo。

使用 Odoo 源代码对于模块开发者来说可能更加方便,因为其比使用打包安装程序更容易访问。

它使启动和停止 Odoo 比打包安装程序设置的服务更加灵活和明确。同时,它允许通过 命令行参数 覆盖设置,而无需编辑配置文件。

最后,它提供了对系统设置的更大控制权,并且更容易同时保持(并运行)多个版本的 Odoo。

获取源代码

获取 Odoo 源代码有两种方式:作为 ZIP 归档文件 或通过 Git

归档

社区版:

企业版:

Git

注解

需要安装 Git,并建议具备基本的 Git 命令知识以继续操作。

要克隆一个 Git 仓库,请选择使用 HTTPS 或 SSH。在大多数情况下,最佳选项是 HTTPS。但是,如果您要对 Odoo 源代码进行贡献,或者正在遵循 开始开发人员教程,请选择 SSH。

$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git

注解

企业版 Git 仓库不包含完整的 Odoo 源代码。它仅包含一些额外的插件。主服务器代码位于社区版中。运行企业版意味着从社区版启动服务器,并将 addons-path 参数设置为指向企业版的文件夹。为了获得一个正常工作的 Odoo 企业版安装,需要克隆社区版和企业版两个仓库。

准备中

Python

Odoo 需要 Python 3.10 或更高版本才能运行。

在 17 版更改: Python 3.7 的最低要求已更新为 Python 3.10。

如果需要,请使用包管理器下载并安装 Python 3。

注解

如果已安装 Python 3,请确保版本为 3.10 或更高,因为旧版本与 Odoo 不兼容。

$ python3 --version

确认此版本的 pip 也已安装。

$ pip3 --version

PostgreSQL

Odoo 使用 PostgreSQL 作为其数据库管理系统。

使用包管理器下载并安装 PostgreSQL(支持的版本:12.0 或更高版本)。可以通过执行以下操作来实现:

$ sudo apt install postgresql postgresql-client

默认情况下,唯一用户是 postgres。由于 Odoo 禁止以 postgres 身份连接,请创建一个新的 PostgreSQL 用户。

$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER

注解

由于 PostgreSQL 用户名与 Unix 登录名相同,因此可以无需密码连接到数据库。

依赖项

使用 分发包 是安装依赖项的首选方式。或者,也可以使用 pip 安装 Python 依赖项。

在 Debian/Ubuntu 系统上,以下命令将安装所需的软件包:

$ cd odoo #CommunityPath
$ sudo ./setup/debinstall.sh

setup/debinstall.sh 脚本将解析 debian/control 文件并安装找到的软件包。

注解

对于使用 从右到左界面 的语言(如阿拉伯语或希伯来语),需要 rtlcss 包。

  1. 使用包管理器下载并安装 Node.jsnpm

  2. 安装 rtlcss

    $ sudo npm install -g rtlcss
    

警告

wkhtmltopdf 不是通过 pip 安装的,必须手动安装 0.12.6 版本 才能支持页眉和页脚。有关不同版本的更多信息,请查看 wkhtmltopdf 维基

运行 Odoo

一旦所有依赖项设置完成,可以通过运行 odoo-bin 启动 Odoo,这是服务器的命令行界面。它位于 Odoo 社区版目录的根目录下。

要配置服务器,请指定 命令行参数 或一个 配置文件

小技巧

对于企业版,将 enterprise 插件的路径添加到 addons-path 参数中。请注意,它必须位于 addons-path 中其他路径之前,以确保插件能够正确加载。

常见的必要配置包括:

  • PostgreSQL 用户名和密码。

  • 超出默认路径的自定义插件路径,用于加载自定义模块。

运行服务器的典型方式如下:

$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb

其中 CommunityPath 是 Odoo 社区版安装路径,mydb 是 PostgreSQL 数据库的名称。

服务器启动后(INFO 日志 odoo.modules.loading: Modules loaded. 被打印),在网页浏览器中打开 http://localhost:8069,并使用基础管理员账户登录 Odoo 数据库:将 admin 作为邮箱,再次使用 admin 作为密码。

小技巧

  • 从那里,创建和管理新的 用户

  • 用于登录 Odoo 网页界面的用户账户与 --db_user 命令行参数不同。