转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/10779733.html

odoo有三种常见的安装方式:打包程序安装、源码安装以及Docker镜像安装。

一:打包程序安装

1、EXE文件

Odoo提供了在Windows下的打包安装程序.exe,下载链接为:https://nightly.odoo.com/8.0/nightly/exe/odoo_8.0.latest.exe

优点:下载完成后双击安装即可立即运行odoo,它会自动安装所有依赖的环境、包。

缺点:这些python依赖可能无法保持最新。

启动配置:在odoo安装目录的——>\server\openerp-server.conf 文件中,可以进行odoo的启动配置项相关设置。

重启odoo使配置生效:在计算机服务中,找到“odoo server”,重启该服务。

2、Deb文件

Odoo在Debian环境下,可以通过命令行的方式下载下载deb文件进行安装。

# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/8.0/nightly/deb/ ./" >> /etc/apt/sources.list
# apt-get update && apt-get install odoo

该命令会自动安装odoo以及相关依赖,并在安装完成后启动。

配置文件:在“/etc/odoo/openerp-server.conf”文件进行odoo启动项配置。

重启odoo:

 sudo service odoo restart

3、RPM文件

Odoo在Linux系统中,需要通过yum来进行odoo的安装。

$ sudo yum install -y postgresql-server #安装pg
$ sudo postgresql-setup initdb
$ sudo systemctl enable postgresql
$ sudo systemctl start postgresql #启动pg

$ sudo yum-config-manager --add-repo=https://nightly.odoo.com/8.0/nightly/rpm/odoo.repo #yum添加odoo源
$ sudo yum install -y odoo #安装odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo #启动odoo

配置文件:在“/etc/odoo/openerp-server.conf”文件进行odoo启动项配置。

重启odoo:

sudo systemctl restart odoo

二:源码安装

“源码安装”实际上是不安装Odoo,而是直接从源代码运行它,通常用于开发者开发。

1、安装Python

略,请自行参考网路中关于python的安装指南。

注意:在安装过程中选择“将python.exe添加到路径”,然后重新启动以确保PATH更新。

注意:如果已经安装了Python,请确保它是2.7.9,以前的版本不太方便,而3.x版本与Odoo 8.0不兼容。

2、下载odoo源码

有两种方式,一是下载zip,解压得到源码:https://nightly.odoo.com/8.0/nightly/src/odoo_8.0.latest.zip

另一种,则是直接访问odoo的GitHub库,使用git工具下载项目到本地:git clone https://github.com/odoo/odoo.git

3、安装odoo所需依赖

3.1)安装PostgresSQL数据库

根据系统环境,按照网络上的指导安装PostgresSQL,并创建一个用户用于odoo连接数据库使用。

注意:PostgresSQL默认情况下,唯一的用户是postgres,并且会禁止Odoo直接使用postgres连接数据库,因此我们需要创建一个新的数据库用户用于odoo操作数据库。

3.2)安装odoo源码中 requirements.txt 文件列出的python依赖库

Linux和MAC OS可以通过直接使用pip进行安装:pip install -r requirements.txt

Windows下的依赖需要调整一下:首先,通过 http://www.stickpeople.com/projects/python/win-psycopg/ 安装psycopg;然后,编辑 requirements.txt 文件,删除psycopg2、python-ldap、gevent、psutil;添加 pypiwin32依赖项。最后,进入到系统中的odoo目录下,通过pip进行安装:C:\ YourOdooPath> C:\ Python27 \ Scripts \ pip.exe install -r requirements.txt

3.3)安装nodejs以及所需插件

在Linux和MAC OS下,可以先安装node.js以及npm包管理工具,然后通过:sudo npm install -g less less-plugin-clean-css 安装该插件来解析以及压缩odoo的css样式代码。

在windows下,则需要安装完node.js后,配置系统的PATH并重启之后,使用npm安装:C:\> npm install -g less less-plugin-clean-css

4、运行odoo

在上述依赖安装完成后,即可通过python文件的执行方式,运行odoo目录中的“odoo.py”文件来启动odoo。

