第二章 Odoo的安装与部署
Odoo的官方推荐是Ubuntu Server,所以,我们这里也以Ubuntu Server为例。当然,其他系统也是可以的,只不过安装起来相比Ubuntu 会显得稍微折腾,限于篇幅,本书不对其他系统的安装部署进行介绍,如有需要可以参考我的博客(http://www.cnblogs.com/kfx2007)或者中文论坛(shine-it.net)。
Odoo使用的python环境是2.7,虽然python目前的版本号已经到了3.0但由于2和3的版本跨度太大,Odoo目前不支持3.0下的开发运行,所以,在安装部署前,请先确保系统中的python默认环境是2.7,查看方法如下:
Python的环境好了,接下来我们就开始我们的安装过程。
安装的方式有两种,第一种,是通过Deb包进行安装。第二种,是通过github上托管的源码进行安装。
第一种安装方式
- 使用Vim编辑Ubuntu的Source文件,默认路径在/etc/apt/sources.list
然后在文件的末端添加如下一行:
deb http://nightly.odoo.com/8.0/nightly/deb/ ./
- 使用sudo apt-get update 更新源列表,此过程中可能碰到key验证失败的问题,可到https://nightly.odoo.com/odoo.key 下载公用key ,然后使用 sudo apt-key add 命令添加key:
sudo apt-key add odoo.key
- 更新完源,就可以使用apt-get命令进行安装了:
sudo apt-get install odoo
等待安装完成即可。(如果碰到网络超时问题,多半是因为GFW的问题,这个时候,把Ubuntu的源更换为国内源的镜像就可以了,推荐的源镜像有阿里云、163等等)
4. 到这步Odoo应该就安装到系统上了。打开Chrome或者Firefox,输入http://localhost:8069,看是否能够正常访问安装好的Odoo。
5. 常见问题:
服务器内部错误(Internal Server Errror):这只是个笼统的错误页面,并没有提供任何有效的信息。这时候你需要去服务器上查看日志查找具体的错误信息。日志位置默认在/var/log/odoo/odoo-server.log
第二种安装方式
1. 使用git工具将源码从github上克隆下来:
sudo git clone https://github.com/odoo/odoo
2. 代码下载下来之后,进入文件夹使用如下命令进行安装,由于GFW的原因,很多插件自动安装不上,需要手动安装,这也是源码安装最为繁琐的地方,有耐心的同学请慢慢折腾。
sudo python setup.py install
3. 所有插件安装完成后,即可使用如下的命令启动:
./openerp-server -r odoo --addons-path='./addons'
linux下可以封装到shell命令中,免去了每次启动都要输这么长的命令的繁琐步骤。当然上面也可以通过 -c 参数指定配置文件。
- 使用supervisor值守服务
主要用在服务器上,请移步 http://my.oschina.net/wangbuke/blog/67431
数据库的安装与配置
Odoo 使用Postgresql数据库 ,相对小众的数据库,安装方法参见官网:http://www.postgresql.org/. Ubuntu 下可以使用apt-get方式快速安装:
sudo apt-get install postgresql-9.3
下面主要讲一下postgresql的配置:
- Odoo在启动过程中报错,查看日志,没有用户 odoo/openerp,需要手工创建用户并赋予管理员权限:
sudo su postgres #切换到postgres用户
psql
create user odoo with superuser
- 数据库的端口在非本地访问不了
没有配置启用监听端口,找到/etc/postgres/9.x/main/postgresql.conf,去掉 listen_addresses一行的注释,重启服务
- 远程可以访问数据库,但总是提示认证错误
编辑/etc/postgres/9.x/main/pg_hba.conf文件,针对不同的IP号段设置不同的访问权限,peer,md5,trust.
Odoo的配置
Odoo在Ubuntu 14.04默认的安装路径在 /usr/lib/python2.7/dist-packages/openerp目录下,对应的addons-path路径在/usr/lib/python2.7/dist-packages/openerp/addons
Odoo的配置文件在 /etc/odoo/odoo-server.conf
服务的启动和关闭可以使用系统的命令格式: sudo service odoo start/stop/restart
Odoo的配置文件是openerp-server.conf,内容如下:
addons_path:指定多个addons 的文件夹的路径,建议不要把自己开发的模块跟系统的放在一起,最好建立自己的文件夹,然后添加到该配置文件中。
admin_passwd:管理密码
db_user:使用哪个账号访问数据库
db_port:端口号,默认是8069
数据库的创建、备份与还原
8.0的管理地址在 http://localhost:8069/web/database/manager#action=database_manager
在此界面,你可以对数据库进行创建、备份与删除的操作:
主控密码就是前边所说的配置文件中的密码。
当然,可以借助第三方模块实现自动备份功能,模块地址:
https://github.com/Yenthe666/auto_backup/tree/8.0/auto_backup
笔者提供一种不利用第三方模块的方法,参见博客:
http://www.cnblogs.com/kfx2007/p/4177479.html
这种方法是借助Linux定时计划任务完成的,仅当做一种实现思路。
第二章 Odoo的安装与部署的更多相关文章
- 第二章 Odoo 12开发之开发环境准备
在更深入了解 Odoo 开发之前,我们应配置好开发环境并学习相关的基础管理任务.本文中,我们将学习创建 Odoo 应用所需用到的工具和环境配置.这里采用 Ubuntu 系统来作为开发服务器实例的主机, ...
- 第十四章 Odoo 12开发之部署和维护生产实例
本文中将学习将 Odoo 服务器作为生产环境的基本准备.安装和维护服务器是一个复杂的话题,应该由专业人员完成.本文中所学习的不足以保证普通用户创建应对包含敏感数据和服务的健壮.安全环境. 本文旨在介绍 ...
- Web自动化测试框架Watir(基于Ruby) - 第1章 Windows下安装与部署
一.前言 Web自动化测试一直是一个比较迫切的问题,对于现在web开发的敏捷开发,却没有相对应的敏捷测试,故开此主题,一边研究,一边将Web自动化测试应用于工作中,进而形成能够独立成章的博文,希望能够 ...
- Node入门教程(3)第二章: Node 安装
Node 安装 官网下载地址: https://nodejs.org/en/download/ 安装方式 windows 下安装 建议直接选择:Windows Installer (.msi)下载进行 ...
- 第二章 伪分布式安装hadoop hbase
安装单机模式的hadoop无须配置,在这种方式下,hadoop被认为是一个单独的java进程,这种方式经常用来调试.所以我们讲下伪分布式安装hadoop. 我们继续上一章继续讲解,安装完先试试SSH装 ...
- 第二章 consul的安装和启动
安装环境: mac:64bit(查看mac位数:打开终端-->"uname -a") consul_0.6.4_darwin_amd64.zip和consul_0.6.4_w ...
- [Maven实战-许晓斌]-[第二章]-2.3安装目录分析
bin boot conf settings.xml非常重要 这个是maven安装包自带的settings.xml 通常我们会放在习惯路径,C:\Users\admin\.m2\下面 即 用户路径\ ...
- 第二章 MySQL的安装与配置(待续)
·······
- 第十三章 Odoo 12开发之创建网站前端功能
Odoo 起初是一个后台系统,但很快就有了前端界面的需求.早期基于后台界面的门户界面不够灵活并且对移动端不友好.为解决这一问题,Odoo 引入了新的网站功能,为系统添加了 CMS(Content Ma ...
随机推荐
- sublime text 2中Emmet8个常用的技巧
原文链接:http://blog.csdn.net/lmmilove/article/details/9181323 因为开始做web项目,所以最近在用sublime编辑器,知道了一个传说中的emme ...
- this和super
1.this * 每个类的每个非静态方法(没有被static修饰)都会隐含一个this引用名称,它指向调用这个方法的对象. * 当在方法中使用本类的属性时,都会隐含地使用this名称,当然也可以明确指 ...
- Nginx [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
使用命令关闭占用80端口的程序 sudo fuser -k 80/tcp
- Swift3.0语言教程使用Unicode范式标准化获取字符串
Swift3.0语言教程使用Unicode范式标准化获取字符串 Swift3.0语言教程使用Unicode范式标准化获取字符串,在NSString中可以使用4个属性去使用Unicode范式标准化获取字 ...
- iOS开发实用干货——强化你的Xcode控制台
f(x) 郑秀晶程序员不要整天看代码,偶尔也要看看风景?? www.90168.org先上一张我的Xcode控制台的图片让你们感受一下 酷炫控制台 是不是觉得很酷?不过仅仅是酷还是远远不够的,当你点击 ...
- HTML5中createPattern()
定义和用法 createPattern() 方法在指定的方向内重复指定的元素. 元素可以是图片.视频,或者其他 <canvas> 元素. 被重复的元素可用于绘制/填充矩形.圆形或线条等等. ...
- javaScript入门第一天
JavaScript提供七种不同的data types(数据类型),它们是undefined(未定义), null(空), boolean(布尔型), string(字符串), symbol(符号), ...
- Eclipse: Resource is out of sync with the file system when publishing to tomcat server on Eclipse
Link: http://stackoverflow.com/questions/4343735/avoiding-resource-is-out-of-sync-with-the-filesyste ...
- BZOJ2080 : [Poi2010]Railway
如果存在$k$使得$i<j<k$,且$a[k]<a[i]<a[j]$,那么$i$和$j$不能在一个栈中. 设$b[i]=\min(a[i..n])$,如果$b[j]<a[ ...
- HDU5823 : color II
每种颜色的点集肯定是独立集,因此可以通过$O(2^n)$枚举每个集合判断出每个集合是否只需要一种颜色即可染色. 设$f[i][S]$表示$i$种颜色覆盖$S$这个集合的方案数,假定两个集合可以相交,那 ...