在本系列文件第一章使用开发者模式快速入门 Odoo 12 中,我们介绍了快速运行 Odoo 的各种方式,本文中我们将更深入一步,直接通过源码来安装、运行 Odoo。
Odoo 使用 Python 编程语言,数据存储使用 PostgreSQL 数据库,这是对 Odoo 主机的两大要求。要使用源码运行 Odoo,首先要安装其所依赖的 Python 库。 然后从 GitHub 上下载源代码,虽然可以下载 zip 和 tar 文件,但使用 Git 版本管理工具获取代码会更优。
“ 注意: 具体依赖的安装根据操作系统和安装的 Odoo 版本可能会不同。如果在上述步骤中存在问题,请参考官方文档,可切换版本查看其它版本的操作步骤。 ”
安装 PostgreSQL 数据库
Odoo 要使用到 PostgreSQL 服务,典型的开发设置是使用安装 Odoo 的同一台机器安PostgreSQL。下面我们就来安装数据库服务:
sudo apt update
sudo apt install postgresql -y # 安装 PostgreSQL
sudo su -c "createuser -s $USER" postgres # 创建数据库超级用户
最后这条命令为当前系统用户创建了一个 PostgreSQL 用户,用于 Odoo 实例创建或删除数据
库时使用。
如果在 WSL 内运行 Ubuntu,注意系统服务不会自动启动。也就是说运行任何需要数据库连接的命令(如 createuser 或启动 Odoo 服务)时都要手动开启 PostgreSQL 服务,手动启动PostgreSQL 服务执行: sudo service postgresql start。
安装 Odoo 系统依赖
要运行 Odoo,我们还需要一些系统包和软件。获取版本控制的源码应安装 Git,安装运行Odoo 要求 Python 3.5 或之后的版本、 Python 3 的 pip 以及一些 Python 包的系统依赖:
sudo apt update
sudo apt upgrade
sudo apt install git -y # 安装 Git
sudo apt install python3-dev python3-pip -y # Python 3 for dev
sudo apt install build-essential libxslt-dev libzip-dev libldap2-dev libsasl2-
dev libssl-dev -y
Odoo 9, 10, 11 版要用到 less CSS 预处理器,所以对这些版本需要执行如下安装:
sudo apt install npm # 安装 Node.js 和包管理器
sudo ln -s /usr/bin/nodejs /usr/bin/node # 通过 node 运行 Node.js
sudo npm install -g less less-plugin-clean-css # 安装 less
Odoo 12 中无需执行如上命令,但通常我们也会用到前述版本,如果有此情况则仍需安装。
“ 注意: Odoo 12 的修改CSS 预处理器由 less 改成了 Sass, Sass 编译器无需进行额外安装,在 Odoo 12 的Python 依赖中已经安装了 libsass-python。做出这一更改的原因有: Bootstrap 4 由 less 调整为 Sass,已有 Python 绑定和避免对 Node.js(或 Ruby)的依赖。 ”