启动配置可以通过上述安装方式一提到的openerp-server.conf配置文件进行配置,也可以在运行odoo.py时,通过运行指令参数的形式进行配置:

4.1)windows下命令行启动配置方式

C:\ YourOdooPath> python odoo.py -w pg数据库用户名 -r 密码 --addons-path = addons, --db-filter = 默认数据库

4.2)Unix、Linux、MACOS下命令行启动配置方式

$ ./odoo.py --addons-path = addons,.. / mymodules --db-filter = mydb $

三:Docker安装odoo

在docker的码头中可以搜索到odoo镜像的相关介绍:https://docs.docker.com/samples/library/odoo/

odoo的镜像下载地址:https://hub.docker.com/_/odoo

目前,docker安装仅支持odoo 9以上版本。

1、安装docker并学习使用。

略。

注:知道怎么拉取镜像、怎么制作yaml文件、怎么查看、启动、停止、重启即可。更深入的可以了解docker镜像打包。

2、docker安装postgres

2.1)拉取postgres镜像

docker pull postgres:9.6

2.2)创建容器并运行

docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres:9.6

run,创建并运行一个容器;
    --name,指定创建的容器的名字;
    -e POSTGRES_PASSWORD=password,设置环境变量,指定数据库的登录口令为password;
    -p 54321:5432,端口映射将容器的5432端口映射到外部机器的54321端口;
    -d postgres:9.6,指定使用postgres:9.6作为容器内镜像。

2.3)查看容器

docker ps -a

能看到刚才创建的容器则成功。

3、docker安装odoo

3.1)拉取镜像

docker pull odoo

3.2)创建容器并运行

docker run -p : --name odoo --link db:db -t odoo

注意:运行的PostgreSQL服务容器的别名必须是db,这样Odoo实例才能通过别名连接到PostgreSQL服务容器。

3.3)查看容器

docker ps -a

能看到odoo容器,则成功。

4、访问odoo

打开浏览器,输入: localhost:8069 ,回车,即可访问odoo。

5、停止和重启odoo

docker stop odoo
docker start -a odoo

6、自定义启动配置

docker run -v 自定义配置文件路径 -p : --name odoo --link db:db -t odoo

7、在启动命令中通过参数指定启动配置

启动配置文件中的内容可以以参数形式跟在启动命令后面,在命令行的关键字--后面出现。如:

docker run -p : --name odoo --link db:db -t odoo -- --配置项=值

8、运行多个odoo实例

通过不同端口,可以同时运行多个不同odoo实例。

docker run -p : --name odoo2 --link db:db -t odoo
docker run -p : --name odoo3 --link db:db -t odoo

9、挂载自己的addons目录

docker run -v 自己的模块目录:/mnt/extra-addons -p 8069:8069 --name odoo --link db:db -t odoo

拓展:自己制作镜像部署odoo

