在Ubuntu 14.04LTS版上以git方式源码安装odoo8.0(新手教程)

时间:2021-02-25 11:18:23

一、配置Ubuntu系统环境


1 . 更新软件源信息

sudo apt-get update

2 . 更新依赖包

sudo apt-get dist-upgrade       

3 . 重启服务器,以使改变的内容更新

sudo shutdown -r now      

4 . 安装openssh-server,并查看本机各端口的网络连接情况

sudo apt-get install openssh-server 
sudo /etc/init.d/openssh start         
sudo update-rc.d  ssh defaults                            #设置ssh为开机自启动 
sudo ps auxf | grep ssh                                   #查看ssh进程

5 . 创建一个系统用户odoo,将来让他拥有Odoo程序的权限并运行它

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

注:上述命令中指定并创建了odoo 用户的”home”, home目录为/opt/odoo,这里就是我们将要把odoo程序代码存放的位置

6 . 将把你目前的终端登录切换到odoo用户,并且使用/bin/bash这个shell。这命令运行后会自动把你当前所在的目录切换到odoo用户的home目录下:/opt/odoo

sudo su - odoo -s /bin/bash     

7.可以用以下命令查看当前目录:

pwd                                                       #常用命令 

8 . 命令离开odoo用户的shell,回到你登录所用的用户

exit     

9 . 安装和配置数据库服务器PostgreSQL(目前最新是9.3.5版)

sudo apt-get install postgresql –y    

10 . 为PostgreSQL数据库添加并配置odoo用户
首先我们要切换到postgres用户,它是PostgreSQL默认的初始用户,以它的身份操作我们就有配置数据库的权限否则会报错说角色不存在:

sudo su – postgres       

注:Rona@rona-pc:~ $ sudo su – postgres
没有用户“–”的密码项

11.以postgres的身份创建一个新的数据库用户odoo,odoo程序将以它的身份访问postgreSQL数据库,来创建和删除数据库文件

createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo  

12 . 安装postgreSQL 9.3及创建用户并设置密码;

createuser --createdb --username postgres --no-createrole --no-superuser  --pwprompt odoo  

注:如果忘记odoo用户的密码,可以切换到root用户,输入passwd odoo来修改。

13.退出该用户

exit     

14 . 为Ubuntu服务器安装Python运行库

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 wkhtmltopdf

注:Odoo8.0版本依赖的python运行库与OpenERP7.0版本所依赖的有些不同

15 . Odoo8.0版改用wkhtmltopdf来输出pdf,因此要下载自己系统对应版本的wkhtmltopdf 并安装:(该步骤易出错,要认真)具体步骤是复制以下网址到浏览器中打开,选择匹配的wkhtmltopdf,并复制新网址,重新输入wget+copy下来的网址。

wget http://sourceforge.net/projects/wkhtmltopdf/files/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb    

注:下载完成后,用ls命令查看下载的文件名,如果不是wkhtmltox-0.12.1_linux-trusty-amd64.deb ,可用用“mv 原文件名 新文件名” 命令修改为wkhtmltox-0.12.1_linux-trusty-amd64.deb
(特别提醒,在odoo8.0中,有个很坑的地方就是你安装成功后odoo会出现报表无法打印或第二页页面重叠问题,那一定是你安装的wkhtmltox版本不正确,不能安装最新版,改为以上的0.12.1版本即可!)

16 . 安装运行wkhtmltox-0.12.1_linux-trusty-amd64.deb

sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb   

注:如果此处提示安装部分软件不成功,要手动安装不成功的软件

17.安装完成后将可执行文件复制到 usr/bin 中

sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf                    
sudo cp /usr/local/bin/wkhtmltoimage /usr/bin/wkhtmltoimage 

注: 因为跑 odoo 会用一个 odoo 的用户权限来执行,如果不放在 /usr/bin 目录下打印报表会出现找不到 wkfhtmltopdf 指令之类的错误)相当于 Windows 的环境变量。如果不想放置再 /usr/bin 目录下你也可以像绿色版提供的那样自己写一个启动脚本,自己设定下指向该程序的 PATH 变量。也就是说实现共享的功能。

18 . 更改所有者为root用 户,并增加可执行属性

sudo chown root:root /usr/bin/wkhtmltopdf                                 
sudo chmod +x /usr/bin/wkhtmltopdf                                      
sudo chown root:root /usr/bin/wkhtmltoimage                              
sudo chmod +x /usr/bin/wkhtmltoimage   

