Kif Tinstalla Odoo (Open Source ERP u CRM) fuq CentOS 8


Odoo huwa softwer opensource all-in-one għall-ġestjoni tan-negozju li jintbagħat b'serje ta 'diversi applikazzjonijiet tan-negozju għal diversi użi bħal eCommerce, ġestjoni tal-proġetti, helpdesk, kontabilità, inventarju, u bennej ta' websajt biex insemmu xi ftit.

F'dan l-artikolu, titgħallem kif tinstalla Odoo (Open Source ERP u CRM) fuq CentOS 8 u RHEL 8.

Pass 1: Aġġorna s-Sistema u Installa r-Repożitorju EPEL

1. L-ewwel pass fl-installazzjoni ta 'Odoo huwa li tinstalla r-repożitorju EPEL li jipprovdi sett ta' pakketti żejda għal intrapriża Linux. Imma l-ewwel, kun żgur li taġġorna s-sistema kif muri.

$ sudo dnf update

2. Ladarba l-aġġornament tas-sistema jitlesta, installa r-repożitorju EPEL kif muri.

$ sudo dnf install epel-release

Pass 2: Installa Python3 u Dipendenzi Oħra

3. Sussegwentement, installa Python 3 u dipendenzi oħra meħtieġa li huma meħtieġa minn Odoo kif muri.

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

Pass 3: Installa u Ikkonfigura PostgreSQL f'CentOS 8

4. PostgreSQL hija sistema ta 'ġestjoni tad-database relazzjonali b'xejn u opensource użata f'firxa vasta ta' applikazzjonijiet biex tinħażen id-dejta. Għandna bżonn ninstallaw PostgreSQL għal Odoo u biex nagħmlu dan, mexxi l-kmand.

$ sudo dnf install postgresql-server postgresql-contrib

5. Sussegwentement, inizjalizza cluster tad-database PostgreSQL ġdid.

$ sudo postgresql-setup initdb

6. Ladarba l-cluster tad-database jkun ġie inizjalizzat, ibda mill-ġdid, u ppermetti PostgreSQL kif muri.

$ sudo systemctl restart postgresql
$ sudo systemctl enable postgresql

7. Biex tikkonferma li d-database qed taħdem, eżegwixxi.

$ sudo systemctl status postgresql

Pass 4: Installa l-Għodda Wkhtmltopdf f'CentOS 8

8. Biex Odoo jistampa rapporti PDF, jeħtieġ pakkett imsejjaħ Wkhtmltopdf. Dan jintuża biex jirrendi HTML għal PDF u formati oħra tal-immaġni. Il-pakkett rpm huwa disponibbli fuq Github u tista 'tinstallah kif muri.

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

Pass 5: Installa u Ikkonfigura Odoo f'CentOS 8

9. Se nżidu utent tas-sistema ġdid li se nużaw biex imexxu s-servizz Odoo. F'din l-illustrazzjoni, se noħolqu utent imsejjaħ Odoo, madankollu, tħossok liberu li tagħżel username arbitrarju. Id-direttorju tad-dar jinsab fid-direttorju /opt/odoo.

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

10. Biex tibda tinstalla Odoo, l-ewwel aqleb għall-utent Odoo li ħloqna hawn fuq.

$ sudo su - odoo

11. Imbagħad ikklona r-repożitorju git.

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

12. Sussegwentement, kklona l-ambjent virtwali kif muri.

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

13. Ladarba jinħoloq l-ambjent virtwali, attivah billi tuża l-kmand li ġej.

$ source odoo13-venv/bin/activate

Kif tista 'tosserva, il-pront jinbidel kif muri.

14. Ġewwa l-ambjent virtwali, installa l-moduli Python meħtieġa biex l-installazzjoni ta 'Odoo tmur bla xkiel.

$ pip3 install -r odoo13/requirements.txt

15. Ladarba l-installazzjoni tal-moduli Python tkun lesta, oħroġ mill-ambjent virtwali u mur lura għall-utent sudo.

$ deactivate && exit

16. Għalkemm fakultattiv. L-aħjar prattika tiddetta l-installazzjoni ta 'moduli tad-dwana f'direttorju separat. B'dan f'moħħna, se nipproċedu biex noħolqu direttorju għal moduli tad-dwana u aktar tard nassenjaw il-pussess tad-direttorju lill-utent 'Odoo'.

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

17. Bl-istess mod, aħna se noħolqu direttorju ta 'log personalizzat u fajl ta' log kif muri.

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

18. Sussegwentement, oħloq fajl ta 'konfigurazzjoni apposta għal Odoo kif muri.

$ sudo vim /etc/odoo.conf

Paste l-konfigurazzjoni li ġejja u ssejvja l-fajl.

[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

Kun żgur li tissostitwixxi l-strong_password bil-password preferuta tiegħek.

Pass 6: Oħloq Fajl tal-Unità Odoo Systemd

19. Issa, oħloq fajl ta 'unità systemd għal Odoo.

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

Paste l-konfigurazzjoni li ġejja u ssejvja l-fajl.

[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 tal-bidliet ġodda li saru fil-fajl.

$ sudo systemctl daemon-reload

21. Imbagħad ibda u ppermetti Odoo kif muri.

$ sudo systemctl start odoo13
$ sudo systemctl enable odoo13

22. Biex tikkonferma l-istatus ta 'Odoo, mexxi l-kmand:

$ sudo systemctl status odoo13

23. Tista 'wkoll tuża l-kmand netstat biex tivverifika jekk Odoo hux qed jisma' fuq il-port 8069 - li huwa l-port default tiegħu.

$ sudo netstat -pnltu | grep 8069

24. Biex Odoo ikun aċċessibbli fuq browser, iftaħ il-port fuq il-firewall.

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

Pass 7: Installa Nginx bħala Reverse Proxy għal Odoo

25. Fl-aħħarnett, se ninstallaw is-server tal-web Nginx li se jaġixxi bħala prokura inversa għall-istanza Odoo tagħna. Allura, mexxi l-kmand:

$ sudo dnf install nginx

26. Sussegwentement, oħloq fajl ospitanti virtwali ġdid.

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

u paste l-konfigurazzjoni li ġejja kif muri.

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;
}

Issejvja u oħroġ mill-fajl tal-konfigurazzjoni.

27. Issa ibda u ppermetti Nginx webserver.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

28. Ikkonferma li Nginx qed jaħdem kif muri.

$ sudo systemctl status nginx

F'dan il-punt, aħna kollha lesti bil-konfigurazzjoni. L-aħħar pass huwa li tiffinalizza s-setup fuq web browser.

Pass 8: Tiffinalizza Setup Odoo

29. Ibda web browser u żur l-IP tas-server tiegħek kif muri.

http://server-ip/

Se tintwera paġna web simili għal dik ta' hawn taħt. Għall-password prinċipali, uża l-password speċifikata fil-Pass 5 waqt li toħloq fajl tal-konfigurazzjoni Odoo tad-dwana. Imbagħad ipproċedi biex imla l-entrati l-oħra kollha u kklikkja fuq il-buttuna 'Oħloq database'.

30. Dan iwassalk għad-dashboard ta 'Odoo li juri l-applikazzjonijiet varji li jistgħu jiġu installati.

U dan jagħlaq it-tutorja tagħna għal-lum. F'din il-gwida, tgħallimt kif tinstalla Odoo fuq CentOS 8.