在Ubuntu 14.04 LTS 桌面版上部署 odoo 服务器

关键词:odoo OpenERP 部署 linux


这是笔者的第一篇技术博客,希望作为一个良好的开始,能在此和大家分享自己遇到的问题以及收获的经验。

 

最近由于实习的关系,接触到了odooOpenERP)的二次开发,希望能一边学习一边和大家分享经验,也算是督促自己学习的一种方式。

 

关于odoo的介绍就免了,也不是关心的重点,有需要的同学可以去自行搜索。

 

由于实习的地方是搞开源软件的,操作系统用的都是linux,所以整套odoo的系统都需要部署在linux上。因此这篇文章作为我的第一篇文章,就来说说如何在linux上部署odoo 8(貌似在windows上安装odoo非常简单的样子,要是搞不定的完全可以用windows的)。

 

(使用的系统是Ubuntu 14.04 Desktop LTS

 

我自己是照着公司老司机给发的教程安装的,原文作者为Alan Lord,地址:http://www.theopensourcerer.com/2014/09/how-to-install-openerp-odoo-8-on-ubuntu-server-14-04-lts/ 翻译者为 odoo中文社区 郑州-Dean。安装时有部分内容略有出入,在文中会标明。


步骤:

1. 安装ubuntu

2. 创建系统用户odoo

3. 安装postgreSQL

4. 安装py库以及wkhtmltopdf

5. 安装odoo

6. 配置odoo

7. 安装启动脚本

8. 测试服务器

9. 自动化odoo的启动关闭


 

第一步:安装ubuntu(这步没啥好说的 直接跳过)

 

第二步:创建一个系统用户来拥有odoo

 

运行

sudo adduser --system --home=/opt/odoo --group odoo


这句话执行之后,将为系统添加一个名为odoo的系统用户,并将其home目录设置为/opt/odoo 

这个用户名和home目录的位置都是可以自定义的,本文仅仅是举个例子,并不是说不按照这种方式就不能正常使用。不过原文作者人为,使用这种方式可以比较方便的操作。

系统用户将不能被用来直接进行登录,但是我们可以在必要的时候切换至该用户执行需要某些权限的操作。

当需要切换用户时候可以执行:

sudo su - odoo -s /bin/bash


输入完这个命令之后,系统会将当前用户切换为odoo

 

 

 

 

第三步:安装配置postgreSQL

 

打开终端 执行命令:

sudo apt-get install postgresql


当出现输入确认的时候请按便可安装完毕。

 

 

 

安装完postgreSQL之后需要配置系统的postgres账户的密码。这个账户将作为postgreSQL的数据库用户,同时也是系统账户而存在。

这里需要执行命令:sudo passwd postgres (也许这一步并不是必须的,原文中并没有为postgres账户设定密码的步骤,所以请各位酌情使用)

系统会提示你输入自己的密码,之后再为postgres账户 设定密码。设定完密码之后,

可以执行:sudo su - postgres 切换当前用户,

之后再输入:psql -version

如果成功输出了版本信息,则账户配置成功。

 


 

完成后退出至自己的账户(Ctrl + D 连打),

执行:sudo apt-get update

以及:sudo apt-get dist-upgrade

来更新系统的软件包。

 

更新完成之后,可以重启一下,使所有的更改都可以被应用

可以通过执行:sudo shutdown -r now 完成重启操作

 

接下来切换至postgres账户,

然后执行命令:createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo

执行之后,系统会提示你输入两次密码(为新账户设定密码)。这样系统变回创建一个名为odoo的数据库用户,odoo程序将以这个身份来访问数据库。

 

请注意 需要记住这里设定的密码,因为之后会用到它。

 

最后退出postgres账户。

 


 

第四步:安装所需的python库以及wkhtmltopdf(将html转换为pdf的插件)

 

Odoo是基于python的软件,ububtu系统自带python2.7的运行环境。但是如果想让odoo正常运行,还需要安装一些其它的运行库。

 

可以将如下语句保存为installLib.sh

sudo apt-get install python-dateutil python-decorator python-docutils python-feedparser python-gdata python-gevent python-imaging python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-passlib python-psutil python-psycopg2 python-pybabel python-pychart python-pydot python-pyparsing python-pypdf python-reportlab python-requests python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-werkzeug python-xlwt python-yaml

 

之后为其赋予可执行权限(如保存位置为/桌面的话 可以先执行命令:cd ~/桌面, 之后执行命令 chmod +x installLib.sh 便可为文件赋予可执行权限)

 

接下来执行命令 /bin/bash installLib.sh 系统会询问是否继续 选Y则会继续安装工作。


 

 

接下来安装wkhtmltopdf

 

执行命令:

wget http://sourceforge.net/projects/wkhtmltopdf/files/0.12.2.1/wkhtmltox-0.12.2.1_linux-wheezy-amd64.deb (命令中没有换行 wget之后打一个空格之后输入链接)

下载所需要的deb文件

(此处的下载链接有可能失效,若失效则请至:

http://sourceforge.net/projects/wkhtmltopdf

寻找最新的安装包,下载下来的deb可直接安装)

 

执行命令:sudo dpkg -i wkhtmltox-0.12.2.1_linux-wheezy-amd64.deb 进行解包

(此处有可能因为某些原因导致系统提示缺少xx库,导致没能成功安装的情况,比如笔者提示了以下错误

 

这个时候可以使用sudo apt-get install (缺少的库的名字,比如这里就是xfonts-75dpi) 将其缺少的库安装完整后 再次执行dpkg命令即可)

 

接下来 复制文件至/usr/bin

执行:sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf

 

之后,更改文件所有这为root用户,并增加可执行属性

sudo chown root:root /usr/bin/wkhtmltopdf

sudo chmod +x /usr/bin/wkhtmltopdf 

 

接下来我们测试一下是不是安装完成:

在保证网络连接的情况下,

执行以下命令:wkhtmltopdf www.baidu.com ~/baidu.pdf

如果能成功输出pdf文件至home目录则意味着安装成功

 

至此,odoo 8 需要的依赖遍已经安装完毕。

 

第五步 安装odoo服务器

 

首先安装git软件:sudo apt-get install git git是什么就不用介绍了吧…… Odoo的代码在github上面有,这里面就是要clone下来git上面的odoo的代码)

 

