谈OpenERP部署环境操作步骤

Odoo,OpenERP中文网 / 2013-12-06

一、系统基本配置:

1 、操作系统: CentOS 5.6

2 、磁盘划分:

/          -----------> 100G

/usr/local -----------> 200G

/home      -----------> 50G

/opt       -----------> 100G

swap       -----------> 10G

3 、数据库:  postgresql-9.1.2(OpenERP6.0需要postgresql-8.2版本或者以上)

4、 Python:  Python 2.6(OpenERP6.0需要Python2.5版本或者以上)

二、创建用户openerp(用于启动OpenERP的用户)

三、安装,配置数据库(postgresql):

------------------------------------------------------------------------------

1 、安装:

# yum install postgresql postgresql-server

# yum install postgresql-devel (需要)

2、配置:

1 、设置服务开机自动启动:

# chkconfig postgresql on

2 、启动服务:

# /etc/init.d/postgresql start

3、 添加openerp用户:

# su - postgres

-bash-3.2$ createuser --no-superuser --createdb --no-createrole \

--login --pwprompt --encrypted

由于CentOS 5.6默认的postgresql为8.1.23版本,是不符合要求的,所以需要自己手动编译

下载postgresql-9.1.2

系统需求确认:

make 3.80版本或者以上

C compiler

tar gzip bzip2

readline readline-devel

zlib zlib-devel

full Perl installation, including the "libperl" library and the header files

安装:

解压缩postgresql-9.1.2.tar.bz2($POSTPATH)

# useradd postgres

# cd $POSTPATH

# ./configure

# make

# make install

# chown -R postgres:postgres /usr/local/pgsql

# su - postgres

$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data   # 初始化数据库

$ vim /usr/local/pgsql/data/postgresql.conf(根据需要)

去掉 listen_addresses 前面的注释并设置参数为 *

去掉 port 前面的注释

$ vim /usr/local/pgsql/data/pg_hba.conf(根据需要)

$ /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data

或者

(/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start) # 启动服务器

$ /usr/local/pgsql/bin/createuser --no-superuser --createdb --no-createrole --login --pwprompt --encrypted (添加用户)

# ln -s /usr/local/pgsql/bin/psql /usr/bin/psql(创建软链接)

$ psql (登录)

设置自动启动脚本

# cp /home/openerp/postgresql-9.1.2/contrib/start-scripts/linux /etc/init.d/postgres

# chomd +x /etc/init.d/postgres

# service postgres start (启动)

# chkconfig postgres on(开机自动启动数据库)

四、 安装Python 2.6

CentOS 5.6默认的Python版本为2.4的,所以需要自己手动安装Python

1 、下载源码

ython-2.6.tar.bz2

2 、安装需要的库

# yum install sqlite-devel openssl-devel bzip2-devel gdbm-devel readline-devel \

ncurses-devel libxml2-devel libxslt-devel

3、 解压缩,安装

$ tar jxvf Python-2.6.tar.bz2

$ cd Python-2.6

$ ./configure --prefix=/opt/apps/python2.6

$ make

$ make install

$ sudo ln -s /opt/apps/python2.6/bin/python /usr/bin/python2.6   #创建链接

4、安装easy_install

1) 下载ez_setup.py

2)安装:

$ python2.6 ez_setup.py

$ sudo ln -s /opt/apps/python2.6/bin/easy_install /usr/bin/easy_install2.6

五、将/opt目录改为openerp拥有(openerp用户使用)

# chown openerp:openerp /opt/

# su - openerp

$ mkdir /opt/apps  (用于存放OpenERP应用)

六、安装OpenERP需要的Python库

$ easy_install2.6 lxml

$ easy_install2.6 psycopg2

$ easy_install2.6 pyaml

$ easy_install2.6 reportlab

$ easy_install2.6 mako

$ easy_install2.6 pil

$ easy_install2.6 cherrypy

$ easy_install2.6 formencode

$ easy_install2.6 simplejson

$ easy_install2.6 babel

$ easy_install2.6 pytz

