如何在Ubuntu 18.04上安装Odoo 13

在今天的博客文章中,我们将讨论如何在Ubuntu 18.04(Bionic Beaver)Linux系统上安装Odoo 13.Odoo是最受信任的基于Web的开源业务应用程序套件,可帮助您朝正确的方向发展业务。 Odoo使您可以访问关键的业务应用程序,所有这些应用程序都通过一个控制台进行管理。

Odoo上可用的一系列业务应用程序包括开源CRM,网站构建器,电子商务,仓库管理,项目管理,计费和会计,销售点,人力资源,市场营销,制造,采购管理等。

值得注意的一点是,Odoo Apps可以用作独立应用程序,但它们也可以无缝集成,因此您可以获得功能齐全的功能。 开源ERP 当您安装多个应用程序时。

对于CentOS 7,请检查:如何在CentOS 7上安装Odoo 13

在Ubuntu 18.04上安装Odoo

下一部分将介绍在Ubuntu 18.04 Linux上安装Odoo的步骤。我们将首先进行标准的操作系统更新,然后再进行依赖项软件包的安装。由于Odoo 13‘黛比’适用于Ubuntu 18.04的软件包。

步骤1:更新Ubuntu系统

首先更新您的Ubuntu Linux。

sudo apt update
sudo apt -y upgrade

升级后必须重新启动。

sudo reboot

步骤2:安装PostgreSQL数据库

Odoo建议使用PostgreSQL数据库服务器进行数据存储,并使用以下指南在Ubuntu 18.04 Linux上安装PostgreSQL数据库服务器。

在Ubuntu 18.04上安装PostgreSQL 12

步骤3:安装wkhtmltopdf

wkhtmltopdf是打印报告所必需的,因为它将html转换为pdf。 wkhtmltopdf Ubuntu存储库中可用的版本不支持页眉和页脚,因此不用作直接依赖项。

推荐安装的wkhtmltopdf版本为0.12.5,可从以下网站获得 wkhtmltopdf下载页面,在存档部分。

在Ubuntu 18.04 / Debian 10 Linux上安装wkhtmltopdf和wkhtmltoimage

步骤4:在Ubuntu 18.04 LTS上安装Odoo 13

添加Odoo deb存储库,以便您可以在Ubuntu 18.04上安装Odoo 13。

wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add -
echo "deb http://nightly.odoo.com/13.0/nightly/deb/ ./" | sudo tee /etc/apt/sources.list.d/odoo.list

更新Apt缓存并在Ubuntu 18.04上安装Odoo 13。

sudo apt update
sudo apt install odoo

在Ubuntu 18.04 Linux上安装Odoo之后,该服务会自动启动。

