翻译者注:
翻译本文的目的是为了安装Odoo 9.0。本文所描述的安装CentOS为7.x,请注意。本人测试了Aliyun CentOS 7.2的RPM安装过程。
yum install -y yum-utils
yum install -y postgresql-server
postgresql-setup initdb
systemctl enable postgresql
systemctl start postgresql
yum-config-manager --add-repo=https://nightly.odoo.com/9.0/nightly/rpm/odoo.repo
yum install -y odoo
systemctl enable odoo
systemctl start odoo
正文
这里有若干方式安装Odoo,或者不完整安装依赖的用户示例。
本文档尝试描述了绝大部分的安装项。
Demo
最简单的安装方式,仅仅适用于快速感受Odoo,或者测试某些东西
SaaS
尝试在Odoo S.A.开启完整的管理和迁移。既可以测试Odoo又可以用于商业避免复杂的定制(例如:自定义模块与Odoo应用商店不兼容)。
可以用于测试Odoo也可以用于长期生产。
安装包安装
使用简单,当数据在主机存储,允许获取更多灵活性,系统部署和获取强大的控制权。维护将会转移到用户。
适用于测试Odoo,开发模块也可用于长期生产,代价是额外的安装和维护工作。
源代码安装
比安装包安装难度高,可以保证极大的灵活性:安装包不允许在同一系统安装多个Odoo版本,并且不能完全保证代码是Odoo。
对开发模块有帮助,可以用于基础的生产部署。
源代码可以通过tar包或者git的方式下载。使用git是极其明智的。这样可以更简单的升级系统,在不同版本间切换(包括当前开发的版本)捐献。
docker镜像
如果你经常使用docker进行开发或者部署,并且已经拥有了docker基础镜像,请看镜像的帮助文档来获取更多信息。
教育
这里有两个不同的Odoo教育版本:社区办和教育版。使用商业版本可以在Odoo SaaS,并且代码受限于商业客户和合作者。社区版本对所有人免费。
如果你已经拥有了社区版本,并希望升级到商业版,请参考社区版迁移到商业版(不能进行源代码安装)
如果你希望转移到商业版本安装/源代码,你可以:
注意:
如果你还没有进入我们商业的数据集中,并且希望进入,可以给销售代表发送邮件或者订阅数和GitHub用户名在线支持。
警告:
商业版deb和rpm安装包没有数据集,因此无法进行自动更新。如果需要更新则重新安装最新版本的安装包。
Demo
以极其简单的快速的方式使用Odoo,demo实例可以访问的。共享的这些实例仅仅存在几个小时,可以使用浏览器参观,尝试些事情,并且不能提交。
Demo实例不需要本地安装,仅仅需要一个浏览器。
SaaS
Odoo的SaaS保证是私有化的实例,并且启动时免费的。可以探索并测试Odoo,不能安装本地的自定义代码。
看起来和demo实例一样,SaaS实例不需要本地化安装,使用浏览器就足够。
安装包安装
Odoo同时对社区版和商业版提供Windows安装包,deb类(Debian,Ubuntu,...)和RPM(Fedora,CentOS,RHEL,...)
这些安装包将会自动设置所有的依赖(对于社区版),但可能难以保持最新版本。
正式的社区版安装包将从我们nightly服务器会包含需要的所有管理依赖。社区版和商业版安装包均可以从我们Download页面进行下载(必须以付费客户登录并下载商业版)。
Windows
警告:
在Windows 8,可能看到“Windows protected your PC”为标题的警告。点击无论如何都运行。
- 接受UAC用户账户权限控制
- 通过各种安装步骤 Odoo会自动的开始,并结束安装
配置
配置文件可以从%PROGRAMFILES%\Odoo 9.0-id\server\openerp-server.conf
找到。
编辑配置文件可以连接远程Postgresql,设置文件位置或者设置dbfilter。
修改配置文件,需要重新启动Odoo服务,Services->odoo server
Deb
社区版
用Debian安装包安装Odoo 9.0 社区版,以管理员身份执行下列命令:
# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" >> /etc/apt/sources.list
# apt-get update && apt-get install odoo
之后可以使用apt-get upgrade
命令保持最新版本。
商业版
从Odoo 9.0商业版开始,需要从Download下载安装包。你可以使用gdebi
:
# apt-get install postgresql -y
# gdebi <path_to_installation_package>
或者dpkg
(自动处理较少的依赖):
# apt-get install postgresql -y
# dpkg -i <path_to_installation_package> # this probably fails with missing dependencies
# apt-get install -f # should install the missing dependencies
# dpkg -i <path_to_installation_package>
将会把Odoo安装成为服务,创建必要的PostgreSQL用户并自动启动服务。
危险: 要打印PDF报表,你需要自行安装*wkhtmltopdf:wkhtmltopdf*在debian上的保本不支持header和footer,因此不自动进行安装。推荐版本为0.12.1并从wkhtmltopdf下载页面进行下载。由于Debian Jessise没有正式发布,你可以通过我们夜间服务器获取额外的部分。
配置
配置文件可以在/etc/odoo/openerp-server.conf
找到。
当编辑配置文件后,Odoo必须使用service
重新启动:
$ sudo service odoo restart
Restarting odoo: ok
RPM
警告:
RHEL(RHEL,CentOS,Scientific Linux),EPEL必须添加所有Odoo的依赖到分布式仓库。以CentOS:
$ sudo yum install -y epel-release
对于其他RHEL基础的安装包,请看EPEL文档。
社区版
在你要安装Odoo 9.0社区版的服务器上,执行以下命令:
sudo yum install -y postgresql-server
$ sudo postgresql-setup initdb
$ sudo systemctl enable postgresql
$ sudo systemctl start postgresql
$ sudo yum-config-manager --add-repo=https://nightly.odoo.com/9.0/nightly/rpm/odoo.repo
$ sudo yum install -y odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
商业版
对于Odoo 9.0商业版,从Download下载安装包,之后运行:
sudo yum install -y postgresql-server
$ sudo postgresql-setup initdb
$ sudo systemctl enable postgresql
$ sudo systemctl start postgresql
$ sudo yum localinstall odoo_9.0.latest.noarch.rpm
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
危险: 打印PDF报告,你必须自行安装*wkhtmltopdf:wkhtmltopdf*对于Fedora/CentOS仓库里面的版本不支持header和footer,所以我们不自动进行安装。使用最新版本在wkhtmltopdf下载页面
配置 配置文件可以在/etc/odoo/openerp-server.conf
找到。
当编辑配置文件后,Odoo必须使用service
重新启动:
sudo systemctl restart odoo
源代码安装
源代码安装并不是指直接从源代码安装Odoo并运行。
这种方式比从包安装来说,对模块开发者更方便(获取信息或者参考文档均是离线的)。
这也使得启动和停止Odoo比包装装置设置的服务更加灵活和明确,并允许重写设置使用命令行参数而不需要编辑配置文件。
最后,它提供了对系统的设置更大的控制,并允许更容易保持(运行)Odoo 的多个版本。
社区版
有两种方式可以获取源代码zip或者git
- Odoo zip可以通过nightily服务器或者通过Download页面进行下载。zip下载后需要解压缩里面的内容。
- git方式可以更简单的获取更新或者切换不同版本的Odoo。还简化了维护非模块的补丁和提交。Git的主要缺点是容量大于zip包,由于包含了Odoo项目完整历史。
通过git仓库https://github.com/odoo/odoo.git获取社区版。
我们需要git客户端进行下载(在linux上可以已经存在了)并且需要执行以下命令:
git clone https://github.com/odoo/odoo.git
商业版
如果你已经获准进入商业仓库(查看[Editions]如果你希望接入),你可以使用以下命令获取插件:
$ git clone https://github.com/odoo/enterprise.git
如果你使用git为了启动你必须修改[--addons-path](https://www.odoo.com/documentation/9.0/reference/cmdline.html#cmdoption-odoo.py--addons-path)
参数(init.d
,自定义脚本,配置文件,等等)。商业插件目录将会包含以前
默认的模块。
举例:
$ odoo.py --addons-path=~/src/custom_modules,~/src/enterprise,~/src/odoo/addons
警告: 商业版本git仓库并不包括所有Odoo源代码。你必须同时可用社区版和商业版仓库用于Odoo的安装工作。Download页面包含整个的源代码,但是更新不方便。
安装依赖库
源代码安装需要手工安装依赖库:
- Python 2.7.
-
- 在Linux和OS X默认存在
-
- 在Windows,使用离线安装Python
警告:
选择“添加python.exe到指定路径”安装中,需要重新启动,以确保PATH是正确的
-
-
注意:
-
如果Python已经安装,并确信2.7.x版本,预览版不变方便和3.x版本(Python)进行兼容。
- PostgreSQL,使用本地数据库
安装后,需要创建postgres用户:默认情况只有postgres
用户,Odoo禁止以postgres
用户连接。 - 在Linux系统,你的安装包,以你登录名创建postgres用户:
$ sudo su - postgres -c "createuser -s $USER"
因此,你可以登录用户登录unix,或者远程连接。
- 在OS X,postgres.app是创建postgres最简单的方式。
- 在Windows,使用PostgreSQL for windows
-
- 添加PostgreSQL的
bin
目录(默认:C:\Program Files\PostgreSQL\9.4\bin
)到你的PATH
- 添加PostgreSQL的
-
- 创建postgres用户并赋予密码,需要使用pg admin的界面:打开pgAdminIII,双击创建服务器连接,选择Edit ‣ New Object ‣ New Login Role,从Role Name字段进入对应用户名(例如:
odoo
),开启默认的tab页,输入密码(举例:odoo
),最后点击OK。
- 创建postgres用户并赋予密码,需要使用pg admin的界面:打开pgAdminIII,双击创建服务器连接,选择Edit ‣ New Object ‣ New Login Role,从Role Name字段进入对应用户名(例如:
-
- 用户名密码必须在the configuration file中,使用
-w
和-r
参数。
- 用户名密码必须在the configuration file中,使用
- Python内部库依赖清单在
requirements.txt
文件中 -
- 在Linux,python内部库依赖可以通过系统的安装管理器,也可以使用pip工具。
类库使用原本的代码(Pillow,lxml,greenlet,gevent,psycopg2,ldap)。如果pip能够安装这些依赖安装开发工具并且本地依赖是必要的。Python、libxml2】libxslt、libevent、libsasl2】libldap2需要-dev
或者'-devel'包。Python的依赖将会使用如下命令进行安装:
- 在Linux,python内部库依赖可以通过系统的安装管理器,也可以使用pip工具。
$ pip install -r requirements.txt
$ pip install -r requirements.txt
-
- 在Windows,需要安装一些依赖,根据requirements.txt文件进行调整,之后运行pip安装其他的。
使用http://www.stickpeople.com/projects/python/win-psycopg/安装psycopg
编辑requirements.txt文件:
- 在Windows,需要安装一些依赖,根据requirements.txt文件进行调整,之后运行pip安装其他的。
-
-
- 移除已经安装的
psycopg2
- 移除已经安装的
-
-
-
- 移除
python-ldap
,gevent
和psutil
,这些库需要编译。
- 移除
-
-
-
- 添加
pypiwin32
,在Windows平台需要
- 添加
-
-
- 使用pip工具从命令行安装这些工具(替换
\YourOdooPath
你下载的Odoo目录)
- 使用pip工具从命令行安装这些工具(替换
C:\> cd \YourOdooPath
C:\YourOdooPath> C:\Python27\Scripts\pip.exe install -r requirements.txt
- Less CSS通过nodejs
-
- 在Linux,使用你的包管理安装nodejs和npm
警告:
在debian wheezy和Ubuntu 13.10之前,你需要安装nodejs
$ wget -qO- https://deb.nodesource.com/setup | bash -
$ apt-get install -y nodejs
在最新的debian(大于jessie版本)和Ubuntu(大于14.04版本)你需要npm包调用
node
(但是debian调用的为nodejs
)添加一个软链接
$ apt-get install -y npm
$ sudo ln -s /usr/bin/nodejs /usr/bin/node
* * 一旦npm安装完成,使用npm安装less:
$ sudo npm install -g less
* * 在OS X通过包管理程序([homebrew](http://brew.sh/),[macports](https://www.macports.org/))安装nodejs,之后安装less:
$ sudo npm install -g less
* *在Windows,[安装nodejs](http://nodejs.org/download/),重启(为了更新`PATH`),并安装less:
C:> npm install -g less
## 运行Odoo
一旦所有依赖都设置完毕,Odoo可以通过运行`odoo.py`启动。
>警告:
>商业版本,必须在你启动服务时指定`enterprise`插件文件夹。可以提供`enterprise`文件作为`addons-path`的参数。请注意`enterprise`目录必须在默认`addons`清单目录进行正确加载。
[Configuration](https://www.odoo.com/documentation/9.0/reference/cmdline.html#reference-cmdline)可以提供[command-line arguments](https://www.odoo.com/documentation/9.0/reference/cmdline.html#reference-cmdline),或者通过[configuration](https://www.odoo.com/documentation/9.0/reference/cmdline.html#reference-cmdline-config)。
配置必要命令:
* PostgreSQL的地址、端口号、用户名和密码
* Odoo默认[psycopg2`s defaults](http://initd.org/psycopg/docs/module.html):连接UNIX端口号为5432,正确的用户名并且没有密码。默认工作在Linux和OS X。Windows无法支持UNIX sockets所以无法工作。
* 自定义插件路径是默认的,可以载入你自己的模块
在Windows在典型执行odoo:
C:\YourOdooPath> python odoo.py -w odoo -r odoo --addons-path=addons,../mymodules --db-filter=mydb$
当`odoo`,是postgresql的用户名密码时,`../mymodules`目录w为插件目录,`mydb`为默认的db,服务器访问地址为localhost:8069
在Unix在典型方式执行odoo:
$ ./odoo.py --addons-path=addons,../mymodules --db-filter=mydb$
`../mymodules`目录w为插件目录,`mydb`为默认的db,服务器访问地址为localhost:8069