$ easy_install2.6 python-dateutil

七、启动OpenERP:

$ python2.6 /opt/apps/OpenERP/openerp-server/bin/openerp-server.py --db_user=openerp \

--db_password=openerp

$ python2.6 /opt/apps/OpenERP/openerp-web/openerp-web.py

安装OpenERP(Server端):

$ cd /opt/apps/OpenERP/openerp-server/

$ sudo python2.6 setup.py install

# ln -s /opt/apps/python2.6/bin/openerp-server /usr/bin/openerp-server

$ openerp-server (启动)

安装OpenERP(Web端):

$ cd /opt/apps/OpenERP/openerp-web/

$ sudo python setup.py install

# ln -s /opt/apps/python2.6/bin/openerp-web /usr/bin/openerp-web

$ openerp-web

具体用法:

$ openerp-server &

$ openerp-web &

上述命令如果是用ssh启动的话,会出现问题(ssh断开连接的时候,相应的开启的服务也会关闭),解决方案:

#nohup program &(可以保证关闭ssh后,ssh开启的服务依旧运行),即:

$ nohup openerp-server &

$ nohup openerp-web &

八防火墙设置(开通8080访问的端口)

1 、安装iptables

# yum install iptables

2、初始化iptables

# iptables -F

3、定制过滤规则

# vim /etc/sysconfig/iptables

*filter

:INPUT ACCEPT [0:0]        # 定义了内建的INPUT链

:FORWARD ACCEPT [0:0]      # 定义了内建的FORWARD链

:OUTPUT ACCEPT [0:0]       # 定义了内建的ACCEPT链

:RH-Firewall-1-INPUT - [0:0]  # 创建一个被称为RH-Firewall-1-INPUT的新链

-A INPUT -j RH-Firewall-1-INPUT   # 这条规则将添加到INPUT链上,所有发往INPUT链上的数据包将跳转到RH-Firewall-1链上

-A FORWARD -j RH-Firewall-1-INPUT

-A RH-Firewall-1-INPUT -i lo -j ACCEPT   # 这条规则将被添加到RH-Firewall-1-input链,他可以匹配所有的数据包,其中

# 流入接口(-i)是一个环路接口(lo), 匹配这条规则的数据包将全部通过(ACCEPT),

# 不会再使用别的规则来和它们进行比较

-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j DROP  # 拒绝所有的icmp包-p后是协议如:icmp, tcp, udp。端口是

# 在-p后面--sport源端口,--dport目的端口。-j指定数据包

# 发送的

# 接受下面的防火墙设置

# -m state --state ESTABLISHED,RELATED这个条件表示所有处于 ESTABLISHED或者 RELATED状态的包,策略都是接受的。

# -m state --state NEW 这个条件是当connection的状态为初始连接(NEW)时候的策略

-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

# 拒绝所有的

-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

COMMIT

4 、让规则生效

# /etc/init.d/iptables restart

5、测试通过