切换到odoo用户:sudo su - odoo -s /bin/bash

 

接下来使用git软件从github网站下载一套8.0分支的代码:

执行:git clone https://www.github.com/odoo/odoo --branch 8.0 --single-branch /opt/odoo/server 命令

后面的路径将是你的代码的根路径(原文中使用的是.来表示当前路径 但是笔者在clone的时候总是会出现如下错误:

 

 也许是因为有什么隐藏文件啥的吧 笔者也没有仔细看 还是建议clone到一个单独的目录,以免出现混乱。

整个过程可能会下载个几百M的文件,根据网速不同需要的时间也不一样。

 

当下载结束之后,退出odoo用户。

(需要注意的是 下载完毕之后,最好看看文件是不是真的下下来了 笔者在单位第一次安装的时候,看他下了半天文件,最后一到下载目录一看居然是空的。现在怀疑可能是当时路径设置有问题,所以下载完之后请一定自行确认一下)

 

第六步 配置odoo

Odoo有自己的默认配置文件,在这里可以进行一些自定义的改动,让odoo可以在系统上更好的运行。

 

Odoo默认的配置文件的位置是(odoo根目录)/debian/openerp-server.conf,为了保证之后的更改不会直接影响系统文件,我们先将其拷贝到/etc文件夹下:

执行:

sudo cp /opt/odoo/server/debian/openerp-server.conf /etc/odoo-server.conf

 

接下来更改其所有权及权限

sudo chown odoo: /etc/odoo-server.conf

sudo chmod 640 /etc/odoo-server.conf

以上命令将使此文件被odoo用户及用户组所有,且只有odoo用户和root用户可以读取。

 

接下来用文本编辑器编辑它,可以使用vimnanogedit等文本编辑器。笔者作为初学者,觉得使用gedit比较方便(毕竟有图形界面),所以在这里以gedit为例。

 

执行命令:sudo gedit /etc/odoo-server.conf, 会打开如下窗口:

 


 

将其中的db_password一行等号之后的部分改为之前配置postgreSQL时候输入的密码。

然后将addons_path一行等号之后的部分改为 /opt/odoo/addons

接下来再在文件末尾添加一行

Logfile = /var/log/odoo/odoo-server.log

保存退出

 

接下来尝试启动odoo服务器,看其运行是否正常

切换到odoo用户:sudo su - odoo -s /bin/bash

然后执行 ~/server/openerp-server

如果命令行界面没有出现error信息,就打开浏览器,输入地址127.0.0.1:8069,看是否能出现odoo的界面,如下图:

 

如果能看到这个的话,说明你之前的安装是成功的,接下来我们来做最后一步。

停止odoo服务器只需要按Ctrl + C即可。

哦对了,别忘了接下来操作之前还要先退出odoo用户。

 

第七部:安装启动脚本

Odoo的启动过程比较复杂,不过可以通过一个脚本来进行控制。Odoo自带了一个现成的脚本,不过笔者在并没有找到,所以咱们直接下载原文作者修改好的脚本文件。

执行:

wget (这里也是个空格而不是回车)      http://www.theopensourcerer.com/wp-content/uploads/2014/09/odoo-server

 

之后拷贝到/etc/init.d目录下

Sudo cp ./odoo-server /etc/init.d/odoo-server

 

修改所有者和权限:

sudo chmod 755 /etc/init.d/odoo-server

sudo chown root: /etc/init.d/odoo-server

 

打开文件:sudo gedit /etc/init.d/odoo-server

出现如下文件内容:

 


 

找到其中“DAEMON”一行,将等号后内容改为自己刚才用来启动odoo的程序的路径,其余的根据自己情况酌情修改,一般情况下用默认的即可。

 

接下来我们创建日志目录

sudo mkdir /var/log/odoo

Sudo chown odoo:root / var/log/odoo

 

好了 配置基本就算完成了

 

第八步:测试服务器

 

启动odoo服务器 只需要输入 sudo /etc/init.d/odoo-server start

 

查看日至文件可以使用命令 less /var/log/odoo/odoo-server.log

 

停止只需输入 sudo /etc/init.d/odoo-server stop 即可

 

(在这里笔者得说一下,照着原文的做法,笔者使用脚本启动之后,查看日志中出现了很多错误信息,打开页面也会显示500错误,说明可能配置还是有问题。不过依旧可以在使用odoo用户登录之后 使用~/server/openerp-server 或者 python ~/server/odoo.py来启动。这种情况下,如果想加入自定义插件目录的话 只需要在后面加上参数 --addons-path (目录名)即可

 

第九部:自动化odoo的启动关闭

 

执行命令:sudo update-rc.d odoo-server defaults 即可

 

此时如果你重新启动的话,odoo服务应该已经在运行了。可以通过执行命令 ps aux | grep odoo 来查看信息。

 

好了,就说这些吧,接下来笔者会开始学习模块开发,希望能和大家继续分享经验。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值