$ systemctl status odoo
● odoo.service - Odoo Open Source ERP and CRM
   Loaded: loaded (/lib/systemd/system/odoo.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-10-19 14:02:14 UTC; 3h 11min ago
 Main PID: 24088 (odoo)
    Tasks: 4 (limit: 2362)
   CGroup: /system.slice/odoo.service
           └─24088 /usr/bin/python3 /usr/bin/odoo --config /etc/odoo/odoo.conf --logfile /var/log/odoo/odoo-server.log

Oct 19 14:02:14 foreman.example.com systemd[1]: Started Odoo Open Source ERP and CRM.

将服务设置为在每次系统重新引导时启动。

$ sudo systemctl enable --now odoo
enabled

该服务在端口8069上启动。可以使用以下命令确认该服务。

$ ss -tunelp | grep 8069
tcp   LISTEN  0       128                  0.0.0.0:8069           0.0.0.0:*      uid:113 ino:1906251 sk:d <-> 

步骤5:为Odoo 13配置Nginx代理

在您的Ubuntu系统上安装Nginx,

sudo apt -y install nginx vim

Nginx代理配置有两种情况-使用HTTPS和不通过安全连接提供流量的情况。在本节中,我们将考虑这两种设置。

为Odoo设置Nginx HTTP代理

为odoo创建一个新的配置文件。

sudo vim /etc/nginx/conf.d/odoo.conf

修改此配置代码段以适合您的设置。

# Odoo Upstreams
upstream odooserver {
 server 127.0.0.1:8069;
}

server {
    listen 80;
    server_name erp.computingforgeeks.com;
    access_log /var/log/nginx/odoo_access.log;
    error_log /var/log/nginx/odoo_error.log;


    # Proxy settings
    proxy_read_timeout 720s;
    proxy_connect_timeout 720s;
    proxy_send_timeout 720s;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;

    # Request for root domain
    location / {
       proxy_redirect off;
       proxy_pass http://odooserver;
    }

    # Cache static files
    location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odooserver;
    }

    # Gzip
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

在此示例中,我的服务域是 erp.computingforgeeks.com,将其替换为与Odoo一起使用的正确域。外部访问也需要有效的DNS记录。

检查您的配置语法:

$ sudo nginx  -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

如果认为设置正确,请重新启动nginx服务。

sudo systemctl restart nginx

重新启动时不会遇到任何错误。

$ systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-10-19 17:34:39 UTC; 5s ago
     Docs: man:nginx(8)
  Process: 626 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 615 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 631 (nginx)
    Tasks: 2 (limit: 2362)
   CGroup: /system.slice/nginx.service
           ├─631 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─632 nginx: worker process
....

在Nginx上使用Let的Odoo加密SSL证书

始终建议对生产部署使用SSL加密。Let’s Encrypt是免费的SSL产品,您可以在安装程序中使用它。

为您的域获取“让我们加密SSL证书”。

wget https://dl.eff.org/certbot-auto
chmod +x certbot-auto
sudo mv certbot-auto /usr/local/bin/certbot-auto
sudo systemctl stop nginx

export DOMAIN="erp.computingforgeeks.com"
export EMAIL="[email protected]"
sudo /usr/local/bin/certbot-auto certonly --standalone -d ${DOMAIN} --preferred-challenges http --agree-tos -n -m ${EMAIL} --keep-until-expiring

如果执行通过,将打印出证书和链文件的路径。

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/erp.computingforgeeks.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/erp.computingforgeeks.com/privkey.pem
   Your cert will expire on 2020-01-17. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again. To non-interactively renew *all* of your certificates, run
   "certbot-auto renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

创建cron以续订证书。

$ sudo crontab -e
15 3 * * * /usr/local/bin/certbot-auto renew --pre-hook "systemctl stop nginx" --post-hook "systemctl start nginx"

创建Nginx配置文件。

sudo vim /etc/nginx/conf.d/odoo.conf

在下面修改并添加到文件。

# Odoo Upstreams
upstream odooserver {
 server 127.0.0.1:8069;
}

# http to https redirection
server {
    listen 80;
    server_name erp.computingforgeeks.com;
    return 301 https://erp.computingforgeeks.com$request_uri;
}

server {
    listen 443 ssl;
    server_name erp.computingforgeeks.com;
    access_log /var/log/nginx/odoo_access.log;
    error_log /var/log/nginx/odoo_error.log;
   
   # SSL
    ssl_certificate /etc/letsencrypt/live/erp.computingforgeeks.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/erp.computingforgeeks.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/erp.computingforgeeks.com/chain.pem;


    # Proxy settings
    proxy_read_timeout 720s;
    proxy_connect_timeout 720s;
    proxy_send_timeout 720s;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;

    # Request for root domain
    location / {
       proxy_redirect off;
       proxy_pass http://odooserver;
    }

    # Cache static files
    location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odooserver;
    }

    # Gzip Compression
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

别忘了替代 erp.computingforgeeks.com 与您的域名。

重新启动Nginx。

sudo systemctl restart nginx

步骤6:访问Odoo Web界面

从网络浏览器访问您域名上的Odoo网页。

输入创建数据库所需的详细信息。单击“创建数据库”后,您将被重定向到“管理”页面,从中可以安装Odoo业务应用程序。

如何在Ubuntu 18.04上安装Odoo 13

如果确实配置了https,则应通过安全隧道加载页面。

如何在Ubuntu 18.04上安装Odoo 13

来访 Odoo文档页面 了解更多。

类似指南:

在Ubuntu 18.04 LTS上安装Dolibarr ERP和CRM

如何在Ubuntu 18.04上安装ERPNext ERP系统

Sidebar