源代码安装¶
源代码安装不是关于安装Odoo,而是直接从源代码运行它。
使用Odoo源代码对于模块开发人员来说更方便,因为它比使用打包安装程序更容易访问。
它使得启动和停止Odoo比打包安装程序设置的服务更加灵活和明确。此外,它允许使用 命令行参数 来覆盖设置,而无需编辑配置文件。
最后,它提供了对系统设置的更大控制,并且可以更轻松地保留(和运行)多个版本的Odoo并行。
获取源代码¶
有两种获取Odoo源代码的方式:作为ZIP 存档 或通过 Git 。
归档¶
社区版:
企业版:
Git¶
注解
需要安装 Git ,并且建议具备基本的 Git 命令知识才能继续。
To clone a Git repository, choose between cloning with HTTPS or SSH. In most cases, the best option is HTTPS. However, choose SSH to contribute to Odoo source code or when following the Getting Started developer tutorial.
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
C:\> git clone git@github.com:odoo/odoo.git
C:\> git clone git@github.com:odoo/enterprise.git
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
注解
企业版 git 仓库不包含完整的 Odoo 源代码。它只是一组额外的插件。主要的服务器代码在社区版中。运行企业版意味着使用社区版中的服务器,并将 addons-path
选项设置为企业版所在的文件夹。必须克隆社区版和企业版仓库才能获得一个可用的 Odoo 企业版安装。
准备¶
Python¶
Odoo requires Python 3.10 or later to run.
在 17 版更改: Minimum requirement updated from Python 3.7 to Python 3.10.
如果需要,使用软件包管理器下载并安装Python 3。
下载最新版本的Python 3 并安装。
在安装过程中,勾选 Add Python 3 to PATH,然后点击 Customize Installation 并确保 pip 已被勾选。
注解
If Python 3 is already installed, make sure that the version is 3.10 or above, as previous versions are not compatible with Odoo.
$ python3 --version
C:\> python --version
$ python3 --version
验证此版本是否还安装了 pip。
$ pip3 --version
C:\> pip --version
$ pip3 --version
PostgreSQL¶
Odoo 使用 PostgreSQL 作为其数据库管理系统。
使用软件包管理器下载和安装PostgreSQL(支持的版本:12.0或更高)。可以通过执行以下命令来实现:
$ sudo apt install postgresql postgresql-client
下载 PostgreSQL (支持的版本:12.0 或更高) 并安装。
使用 Postgres.app 下载并安装 PostgreSQL (支持的版本:12.0 或更高)。
小技巧
为了使与 Postgres.app 捆绑的命令行工具可用,请确保按照 Postgres.app CLI 工具说明 设置 $PATH
变量。
默认情况下,唯一的用户是 postgres
。由于Odoo禁止使用 postgres
连接,需要创建一个新的PostgreSQL用户。
$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER
注解
由于PostgreSQL用户与Unix登录具有相同的名称,因此可以在没有密码的情况下连接到数据库。
将 PostgreSQL 的
bin
目录(默认为:C:\Program Files\PostgreSQL\<version>\bin
)添加到PATH
。使用pg admin gui创建带密码的postgres用户:
打开 pgAdmin.
双击服务器以创建连接。
选择
。在 角色名称 字段中输入用户名(例如,
odoo
)。打开 Definition 选项卡,输入密码(例如,
odoo
),然后点击 Save 。打开 权限 选项卡,将 可以登录? 切换为
是
,将 创建数据库? 切换为是
。
$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER
注解
由于PostgreSQL用户与Unix登录具有相同的名称,因此可以在没有密码的情况下连接到数据库。
依赖项¶
使用 发行版软件包 是安装依赖项的首选方式。或者,使用 pip 安装 Python 依赖项。
在Debian/Ubuntu上,以下命令应该安装所需的软件包:
$ cd odoo #CommunityPath
$ sudo ./setup/debinstall.sh
The setup/debinstall.sh
script will parse the debian/control file and install the found packages.
警告
Using pip may lead to security issues and broken dependencies; only do this if you know what you are doing.
由于一些Python包需要编译步骤,它们需要安装系统库。
在Debian/Ubuntu上,以下命令应该安装这些所需的库:
$ sudo apt install python3-pip libldap2-dev libpq-dev libsasl2-dev
Odoo 依赖项在位于 Odoo 社区目录根目录下的 requirements.txt
文件中列出。
注解
在 requirements.txt
中的 Python 包是基于其在 Odoo 发布时的稳定/LTS Debian/Ubuntu 对应版本。例如,对于 Odoo 15.0, python3-babel
包的版本在 Debian Bullseye 中为 2.8.0,在 Ubuntu Focal 中为 2.6.0。最低版本会在 requirements.txt
中选择。
小技巧
可以优先考虑不在不同的Odoo实例或系统之间混合使用Python模块包。然而,可以使用 virtualenv 创建隔离的 Python环境。
导航到Odoo社区安装路径 (CommunityPath
) 并在要求文件上运行 pip 以安装当前用户的要求。
$ cd /CommunityPath
$ pip install -r requirements.txt
在安装依赖项之前,请下载并安装 Visual Studio 的构建工具。在 Workloads 选项卡中选择 C++ 构建工具,并在提示时安装它们。
Odoo 依赖项列在位于 Odoo 社区目录根目录下的 requirements.txt
文件中。
小技巧
可以优先考虑不在不同的Odoo实例或系统之间混合使用Python模块包。然而,可以使用 virtualenv 创建隔离的 Python环境。
导航到Odoo社区安装的路径( CommunityPath
)并在终端中以 管理员权限 运行 pip 来安装要求文件:
C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt
Odoo 依赖项列在位于 Odoo 社区目录根目录下的 requirements.txt
文件中。
小技巧
可以优先考虑不在不同的Odoo实例或系统之间混合使用Python模块包。然而,可以使用 virtualenv 创建隔离的 Python环境。
导航到Odoo社区安装路径( CommunityPath
)并在要求文件上运行 pip :
$ cd /CommunityPath
$ pip3 install setuptools wheel
$ pip3 install -r requirements.txt
注解
对于使用 从右到左界面 的语言(如阿拉伯语或希伯来语),需要安装 rtlcss
软件包。
下载并使用软件包管理器下载和安装 nodejs 和 npm。
安装
rtlcss
:$ sudo npm install -g rtlcss
下载并安装 nodejs.
安装
rtlcss
:C:\> npm install -g rtlcss
编辑系统环境变量
PATH
,添加包含rtlcss.cmd
的文件夹(通常为:C:\Users\<user>\AppData\Roaming\npm\
)。
警告
wkhtmltopdf
is not installed through pip and must be installed manually in version 0.12.6 for it to support headers
and footers. Check out the wkhtmltopdf wiki
for more details on the various versions.
运行 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 数据库的名称。
C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
其中 CommunityPath
是 Odoo 社区版安装路径, dbuser
是 PostgreSQL 登录名, dbpassword
是 PostgreSQL 密码, mydb
是 PostgreSQL 数据库名称。
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
其中 CommunityPath
是 Odoo 社区版安装路径, mydb
是 PostgreSQL 数据库的名称。
启动服务器后(INFO日志 odoo.modules.loading: Modules loaded.
打印出来),在 Web 浏览器中打开 http://localhost:8069 并使用基本管理员账户登录 Odoo 数据库:将 admin
作为邮箱,再次将 admin
作为密码。
小技巧
从那里开始,创建和管理新的 用户。
用户用于登录Odoo的Web界面的帐户与
--db_user
CLI参数不同。