Wéi installéiere ech Odoo (Open Source ERP a CRM) op CentOS 8


Odoo ass eng Opensource All-in-One Business Management Software déi mat enger Suite vu verschiddene Geschäftsapplikatiounen fir verschidde Gebrauch verschéckt gëtt wéi eCommerce, Projektmanagement, Helpdesk, Comptabilitéit, Inventar, an e Websäit Builder fir e puer ze nennen.

An dësem Artikel léiert Dir wéi Dir Odoo (Open Source ERP a CRM) op CentOS 8 an RHEL 8 installéiere wëllt.

Schrëtt 1: Update de System an installéieren EPEL Repository

1. Den éischte Schrëtt bei der Installatioun vun Odoo ass den EPEL Repository z'installéieren, deen eng Rei vun extra Packagen fir Enterprise Linux ubitt. Awer als éischt, gitt sécher de System ze aktualiséieren wéi gewisen.

$ sudo dnf update

2. Wann d'Aktualiséierung vum System fäerdeg ass, installéiere de EPEL Repository wéi gewisen.

$ sudo dnf install epel-release

Schrëtt 2: Installéiere Python3 an aner Ofhängegkeeten

3. Als nächst installéiere Python 3 an aner erfuerderlech Ofhängegkeeten, déi vun Odoo erfuerderlech sinn wéi gewisen.

$ sudo dnf install python36 python36-devel git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel

Schrëtt 3: Installéieren a konfiguréieren PostgreSQL an CentOS 8

4. PostgreSQL ass e gratis an Opensource relational Datebank Management System benotzt an enger grousser Palette vun Uwendungen fir Daten ze späicheren. Mir mussen PostgreSQL fir Odoo installéieren a fir dëst ze maachen, lafen de Kommando.

$ sudo dnf install postgresql-server postgresql-contrib

5. Als nächst, initialiséiert en neie PostgreSQL Datebankcluster.

$ sudo postgresql-setup initdb

6. Soubal d'Datebankcluster initialiséiert gouf, nei starten a PostgreSQL aktivéieren wéi gewisen.

$ sudo systemctl restart postgresql
$ sudo systemctl enable postgresql

7. Fir ze bestätegen datt d'Datebank op a lafen ass, ausféieren.

$ sudo systemctl status postgresql

Schrëtt 4: Installéiert de Wkhtmltopdf Tool an CentOS 8

8. Fir Odoo fir PDF-Rapporten ze drécken, erfuerdert e Package mam Numm Wkhtmltopdf. Dëst gëtt benotzt fir HTML op PDF an aner Bildformater ze maachen. Den rpm Package ass verfügbar op Github an Dir kënnt et installéieren wéi gewisen.

$ sudo dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm

Schrëtt 5: Installéieren a konfiguréieren Odoo an CentOS 8

9. Mir addéieren en neie Systembenotzer dee mir benotze fir den Odoo Service ze lafen. An dëser Illustratioun wäerte mir e Benotzer mam Numm Odoo erstellen, awer fille sech fräi fir en arbiträre Benotzernumm ze wielen. Den Heemverzeichnis ass am /opt/odoo Verzeichnis.

$ sudo useradd -m -U -r -s /bin/bash odoo -d /opt/odoo 

10. Fir d'Installatioun vun Odoo unzefänken, schalt als éischt op den Odoo Benotzer dee mir uewen erstallt hunn.

$ sudo su - odoo

11. Da klon de Git Repository.

$ git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo/odoo13

12. Als nächst klon d'virtuell Ëmfeld wéi gewisen.

$ cd /opt/odoo
$ python3 -m venv odoo13-venv

13. Wann d'virtuell Ëmfeld erstallt ass, aktivéiert se mat dem folgenden Kommando.

$ source odoo13-venv/bin/activate

Wéi Dir kënnt beobachten, ännert d'Prompt wéi gewisen.

14. Am virtuellen Ëmfeld installéiere déi erfuerderlech Python Moduler fir d'Installatioun vun Odoo fir glat ze goen.

$ pip3 install -r odoo13/requirements.txt

15. Wann d'Installatioun vun de Python Moduler fäerdeg ass, gitt d'virtuell Ëmfeld aus a gitt zréck op de Sudo Benotzer.

$ deactivate && exit

16. Obwuel fakultativ. Bescht Praxis diktéiert d'Installatioun vu personaliséierte Moduler an engem getrennten Verzeechnes. Mat deem vergiessen, wäerte mir weidergoen fir e Verzeechnes fir personaliséiert Moduler ze kreéieren a spéider de Verzeechnesbesëtzer dem 'Odoo' Benotzer zouzeschreiwen.