19 . 安装中文字体:(用于报表打印显示)

sudo apt-get install ttf-wqy-zenhei                                       
sudo apt-get install ttf-wqy-microhei    

二、安装odoo服务器


1.安装 git,然后从Github上安装Odoo

sudo apt-get install git –y      

2 . 切换为odoo用户(此时可用pwd查看当前目录)

sudo su - odoo -s /bin/bash   

3 .从Github上安装Odoo

git init                                                  #初始化Git仓库 
git clone https://www.github.com/odoo/odoo --branch 8.0 --single-branch . 
chown -R odoo: *                                          #权限为只读

注:下载时会发现不能保存到当前目录,可以先下载至指定目录再把配置文件移动到该目录下,见步骤24,只要把命令最末尾的“.”去掉就可以顺利下载了,如下所示
git clone https://www.github.com/odoo/odoo –branch 8.0 –single-branch

4 . 安装OE服务器——退出当前shell

exit                

5 . 安装OE服务器——移动odoo的配置文件到指定位置

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

6 . 配置odoo——更改它的所有权和许可:

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

注:上述命令让这个文件被odoo用户和用户组拥有,并且只有odoo用户和root用户可以读取

7 . 配置odoo——编辑 /ect下的odoo-server.conf配置文件,如果没有安装vim编辑器,可用 sudo apt-get install vim来安装。

sudo vi  /etc/odoo-server.conf                      

修改odoo-server.conf中的三个重要参数:db_password、addons_path(=/opt/odoo/addons)和logfile(=var/log/odoo/odoo-server.log),按ESC键,输入:wq!保存退出。

8 . 在上述编辑中,配置文件里面指定了odoo 服务器的日志文件存储位置,所以我们得创建那个目录,这样odoo服务器就能往里面写日志了,同时我们还得让这个目录能够被odoo用户读写:

sudo mkdir /var/log/odoo                                              
sudo chown odoo:root /var/log/odoo  

注:执行完毕之后最好要用ls –l /var/log查看目录是是否存在日志文件。若存在,则说明操作成功。

三、Odoo系统配置与测试


1 . 测试odoo服务器是否能正常启动
先切换到odoo用户,并启动Odoo服务

sudo su – odoo -s /bin/bash                                             
sudu /opt/odoo/openerp-server    start       

注:此时可以在浏览器中输入访问网址,测试是否能显示Odoo的数据库管理界面,如果可以,说明你配置成功了。(虽然版本升级了,但是在日志里面仍然把这程序叫OpenERP 而不是 Odoo)按ctrl+c停止,然后exit,退出。

2 . 更换路径到用户的home目录下,下载最新的odoo启动脚本。(也可以自己将原有的openerp-server文件自行配置成我们需要的odoo-server)

cd ~                                                      #返回用户home目录 
wget http://www.theopensourcerer.com/wp-content/uploads/2014/09/odoo-server  
sudo vi odoo-server  

查看路径是否正确,根据实际情况调整,本次实践是要新增一个odoo的子目录。

DAEMON=/opt/odoo/odoo/openerp-server 

3 . 将下载到的这个启动脚本复制到/etc/init.d/并将其重命名为odoo-server

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

4 . 然后把它改成可执行文件,权限由root用户拥有:

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

5 . 启动/关闭Odoo

sudo /etc/init.d/odoo-server start/restart                                           
sudo /etc/init.d/odoo-server stop       

当odoo服务器启动时,可以通过查看日志文件,看服务器是否已经启动.(由于文件过长,我们可以选择只看文件最后十行。)

tail –f var/log/odoo/odoo-server.log                                      
ctrl+C                                                    #退出 

注:也可以用less /var/log/odoo/odoo-server.log 查看整个日志文件,要退出less命令的查看界面,请按q键。

6 . 自动化Odoo的启动

sudo update-rc.d odoo-server defaults                                   

7 . 更新git代码

sudo su – odoo –s /bin/bash                               #切换用户为odoo用户 
sudo cd /opt/odoo/odoo/                                       #进入odoo的下载位置
git pull                                                  #更新git库

8 . 重启ubuntu系统,查看8069端口是否开启,一切无误后完成配置。

netstat –ntlp                                                                

备注:如果你想在win上源码安装odoo,也是很容易的,请参考: win上源码安装odoo