odoo.jpg

关于Odoo

Odoo是一套完整的系统,是一个开源框架,针对 ERP 的需求发展而来,适合定制出符合客户各种需求的ERP系统、电子商务系统、CMS、或者是网站。

由于 Odoo 的底层结构很强大,所有模块都可以根据需要进行安装和御载,所以客户能够像搭积木一样建构自己期望的系统。即使完全不安装与ERP相关的模块,仅利用 Odoo 自身的底层框架,也能构建出适合各种用途的系统,纯 B/S 架构。而这一切都是免费的,并且不受限于源代码,也不受于用户数。

Odoo 是一系列开源商业应用程序套装,此套装可以满足公司的绝大部分应用需求,例如,基本的进销存管理、采购、销售、MRP生产制造、质量管理、HR、休假管理、用车管理、IM通讯、CRM客户关系管理、电子商务、网站,财务会计、资产管理、WMS仓库管理、POS连锁、项目管理、条码、PLM等等。

准备工作

系统:建议Ubuntu 20.04 LTS +

配置:建议2核+ 4GB+

域名:随意

网络:建议全局国际互联(因有些依赖受网络影响导致拉取失败)

安装Odoo

开始安装(以目前最新版本Odoo 16社区版为例)

sudo apt update  #更新系统软件
sudo wget https://raw.githubusercontent.com/Yenthe666/InstallScript/16.0/odoo_install.sh #一键安装脚本文件sudo chmod +x odoo_install.sh #使脚本可执行
sudo ./odoo_install.sh #执行安装

脚本说明:

脚本作者:Yenthe Van Ginneken @Yenthe666 https://github.com/Yenthe666/InstallScript

部分配置需要自定义,请修改odoo_install.sh自动安装脚本文件,修改完后保存继续操作。

以下参数可按需更改

OE_USER 用户名

GENERATE_RANDOM_PASSWORD 是否生成随机密码,默认为True。会生成一个随机密码,在最后成功界面有显示(很重要!!!),或者查看/etc/odoo-server.conf中admin_password字段,如果更改后会加密显示。

INSTALL_WKHTMLTOPDF 是否安装wkhtmltopdf,默认为True。此插件可将表单生成为PDF供下载。

OE_PORT 系统端口号,默认为8069

OE_VERSION 系统版本号,默认为15.0

IS_ENTERPRISE 是否企业版,默认为False,社区开源版,企业版需要购买授权

OE_SUPERADMIN 管理员,默认为admin

INSTALL_NGINX 是否安装nginx,默认为True

WEBSITE_NAME 设置nginx配置文件的网站名称,请修改

ENABLE_SSL 是否开启SSL,默认为True

ADMIN_EMAIL 管理员邮箱,请修改

注意:INSTALL_NGINX 和 ENABLE_SSL 如果设置为True,则ADMIN_EMAIL必须为有效的邮箱,否则证书可能签发失败

全程未出现红字报错,基本上是安装成功了。

自动安装完成后出现以下画面

odoo_01.jpg

注意:红色框内为数据库超级管理员密码,脚本默认为随机生成密码,请不要急于关闭安装命令界面,若已在脚本内设置密码,可以不用理会,后面初始化时及后期管理数据库要用到。**非常重要!!!**

配置SSL访问

1. 通过Let's Encrypt、OpenSSL或FreeSSL申请项目所使用的域名的cert及key文件

2. 在/etc/ssl/目录下创建文件夹nginx,并将cert和key复制到此文件夹下

3. 修改/etc/nginx/sites-available/_ 配置文件 (建议先备份)

server {
    listen 443 default;
    server_name ;  #此处默认是没有域名,可在安装之前修改odoo_install.sh文件对应参数
    
    access_log /var/log/nginx/odoo.access.log;
    error_log  /var/log/nginx/odoo.error.log;

    ssl on;
    ssl_certificate     /etc/ssl/nginx/server.crt;
    ssl_certificate_key /etc/ssl/nginx/server.key;
    ssl_session_timeout 5m;
    ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    location / {
        proxy_pass http://127.0.0.1:8069;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

        proxy_buffer_size 128k;
        proxy_buffers 16 64k;
        proxy_redirect off;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Proto https;
    }

   location ~* /web/static/ {
        proxy_cache_valid 200 60m;
        proxy_buffering    on;
        expires 864000;
        proxy_pass http://127.0.0.1:8069;
    }
}

server {   # 将80端口转到443的https中
    listen 80;
    server_name ;  #此处默认是没有域名,可在安装之前修改odoo_install.sh文件对应参数
 
    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^/.*$ https://$host$request_uri? permanent;
}

server {   # 将特定ip的8069端口转到443的https中
    listen [::]:8069; # 这是虚机的ip
    server_name ;  #此处默认是没有域名,可在安装之前修改odoo_install.sh文件对应参数

    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^/.*$ https://$host$request_uri? permanent;
}

4. 建立软连接

sudo ln -s /etc/nginx/sites-available/_ /etc/nginx/sites-enabled/_

5. 重启NGINX服务即可

sudo service nginx restart

初始化系统

浏览器输入:服务器IP或者域名:8069(默认端口号,如更改过就以实际而定)

odoo_02.jpg

依次输入数据库超级管理员密码,数据库名,电邮(即系统管理员登录账号),密码(系统管理员登录密码),电话号码,选择系统语言(有需要后面可以增加多语种),选择国家或地区,实例模板(想要熟悉系统可以勾选,正式上线可以不勾选)。

初始化完成后,用之前设置的账号登录。

odoo_04.jpg

本系统也支持多个账套,可在登录页面点击Manage Database来管理,可以新增,备份,恢复,复制,删除,修改数据库管理员密码。

odoo_02 (1).jpg

数据库管理地址:http(s)://域名或IP:8069/web/database/manager

odoo_03.jpg

登入系统后,默认会跳转到“讨论”版块,默认登录跳转页面可以通过修改左侧菜单排序来实现。

odoo_05.jpg

添加模块

Odoo集成了超过几百个模块及插件,常用的ERP,财务,CRM,MRP,BOM,POS,CMS等等都可以在这里添加,部分模块是要企业版付费才可以使用,但是免费的模块已可以满足中小企业了。

odoo_06.jpg

odoo_07.jpg

常见问题

在安装早期版本或者网络不好会出现有部分依赖包未能成功安装,以下是遇到过的情况。

常见问题1:建议检查系统是否安装libpng12-0,此项为WKhtmltox的依赖软件包,未安装会导致后续安装wkhtmltopdf失败。

sudo apt install libpng12-0

若安装失败,可能需要手动添加到软件库

sudo add-apt-repository ppa:linuxuprising/libpng12
sudo apt update
sudo apt install libpng12-0

常见问题2:wkhtmltopdf 在生成表单下载后显示中文乱码的问题,是缺少字体所致,需要安装文泉驿字体。

依次输入如下命令安装正黑 - 微黑两种中文字体:

sudo apt install ttf-wqy-zenhei -y
sudo apt install ttf-wqy-microhei -y

重启后生效