【Odoo 8开发教程】第一章:Odoo 8.0安装的更多相关文章

  1. Cobalt Strike系列教程第一章:简介与安装

    Cobalt Strike是一款超级好用的渗透测试工具,拥有多种协议主机上线方式,集成了提权,凭据导出,端口转发,socket代理,office攻击,文件捆绑,钓鱼等多种功能.同时,Cobalt St ...

  2. kubernetes教程第一章-kubeadm高可用安装k8s集群

    目录 Kubeadm高可用安装k8s集群 kubeadm高可用安装1.18基本说明 k8s高可用架构解析 kubeadm基本环境配置 kubeadm基本组件安装 kubeadm集群初始化 高可用Mas ...

  3. [ABP教程]第一章 创建服务端

    Web应用程序开发教程 - 第一章: 创建服务端 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以下技术开发 ...

  4. [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍

    注:为了看上去比较清晰这里只转载了中文 原地址:  [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍 本章将引导您完成安装和设置开发环境,然后你就可 ...

  5. 《进击吧!Blazor!》系列入门教程 第一章 8.部署

    <进击吧!Blazor!>是本人与张善友老师合作的Blazor零基础入门教程视频,此教程能让一个从未接触过Blazor的程序员掌握开发Blazor应用的能力. 视频地址:https://s ...

  6. 村田噪声抑制基础教程-第一章 需要EMI静噪滤波器的原因

    1-1. 简介 EMI静噪滤波器 (EMIFIL®) 是为电子设备提供电磁噪声抑制的电子元件,配合屏蔽罩和其他保护装置一起使用.这种滤波器仅从通过连线传导的电流中提取并移除引起电磁噪声的元件.第1章说 ...

  7. 我的长大app开发教程第一弹:Fragment布局

    在接下来的一段时间里我会发布一个相对连续的Android教程,这个教程会讲述我是如何从零开始开发“我的长大”这个Android应用. 在开始之前,我先来介绍一下“我的长大”:这是一个校园社交app,准 ...

  8. javascript进阶教程第一章案例实战

    javascript进阶教程第一章案例实战 一.学习任务 通过几个案例练习回顾学过的知识 通过练习积累JS的使用技巧 二.实例 练习1:删除确认提示框 实例描述: 防止用户小心单击了“删除”按钮,在用 ...

  9. EnjoyingSoft之Mule ESB开发教程第一篇:初识Mule ESB

    目录 1. Mule ESB基本介绍 2. Mule ESB社区版和企业版 3. Mule ESB常用场景 4. Mule ESB软件安装 客户端安装 服务端安装 5. 第一个Mule ESB应用- ...

随机推荐

  1. 【17】迭代器模式(Iterator Pattern)

    一.引言 在上篇博文中分享了我对命令模式的理解,命令模式主要是把行为进行抽象成命令,使得请求者的行为和接受者的行为形成低耦合.在这一章中,将介绍一下迭代器模式. 二.迭代器模式的介绍 迭代器是针对集合 ...

  2. Django REST framework基础:版本、认证、权限、限制

    1  认证.权限和限制 2  认证 2.1  自定义Token认证 2.1.1  表 2.1.2  定义一个登录视图: 2.1.3  定义一个认证类 2.1.4  视图级别认证 2.1.5  全局级别 ...

  3. IDEA项目搭建一——使用Maven创建多模块项目

    废话不多说,直接开始吧,如果有哪里写的不多的,还望指出,谢谢 一.创建空项目EmpayProject File -> New -> Project 二.添加父模块Parent Module ...

  4. SD从零开始51-54 信用控制范围, 信用范围数据维护, 自动信用控制, 信用控制-阻止后续功能

    [原创] SD从零开始51 信用控制范围 分散的组织结构Decentralized Organization 信用控制范围是一个为客户指定和控制信用限额的组织单元: 依赖于你公司的需求,应收款可以使用 ...

  5. 企业BI系统应用的切入点及五大策略

    从技术的角度来看,BI的技术正在走向成熟,处于一个发展的阶段,但它促使了BI的应用在成本方面开始逐步的降低,越来越多的企业在BI应用方面取得了成功.从实施的角度来出发,实施商业智能系统是一项复杂的系统 ...

  6. Nginx的日志剖析

    1.访问日志(access.log) Nginx的访问日志就是一个文件,它存储着每个用户对网站的访问请求,这个功能是有ngx_http_log_module模块来负责的,这个文件存在的主要目的就是为了 ...

  7. 如何使用Ubuntu中的avdManager命令行为“System-Image;Androd-27;GoogleAPI;x86”创建一个AVD?

    命令是正确的,但问题是在你的系统中,你没有“android-27”操作系统. 请检查你的系统中有哪个操作系统,进入下面的目录 目录路径:-~\Android\SDK\Platform 如果没有,请先下 ...

  8. Android5.x Notification应用解析

    Notification可以让我们在获得消息的时候,在状态栏,锁屏界面来显示相应的信息,很难想象如果没有Notification,那我们的qq和微信以及其他应用没法主动通知我们,我们就需要时时的看手机 ...

  9. Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  10. CSS 小结笔记之滑动门技术

    所谓的滑动门技术,就是指盒子背景能够自动拉伸以适应不同长度的文本.即当文字增多时,背景看起来也会变长. 大多数应用于导航栏之中,如微信导航栏: 具体实现方法如下: 1.首先每一块文本内容是由a标签与s ...