python erp操作_谈OpenERP部署环境操作步骤相关推荐

  1. mysql 浏览器操作_火车浏览器脚本编辑器操作MYSQL数据库

    火车浏览器脚本编辑器操作数据库 方便的数据管理,如果火车浏览器脚本调用本地文件夹TXT文本,始终觉得有点麻烦: 1.当多个脚本同时使用一个文件夹下文本时,麻烦 2.已发布和未发布,区分不方便,如果本地 ...

  2. java pv操作_理解同步的PV操作

    PV操作是Edsger Dijkstra提出的一种经典的解决同步不同执行线程的问题的方法,这种方法是基于一种叫信号量的特殊变量来实现的. 简单理解为就是通过共享变量+信号量实现的一种同步机制,其应用与 ...

  3. 用于python环境下的数据操作_数据分析(一):环境搭建,以及初步操作文件

    1.准备工作 ①定义:用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论,对数据加以详细研究和概括总结的过程 ②环境部署,可以再pycharm中做也可以再jupyter中做 ③ju ...

  4. python生产脚本_生产级部署 Python 脚本,日志收集、崩溃自启,一键搞定

    点击上方" 承香墨影 ",选择"置顶或星标" 第一时间接收最新消息 今天介绍一个生产级的流程管理工具 PM2,通常我们说到 PM2 的时候,都是在说如何部署 N ...

  5. python封装介绍_谈python3的封装

    这章给大家介绍,如何封装一个简单的python库 首先创建一个以下型式的文件结构 rootFile/setup.py example_package/ __init__.py example_modu ...

  6. python turtle 绘图_谈一下Pycharm中关联系统Python解释器的方法

    大家知道,PyCharm是一款著名的Python IDE开发工具,是拥有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,具备基本的调试.语法高亮.Project管理.代码跳转.智能提示 ...

  7. 自动化测试 - Appium + Python史上最全最简环境搭建步骤

    一,为什么是Appium 借一张图: 1.1 Appium优点 l  开源 l  跨架构:NativeApp.Hybird App.Web App l  跨设备:Android.iOS.Firefox ...

  8. Linux史上最全(30000字)知识点总结,含部署环境搭建步骤(建议收藏后看)

    认识Linux 入门概述 我们为什么要学习Linux linux诞生了这么多年,以前还喊着如何能取代windows系统,现在这个口号已经小多了,任何事物发展都有其局限性都有其天花板.就如同在国内再搞一 ...

  9. ssd内部是多个flash一起操作_关于Flash软件的操作心得

    作为播放器的Flash渐渐被推入历史堆了,作为动画创作软件的Flash还会存在很久很久,(虽然它的最新版本改了名叫Animate),关于Flash动画软件的知识点,对谁有用?比如说,影视动画专业的学生 ...

  10. mysql一些常用操作_表的一些常用操作_MySQL

    bitsCN.com -创建表(也就是创建表结构):create table tbl_name(列结构,即有哪些属性)[表选项]; 如:班级的信息:(班级编号,开班日期)create table `j ...

最新文章

  1. php protected 属性,PHP实现在对象之外访问其私有属性private及保护属性protected的方法...
  2. MyBatis Review——输入输出映射
  3. Spring PropertyPlaceholderConfigurer Usage
  4. python3写一个计算器_Python3 写了一个简单的模拟计算器 总是报错 有知道的大神 帮忙解答下 非常感谢...
  5. Arch Linux中安装Anaconda
  6. python邮件图片加密_Python爬虫如何应对Cloudflare邮箱加密
  7. 定时运行python脚本并发送邮件_python实现定时发送邮件到指定邮箱
  8. vue中pdf预览组件_Vue+ElementUI使用vue-pdf实现预览功能
  9. 窗口位置按钮取消_VBA002:“宏”的保存位置有哪几种方式?
  10. CentOS FTP服务(vsftpd)配置
  11. itext-2.1.7.jar
  12. npu算力如何计算_华为云郑叶来:多元算力驱动应用创新
  13. java jvm和android DVM区别
  14. Flex练习-打游戏
  15. 如何实现一个简单的熔断以及Hystrix原理分析
  16. C/C++经典程序训练1---最大公约数与最小公倍数 SDUT ACM
  17. shared_ptr的简单实现
  18. wp文件转shp_MapGIS教程:转换shp文件的技巧
  19. html5手机app抽奖页面,app H5活动抽奖转盘 前端+后台
  20. Springboot发送美观的HTML邮件

热门文章

  1. 我用python给我的可爱小邻居做了一个猫狗识别系统~
  2. UITextView - 2
  3. nw.js html5,用nw.js构建项目
  4. Automatic classification of defective photovoltaic module cells in electroluminescence images-论文阅读笔记
  5. Vuex dispatch用法
  6. 在子窗体中点击超级链接,关闭子窗体并刷新打开它的父窗体
  7. android 电源管理
  8. Python实验-小黑屋
  9. NOIP常考模板粗略集合包
  10. Unity打包篇:Unity 导出 Gradle 工程出现release builds have to be signed when using Gradle解决办法