如何在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