sudo apt-get install -f openerp python
便可。这种方式会自动安装依赖包,固然postgresql还要先装好。nginx
也能够下载deb包用dpkg -i安装。找到的引文使用bzr下载branch,发现下载addons老是出错。我改造一下,直接用源码安装成功。git
打开防火墙80、22端口,我是本身测试用的,索性把防火墙关了。web
安装用到的软件sql
- $ sudo apt-get install postgresql-9.3 nginx uwsgi
安装必要的依赖包:数据库
- $ sudo apt-get install python-dev build-essential postgresql libpq-dev uwsgi nginx bzr git graphviz ghostscript postgresql-client libxml2-dev libxslt1-dev libjpeg62-dev zlib1g-dev python-virtualenv python-pip gettext libldap2-dev libsasl2-dev uwsgi-plugin-python python-lxml python-pypdf
最后两个,lXml和pyPdf是我添加的。我是先经过deb方式安装再卸载,全部依赖包都装好了。vim
- $ sudo mkdir /var/www
- $ sudo chown www-data:www-data /var/www ; 建立/var/www目录并将它的全部权给www-data用户
- $ cd /srv
- $ sudo mkdir openerp ; 咱们在/srv/openerp目录下安装
- $ sudo chown MY_USERNAME openerp ; MY_USERNAME是本身的用户名,好比个人是<span>mack</span>
- $ cd openerp
- ; $ bzr branch lp:openerp-web
- ; $ bzr branch lp:openobject-server server ; 下载到server目录,和直接下载更名方式一致
- ; $ bzr branch lp:openobject-addons
- ; 原文经过bzr下载,上面已经解释,有问题;我直接下载<a target="_blank" href="http://nightly.openerp.com/trunk/nightly/src/openerp-8.0dev-latest.tar.gz">源码包</a>
- $ wget http://nightly.openerp.com/trunk/nightly/src/openerp-8.0dev-latest.tar.gz
- $ tar -xvf openerp-8.0dev-latest.tar.gz
- ; 解压缩
- $ mv openerp-8.0dev-20140314-000102(解压缩出来的当前版本名字) server
- ; 改个名字方便些,新版本也能够直接用cp复制到server就升级了。由于下载须要时间,能够开另一个tty终端作下面的事情。
- $ sudo -u postgres -s createuser openerp -P
- # ENTER DESIRED DB PASSWORD
- ; 建立postgres数据库中的用户openerp,#后面提示输入密码,有两次。若是已经有了,也能够用原来的用户,记得和下文数据库配置对应就好。
- $ sudo -u postgres -s createdb openerp_test -O openerp
- ; 建立openerp_test数据库。若是不建立也能够,安装好以后用OpenERP本身的数据库管理功能新建数据库。
- ; $ virtualenv --no-site-packages env
- ; $ source env/bin/activate ; 这两句是在虚拟环境中进行配置,我也搞不懂,我在实机上装就不须要了。
- $ pip install pypdf
- $ pip install lxml ; 原文漏了这句,搞了我很久。
确认下载解压更名完成bash
- $ cd server
- $ python setup.py develop
- ; 其实这一步也是配置环境,若是缺乏依赖包会自动下载,或者根据提示本身安装
- ; $ sudo ln -s /srv/openerp/openerp-web/addons/* /srv/openerp/server/openerp/addons/
- ; $ sudo ln -s /srv/openerp/openobject-addons/* /srv/openerp/server/openerp/addons/
- ; 原文是分开的三个文件夹,我这里只有一个包,就不须要这两句
建立并编辑wsgi-openerp.py文件:app
- import openerp
- openerp.multi_process = True
- openerp.conf.server_wide_modules = ['web']
-
- conf = openerp.tools.config
- conf['addons_path'] = '/srv/openerp/server/openerp/addons'
- conf['db_name'] = 'openerp_test'
- conf['db_host'] = 'localhost'
- conf['db_user'] = 'openerp'
- conf['db_port'] = 5432
- conf['db_password'] = 'MY_DB_PASSWORD'
-
- application = openerp.service.wsgi_server.application
- openerp.service.server.load_server_wide_modules()
建立并编辑openerp.conf文件,即openerp的配置文件。这种方式直接把配置加入运行环境了。socket
- [options]
- addons_path=/srv/openerp/server/openerp/addons
- db_name=openerp_test
- db_host=localhost
- db_user=openerp
- db_port=5432
- db_password=MY_DB_PASSWORD # 注意数据库名、用户名、密码都要对应
新建一个config目录,用来放置uwsgi和nginx配置文件:
而后在config目录下新建并编辑uwsgi-openerp.ini文件
- $ vim config/uwsgi-openerp.ini
- [uwsgi]
- chdir=/srv/openerp/-server/
- uid=www-data
- gid=www-data
- # virtualenv=/srv/openerp/env ; 我没有使用虚拟环境,因此注销这句
- socket=/srv/openerp/uwsgi.sock
- wsgi-file=wsgi-openerp.py
- master=True
- vacuum=True
- max-requests=5000
- buffer-size=32768
- $ vim config/nginx-openerp.conf
- server {
- listen 80;
- server_name MY_HOSTNAME; # 主机名,能够随便填,若是有机器域名就填完整域名
- client_max_body_size 50M;
- keepalive_timeout 120;
-
- location / {
- include uwsgi_params;
- uwsgi_read_timeout 300;
- uwsgi_pass unix:/srv/openerp/uwsgi.sock;
- }
- }
若是已经配置了nginx,那么要注意端口配置区分开,或者使用虚拟目录,或者用域名区分。
把配置文件关联起来:
- $ sudo ln -s /srv/openerp/server/config/uwsgi-openerp.ini /etc/uwsgi/apps-enabled/openerp.ini
- $ sudo ln -s /srv/openerp/server/config/nginx-openerp.conf /etc/nginx/sites-enabled/openerp
将/etc/nginx/nginx.conf中的这句“server_names_hash_bucket_size 64”的注释去掉,若是有的话:)。
下面配置一下:
- $ sudo chown -R www-data:www-data /srv/openerp
- $ sudo su www-data -s /bin/bash
- ; 进入www-data用户环境
- $ cd /srv/openerp/openobject-server/
- ; $ source ../env/bin/activate 在虚拟环境下须要
- $ ./openerp-server -c openerp.conf -d openerp_test -u all --stop-after-init
- ; 这是把配置信息写入OpenERP,若是运行中有红色的ERROR提示,就说明失败了,须要再检查。
- ; 配置完退出www-data用户环境,ctrl-D或者
- $ exit
最后重起服务
- $ sudo service uwsgi restart