Ubuntu源码安装Odoo12社区版

1、* (pass 这步可以不做) 更新Ubuntu服务器软件源

# 更新软件源
sudo apt-get update  

# 更新软件包,自动查找依赖关系
sudo apt-get dist-upgrade -y

# 重启服务器,以更新改变的内容
sudo shutdown -r now

2、新建系统用户用于运行Odoo12程序

# 查看是否已经存在odoo12用户
cat /etc/passwd

# 新建系统用户odoo12,指定home目录为/home/odoo12
sudo adduser --system --home=/home/odoo12 --group odoo12

系统用户不能用于登录并且没有shell,但当需要以它的身份进行特定操作时,可以用su命令切换用户:



  • sudo vim /etc/passwd

  • odoo那一行改成如下;可以用 sudo su odoo12 进入odoo12用户

  • /home/odoo12:/bin/bash


  • sudo su odoo12 # 测试一下是否成功
    exit # 退出
    

    命令运行后会自动从当前目录切换到odoo12用户的home目录/home/odoo12。

    操作完毕后输入exit命令,离开odoo12用户的shell,回到登录所用的用户。

    3、安装 Git , Pip , Node.js 和构建Odoo依赖项所需的工具

    sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less
    

    4、下载最新版Odoo12源码



  • 由于源码下载龟速, 请直接用根目录的"odoo10.zip"压缩包解压


  • sudo apt-get install -y git
    sudo su odoo12
    git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo12/odoo
    mv odoo odoo12
    exit
    sudo chown -R odoo12:odoo12 odoo12
    sudo chmod -R 774 /home/odoo12/odoo12
    

    5、安装和配置数据库服务器PostgreSQL

    数据库默认用户名:postgres,没有密码

    # 安装PostgreSQL
    sudo apt-get install -y postgresql
    
    # 创建数据库用户odoo12,输入两次密码odoo12
    sudo -u postgres createuser --createdb --no-createrole --no-superuser --pwprompt odoo12
    

    6、安装Wkhtmltopdf



  • 由于源码下载龟速, 请直接用根目录的"wkhtmltopdf.zip"压缩包解压


  • 下载安装wkhtmltopdf(Odoo使用wkhtmltopdf来输出pdf):



  • 如果安装出现问题参考此链接

  • https://blog.csdn.net/tianlunshu/article/details/69946656


  • # 下载wkhtmltopdf,注意根据操作系统选择相应版本
    sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb
    
    # 安装wkhtmltopdf
    sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb  
    
    # 强制修复出现的依赖关系错误,清理上面安装过程中遇到的错误
    sudo apt-get -f install
    
    # 安装完成后将可执行文件复制到usr/bin中
    sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
    
    # 更改所有者为root用户
    sudo chown root:root /usr/bin/wkhtmltopdf
    
    # 并增加可执行属性
    sudo chmod +x /usr/bin/wkhtmltopdf
    
    # 安装中文字体
    sudo apt-get install -y ttf-wqy-zenhei ttf-wqy-microhei
    
    # 打印一个网页到当前目录,如果成功生成pdf则表明安装成功
    wkhtmltopdf www.baidu.com baidu.pdf
    

    7、安装和配置Odoo

    #更改为用户“odoo12”
    sudo su - odoo12
    
    #进入home目录
    cd
    
    # 为Odoo 12安装创建一个新的Python虚拟环境
    python3 -m venv odoo-venv
    
    # 激活环境
    source odoo-venv/bin/activate
    



  • -------------pip换源步骤开始-------------

  • -------------pip原默认是国外的,建议更换到国内的-------------


  • http://mirrors.aliyun.com/pypi/simple/ 阿里云

    https://pypi.mirrors.ustc.edu.cn/simple/ 中国科技大学

    http://pypi.douban.com/simple/ 豆瓣(douban)

    https://pypi.tuna.tsinghua.edu.cn/simple/ 清华大学

    http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学

    # 创建编辑配置文件
    cd
    mkdir .pip
    cd .pip
    vim pip.conf
    
    • 输入以下文本保存退出
    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple
    



  • -------------pip换源步骤结束-------------

  • -------------END-------------


    • 进入虚拟环境后(可能需要换源pip换源)
    pip3 install wheel
    pip3 install -r odoo12/requirements.txt
    

    如果在安装过程中遇到任何编译错误,请确保安装了“开始之前”节中列出的所有必需依赖项。

    • 使用以下命令停用环境
    deactivate
    
    • 为自定义插件创建新目录
    mkdir /home/odoo12/odoo-custom-addons
    
    • 切换回您的sudo用户
    exit
    
    • 编辑配置文件

    sudo vim /etc/odoo12.conf

    • 创建log文件
    cd /var/log
    sudo mkdir odoo12
    cd odoo12
    sudo touch odoo12-server.log
    sudo chown -R odoo12:odoo12 odoo12-server.log
    
    • 创建odoo12的静态目录
    sudo mkdir /var/lib/odoo12
    sudo chown -R odoo12:odoo12 /var/lib/odoo12
    
    • 粘贴以下内容
    [options]
    ; This is the password that allows database operations:
    ; admin_passwd = my_admin_passwd
    db_host = False
    db_port = False
    db_user = odoo12
    db_password = odoo12
    addons_path = /home/odoo12/odoo12/addons,/home/odoo12/odoo12/odoo/addons,/home/odoo12/odoo-custom-addons
    data_dir = /var/lib/odoo12
    log_level = info
    logfile = /var/log/odoo12/odoo12-server.log
    logrotate = True
    ;xmlrpc_port = 8069
    ;db_filter = ^vivi$
    
    • 保存退出, 修改权限
    sudo chmod 774 /etc/odoo12.conf
    

    8、创建systemd服务文件

    • 创建文件
    sudo vim /etc/systemd/system/odoo12.service
    
    • 创建文件
    [Unit]
    Description=Odoo12
    Requires=postgresql.service
    After=network.target postgresql.service
    
    [Service]
    Type=simple
    SyslogIdentifier=odoo12
    PermissionsStartOnly=true
    User=odoo12
    Group=odoo12
    ExecStart=/home/odoo12/odoo-venv/bin/python3 /home/odoo12/odoo12/odoo-bin -c /etc/odoo12.conf
    StandardOutput=journal+console
    
    [Install]
    WantedBy=multi-user.target
    
    • 执行
    sudo systemctl daemon-reload
    sudo systemctl start odoo12
    
    • 运行
    sudo systemctl status odoo12
    
    • 部分命令
    # 启用Odoo
    sudo systemctl enable odoo12
    
    # 查看Odoo服务记录
    sudo journalctl -u odoo12
    
    # 启动服务
    sudo systemctl start odoo12
    
    # 重启服务
    sudo systemctl daemon-reload
    sudo systemctl restart odoo12
    
    # 停止服务
    sudo systemctl stop odoo12
    

    你可能感兴趣的:(Ubuntu源码安装Odoo12社区版)