zoukankan      html  css  js  c++  java
  • odoo12从零开始:一、安装odoo运行环境(mac)

    写在前面:

          接触odoo已经两年多了,在大学做课程设计的时候,无意间了解到odoo这个erp框架,当时的odoo在国内还默默无闻,我也不曾想过自己毕业后会从事到odoo框架的相关开发工作中来。两年多的时间里,我见证了它在国内的发展,也随着工作经验的积累,对odoo已经有了一定的了解,在这里,我希望能分享自己两年多来学习到的一些知识和经验,也希望有可能吸引到更多的朋友加入到odoo的开发中来。

          根据初步的想法,文章将会包含odoo开发环境的搭建(Mac),个性化,ORM模块,controller,视图、模板、记录以及其继承机制,widget,权限,打印模板,报表,部署,源码分析等部分。关于更新时间,由于本人家境贫寒,每日上下班通勤时间高达三个小时,工作日能抽出的时间比较有限,主要将在周末更新。给自己定一个小目标,每周至少更新两到三篇文章。

     

    在Mac Os上安装odoo12开发环境

    我们将要安装的软件包:

    1)、git: 代码管理

    2)、postgres: odoo12运行所需要的数据库

    3)、docker: 用于构建postgres容器,pgadmin4容器

    4)、>=python3.5: odoo12运行的python环境

    4)、odoo requirements: 运行odoo需要的python依赖包

    项目代码:

    git clone -b v1.0 https://github.com/lingjiawen/odoo_project.git

    1、安装homebrew

    打开终端,输入:

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

     

    2、安装git

    brew install git

    安装完成后,查看git版本检查是否安装成功:

     

    3、安装python3

    最新款的mac已经自己安装python2.7 和 python3.7,检查运行版本:

    如果没有,使用homebrew进行安装(homebrew安装python3会自动安装pip3):

    brew install python3

     

    4、安装python虚拟环境

    pip3 install virtualenv

    查看是否安装成功:

    创建python3虚拟环境到用户目录并激活:

    virtualenv -p python3 ~/odoo12_project #创建虚拟环境
    source ~/odoo12_project/bin/active   #激活虚拟环境

     

    5、拉取代码并安装依赖:

    mkdir -pv ~/code/odoo_project  # 建立工作目录
    cd ~/code/odoo_project  # 进入工作目录
    git clone -b 12.0 https://github.com/odoo/odoo.git

    安装所需依赖:

    brew install freetype jpeg libpng libtiff xz webp
    brew install node # 安装node
    npm install -g less less-plugin-clean-css #使用node安装依赖
    # 完成后进入odoo12目录
    cd odoo12
    pip3 install -r requirements.txt # 安装requirements

    安装pgcopy2可能会出现如下报错:

     可能的解决方法:

    方法1:
    pip3 uninstall psycopg2
    pip3 list --outdated
    pip3 install --upgrade wheel
    pip3 install --upgrade setuptools
    pip3 install psycopg2
    方法2:
    xcode-select --install

    如果上述两种方法无法解决,那么尝试下列办法:

    vim requirements.txt # 编辑文件
    # 找到psycopg2
    # 在前面添加'#'注释
    # 保存退出
    pip3 install psycopg2-binary==2.8.3 # 手动安装
    # 重新安装requirements
    pip3 install -r requirements.txt

     

    6、安装docker

    直接访问官网hub登录下载docker桌面版并运行: https://hub.docker.com/editions/community/docker-ce-desktop-mac

    查看docker和docker-compose版本:

    7、使用docker安装postgres数据库

    docker pull postgres:10
    docker pull dpage/pgadmin4

    进入项目路径,创建db运行的docker-compose文件:

    cd ~/code/odoo12_project/
    touch docker-compose_db.yaml
    vim docker-compose_db.yaml

    文件如下:

    version: '2'
    services:
       postgres_10_db:
            image: postgres:10
            container_name: postgres_10_db
            environment:
                - POSTGRES_USER=odoo12
                - POSTGRES_PASSWORD=odoo12
                - POSTGRES_DB=postgres
                - PGDATA=/var/lib/postgresql/data/pgdata
            volumes:
                - postgres_10_db_volume:/var/lib/postgresql/data/pgdata
            ports:
                - "5432:5432"
            network_mode: bridge
    
    volumes:
            postgres_10_db_volume:
                    external: true

    创建容器Volume并运行:

    docker volume create --name=postgres_10_db_volume
    docker-compose -f docker-compose_db.yaml up -d # 守护态运行
    # 运行pgadmin, 账号密码请自己设置
    docker run -p 8888:80 
        -e “PGADMIN_DEFAULT_EMAIL=sysadmin" 
        -e “PGADMIN_DEFAULT_PASSWORD=sysadmin" 
        -d dpage/pgadmin4

    查看运行状态:

     我们已经注意到数据库已经运行,端口为5432,pgadmin运行端口为8888,在浏览器输入localhost:8888访问pgadmin:

     8、使用pycharm运行odoo12:

    1)打开pycharm(如没有pycharm请自行下载安装,不再赘述),打开项目,如图:

     

    2)设置虚拟环境运行:

    左上角点开pycharm->preferences->project->project interpreter->setting->add:

    3)选择existing environment,路径选择刚刚创建的odoo12_project/bin.python,点击ok。

    4)添加启动文件:

    在目录下新建config目录,在config目录下新建odoo.conf文件:

    [options]
    addons_path = ~/code/odoo12_project/odoo12/odoo/addons,~/code/odoo12_project/odoo12/addons
    ; admin_passwd = admin
    ; csv_internal_sep = ,
    db_host = 0.0.0.0
    db_password = odoo12
    db_user = odoo12
    db_port = 5432
    ; db_maxconn = 64
    ; db_name = False
    ; db_template = template1
    ; dbfilter = .*
    ; debug_mode = False
    ; email_from = False
    ; limit_memory_hard = 2684354560
    ; limit_memory_soft = 2147483648
    ; limit_request = 8192
    ;limit_time_cpu = 12000
    ;limit_time_real = 24000
    ; list_db = True
    ; log_db = False
    ; log_handler = [':INFO']
    ; log_level = info
    ; logfile = None
    ; longpolling_port = 8072
    ; max_cron_threads = 2
    ; osv_memory_age_limit = 1.0
    ; osv_memory_count_limit = False
    ; smtp_password = False
    ; smtp_port = 25
    ; smtp_server = localhost
    ; smtp_ssl = False
    ; smtp_user = False
    ; workers = 5
    ; xmlrpc = True
    ; xmlrpc_interface =
    ; xmlrpc_port = 8069
    ; xmlrpcs = True
    ; xmlrpcs_interface =
    ; xmlrpcs_port = 8071

    在主目录下新建启动文件set-up,并添加以下内容:

    #!/usr/bin/env python3
    
    # set server timezone in UTC before time module imported
    import os
    import sys
    __import__('os').environ['TZ'] = 'UTC'
    
    LIB_PATH = os.path.join(os.path.split(os.path.realpath(__file__))[0], '.', 'odoo12')
    sys.path.append(LIB_PATH)
    
    import odoo
    
    if __name__ == "__main__":
        odoo.cli.main()

    最后目录结构如下:

    5)pycharm添加配置文件:

     

    Script path: 选择刚才建立的set-up文件

    Parameters:指定定配置文件,-c config/odoo.conf

    Python interpreter:选择刚才配置的虚拟环境

    6)点击运行按钮,我们可以看到odoo12已经在8069端口运行:

    7)使用浏览器访问localhost:8069查看效果:

    Tips:下一篇文章将为大家带来包含数据库创建页面的优化。

  • 相关阅读:
    线程同步
    快捷键之Sublime
    快捷键之Idea
    快捷键之Chrome
    20155219付颖卓《网络对抗》逆向及Bof基础
    20155219 《嵌入式基础》
    20155219 《信息安全系统设计基础》课程总结
    20155219 《信息安全系统设计基础》第十四周学习总结
    20155219 《信息安全系统设计基础》第十三周学习总结
    2017-2018-1 20155219《信息安全系统设计基础》 实验五 通讯协议设计
  • 原文地址:https://www.cnblogs.com/ljwTiey/p/11470897.html
Copyright © 2011-2022 走看看