Odoo部署

环境准备(Centos为例)

官方对Odoo环境部署的描述是:Odoo 部署是需要 Python 3.6 或更高版本,如果你计算机的版本是比这个更新的,可以选择接近3.6版本的更高版本进行配置。

然而,当你真的使用更高的版本配置的时候往往面临的就是库的兼容性问题。所以我的建议还是选择3.6大版本中进行部署。如果你的Windows电脑或Linux服务器的版本是超过或者低于这个版本,又不想换版本的,可以选择一个虚拟环境指定目录进行部署,这个方法有很多,后期我在写一篇专门说明这个的文档进行说明。

软件要求

Python3.6.8

nodejs

PostgreSQL 

以上是Odoo部署的过程中需要使用的软件,建议直接使用我描述的内容。Python是有指定版本,其他的视情况而定,如果环境系统中已经有的话就使用系统中已有版本,没有的话,就使用最新版本。

安装 pip3 和库

对于使用原生代码的库,在安装 Odoo 的 Python 依赖之前,需要安装开发工具和原生依赖。

$ sudo yum install python3-pip python3-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libssl-dev libpq-dev libjpeg-dev

home目录下新建一个文件夹以Odoo为例:

$ mkdir Odoo

你可以使用任何方法下载一个Odoo源码(这里以Odoo14 社区版为例):

最后解压到我们创建的目录,我们看下目录结构:

odoo
├── addons
│   ├── account
│   ├── account_check_printing
······
│   ├── web_tour
│   └── web_unsplash
├── CONTRIBUTING.md
├── COPYRIGHT
├── debian
│   ├── changelog
│   ├── control
│   ├── copyright
│   ├── init
│   ├── install
│   ├── lintian-overrides
│   ├── logrotate
│   ├── odoo.conf
│   ├── odoo.docs
│   ├── odoo.links
│   ├── odoo.service
│   ├── postinst
│   ├── postrm
│   ├── README.Debian
│   ├── rules
│   └── source
├── doc
│   └── cla
├── LICENSE
├── MANIFEST.in
├── odoo
│   ├── addons
│   ├── api.py
│   ├── bin
│   ├── cli
│   ├── conf
│   ├── exceptions.py
│   ├── fields.py
│   ├── http.py
│   ├── import_xml.rng
│   ├── include
│   ├── __init__.py
│   ├── lib
│   ├── loglevels.py
│   ├── models.py
│   ├── modules
│   ├── netsvc.py
│   ├── odoo.conf
│   ├── osv
│   ├── __pycache__
│   ├── pyvenv.cfg
│   ├── release.py
│   ├── service
│   ├── share
│   ├── sql_db.py
│   ├── tests
│   ├── tools
│   └── upgrade
├── odoo-bin
├── README.md
├── requirements.txt
├── SECURITY.md
├── setup
│   ├── odoo
│   ├── odoo-wsgi.example.py
│   ├── package.dfdebian
│   ├── package.dffedora
│   ├── package.dfsrc
│   ├── package.py
│   ├── redhat
│   ├── requirements-check.py
│   └── win32
├── setup.cfg
└── setup.py

以上就是完整的社区版Odoo目录:

开始部署

新建一个允许创建数据库PostgreSQL用户名

进入debian目录将odoo.conf文件复制到上层目录(不做也行)我这边是将这个文件复制一份到Odoo目录下

编辑odoo.conf

[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /usr/lib/python3/dist-packages/odoo/addons

打开可以看到以上内容

将指定位置里面填写我们前面新建的PostgreSQL用户名和密码。

addons_path:参数需要填写 addons目录的绝对地址,如果有多个则用英文逗号分隔。

运行Odoo

回到最上层Odoo目录。我们可以看到一个文件 odoo-bin

运行命令:
./odoo-bin -c [odoo.conf文件地址]
例如:
./odoo-bin -c ./odoo/odoo.conf

初次运行则需要访问:

数据库选择界面url http://服务器地址:8069/web/database/selector
带db信息的登录界面url http://服务器地址:8069/web/login?db=odoo

进行对数据的设置。

一旦设置了所有依赖项,Odoo 就可以通过运行服务器的命令行界面 odoo-bin 来启动。

$ cd $HOME/src/odoo/
$ ./odoo-bin --addons-path="addons/,../enterprise/" -d rd-demo

可以使用多个命令行参数来配置服服务器。

  • -d`<database>`

将要使用的数据库。

  • --addons-path`<directories>`

以逗号分隔的存储模块的目录列表。扫描这些目录中的模块。

  • --limit-time-cpu`<limit>`

防止工作人员为每个请求使用超过 <limit> 个 CPU 秒。

  • --limit-time-real`<limit>`

防止工作人员处理请求的时间超过 <limit> 秒。

以上就是简易的部署流程。

Windows的情况于Linux一般无二