$ sudo mkdir /opt/odoo/odoo13-custom-addons
$ sudo chown -R odoo:odoo /opt/odoo/odoo13-custom-addons

17. Am selwechte Wee wäerte mir e personaliséierte Logverzeechnes a Logbicher erstellen wéi se gewisen.

$ sudo mkdir /var/log/odoo13
$ sudo touch /var/log/odoo13/odoo.log
$ sudo chown -R odoo:odoo /var/log/odoo13/

18. Als nächst erstellt eng personaliséiert Konfiguratiounsdatei fir Odoo wéi gewisen.

$ sudo vim /etc/odoo.conf

Paste déi folgend Konfiguratioun a späichert d'Datei.

[options]
; This is the password that allows database operations:
admin_passwd = strong_password
db_host = False
db_port = False
db_user = odoo
db_password = False
xmlrpc_port = 8069
; longpolling_port = 8072
logfile = /var/log/odoo13/odoo.log
logrotate = True
addons_path = /opt/odoo/odoo13/addons,/opt/odoo/odoo13-custom-addons

Vergewëssert Iech de strong_password mat Ärem gewënschte Passwuert ze ersetzen.

Schrëtt 6: Erstellt eng Odoo Systemd Eenheetsdatei

19. Elo erstellt eng systemd Eenheetsdatei fir Odoo.

$ sudo vim /etc/systemd/system/odoo13.service

Paste déi folgend Konfiguratioun a späichert d'Datei.

[Unit]
Description=Odoo13
#Requires=postgresql-10.6.service
#After=network.target postgresql-10.6.service

[Service]
Type=simple
SyslogIdentifier=odoo13
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo13-venv/bin/python3 /opt/odoo/odoo13/odoo-bin -c /etc/odoo.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

20. Reload systemd vun den neien Ännerungen an der Datei gemaach.

$ sudo systemctl daemon-reload

21. Da starten an aktivéieren Odoo wéi gewisen.

$ sudo systemctl start odoo13
$ sudo systemctl enable odoo13

22. Fir de Status vun Odoo ze bestätegen, lafen de Kommando:

$ sudo systemctl status odoo13

23. Dir kënnt och den netstat Kommando benotzen fir ze kontrolléieren ob Odoo um Hafen 8069 lauschtert - wat säi Standardport ass.

$ sudo netstat -pnltu | grep 8069

24. Fir Odoo op engem Browser zougänglech ze sinn, oppen den Hafen iwwer d'Firewall.

$ sudo firewall-cmd --add-port=8069/tcp --zone=public --permanent
$ sudo firewall-cmd --reload

Schrëtt 7: Installéiert Nginx als Reverse Proxy fir Odoo

25. Endlech wäerte mir den Nginx Webserver installéieren deen als Reverse Proxy op eis Odoo Instanz handelt. Also, lafen de Kommando:

$ sudo dnf install nginx

26. Als nächst erstellt eng nei virtuell Hostdatei.

$ sudo vim /etc/nginx/conf.d/odoo13.conf

a paste déi folgend Konfiguratioun wéi gewisen.

upstream odoo {
 server 127.0.0.1:8069;
}
server {
    listen 80;
    server_name server-IP;

    access_log /var/log/nginx/odoo13.access.log;
    error_log /var/log/nginx/odoo13.error.log;

        location / {
        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;

        proxy_redirect off;
        proxy_pass http://odoo;
    }
location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odoo;
    }
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

Späichert a gitt d'Konfiguratiounsdatei aus.

27. Elo starten an aktivéieren Nginx Webserver.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

28. Bestätegt datt Nginx leeft wéi gewisen.

$ sudo systemctl status nginx

Zu dësem Zäitpunkt si mir all fäerdeg mat der Konfiguratioun. De leschte Schrëtt ass de Setup op engem Webbrowser ze finaliséieren.

Schrëtt 8: Odoo Setup finaliséieren

29. Lancéiere e Webbrowser a besicht d'IP vun Ärem Server wéi gewisen.

http://server-ip/

Eng ähnlech Websäit wéi déi hei ënnen gëtt ugewisen. Fir de Master Passwuert, benotzt d'Passwuert, deen am Schrëtt 5 spezifizéiert ass, wärend Dir eng personaliséiert Odoo Configuratiounsdatei erstellt. Da fuert weider fir all déi aner Entréen auszefëllen a klickt op de 'Datebank erstellen' Knäppchen.

30. Dëst féiert Iech op den Odoo's Dashboard deen déi verschidde Applikatiounen weist, déi installéiert kënne ginn.

An dëst schléisst eisen Tutorial fir haut of. An dësem Guide hutt Dir geléiert wéi Dir Odoo op CentOS 8 installéiere wëllt.