Jinsi ya Kufunga Odoo (Chanzo Huria ERP na CRM) kwenye CentOS 8


Odoo ni programu huria ya usimamizi wa biashara ya kila moja ambayo husafirishwa ikiwa na msururu wa maombi mbalimbali ya biashara kwa matumizi mbalimbali kama vile eCommerce, usimamizi wa miradi, dawati la usaidizi, uhasibu, orodha, na mjenzi wa tovuti kutaja machache.

Katika makala haya, utajifunza jinsi ya kusakinisha Odoo (Open Source ERP na CRM) kwenye CentOS 8 na RHEL 8.

Hatua ya 1: Sasisha Mfumo na Usakinishe Hifadhi ya EPEL

1. Hatua ya kwanza katika kusakinisha Odoo ni kusakinisha hazina ya EPEL ambayo hutoa seti ya vifurushi vya ziada kwa ajili ya Linux ya biashara. Lakini kwanza, hakikisha kusasisha mfumo kama inavyoonyeshwa.

$ sudo dnf update

2. Baada ya kusasisha mfumo kukamilika, sakinisha hazina ya EPEL kama inavyoonyeshwa.

$ sudo dnf install epel-release

Hatua ya 2: Sakinisha Python3 na Vitegemezi Vingine

3. Kisha, sakinisha Python 3 na vitegemezi vingine vinavyohitajika ambavyo vinahitajika na Odoo kama inavyoonyeshwa.

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

Hatua ya 3: Sakinisha na Usanidi PostgreSQL katika CentOS 8

4. PostgreSQL ni mfumo huria na huria wa usimamizi wa uhusiano wa hifadhidata unaotumika katika safu kubwa ya programu kuhifadhi data. Tunahitaji kusakinisha PostgreSQL kwa Odoo na kufanya hivi, endesha amri.

$ sudo dnf install postgresql-server postgresql-contrib

5. Kisha, anzisha kundi jipya la hifadhidata la PostgreSQL.

$ sudo postgresql-setup initdb

6. Mara tu kikundi cha hifadhidata kitakapoanzishwa, anzisha upya, na uwashe PostgreSQL kama inavyoonyeshwa.

$ sudo systemctl restart postgresql
$ sudo systemctl enable postgresql

7. Ili kuthibitisha kwamba hifadhidata iko na inafanya kazi, tekeleza.

$ sudo systemctl status postgresql

Hatua ya 4: Sakinisha Zana ya Wkhtmltopdf katika CentOS 8

8. Ili Odoo ichapishe ripoti za PDF, inahitaji kifurushi kiitwacho Wkhtmltopdf. Hii inatumika kutoa HTML kwa PDF na miundo mingine ya picha. Kifurushi cha rpm kinapatikana kwenye Github na unaweza kukisakinisha kama inavyoonyeshwa.

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

Hatua ya 5: Sakinisha na Usanidi Odoo katika CentOS 8

9. Tutaongeza mtumiaji mpya wa mfumo ambaye tutamtumia kuendesha huduma ya Odoo. Katika kielelezo hiki, tutaunda mtumiaji anayeitwa Odoo, hata hivyo, jisikie huru kuchagua jina la mtumiaji kiholela. Saraka ya nyumbani iko katika saraka ya /opt/odoo.

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

10. Ili kuanza kusakinisha Odoo, kwanza badili hadi kwa mtumiaji wa Odoo ambaye tulitengeneza hapo juu.

$ sudo su - odoo

11. Kisha unganisha hazina ya git.

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

12. Kisha, linganisha mazingira ya mtandaoni kama inavyoonyeshwa.

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

13. Mara tu mazingira ya mtandaoni yameundwa, iwashe kwa kutumia amri ifuatayo.

$ source odoo13-venv/bin/activate

Kama unaweza kuona, mabadiliko ya haraka kama inavyoonyeshwa.

14. Ndani ya mazingira ya mtandaoni, sakinisha moduli za Python zinazohitajika ili usakinishaji wa Odoo uende vizuri.

$ pip3 install -r odoo13/requirements.txt

15. Mara tu usakinishaji wa moduli za Python ukamilika, toka kwenye mazingira ya mtandaoni na urudi kwa mtumiaji wa sudo.

$ deactivate && exit

16. Ingawa ni hiari. Utendaji bora unaamuru usakinishaji wa moduli maalum katika saraka tofauti. Kwa kuzingatia hilo, tutaendelea kuunda saraka kwa moduli maalum na baadaye kukabidhi umiliki wa saraka kwa mtumiaji wa 'Odoo'.

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

17. Kwa njia hiyo hiyo, tutaunda saraka ya logi ya desturi na faili ya logi kama inavyoonyeshwa.

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

18. Kisha, tengeneza faili maalum ya usanidi kwa Odoo kama inavyoonyeshwa.

$ sudo vim /etc/odoo.conf

Bandika usanidi ufuatao na uhifadhi faili.

[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

Hakikisha umebadilisha neno la siri_kali na nenosiri lako unalopendelea.

Hatua ya 6: Unda Faili ya Kitengo cha Odoo Systemd

19. Sasa, unda faili ya kitengo cha mfumo kwa Odoo.

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

Bandika usanidi ufuatao na uhifadhi faili.

[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. Pakia upya mfumo wa mabadiliko mapya yaliyofanywa kwenye faili.

$ sudo systemctl daemon-reload

21. Kisha anza na uwashe Odoo kama inavyoonyeshwa.

$ sudo systemctl start odoo13
$ sudo systemctl enable odoo13

22. Ili kuthibitisha hali ya Odoo, endesha amri:

$ sudo systemctl status odoo13

23. Unaweza pia kutumia amri ya netstat kuangalia kama Odoo inasikiliza kwenye port 8069 - ambayo ndiyo mlango wake chaguomsingi.

$ sudo netstat -pnltu | grep 8069

24. Ili Odoo iweze kufikiwa kwenye kivinjari, fungua mlango kwenye ngome.

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

Hatua ya 7: Sakinisha Nginx kama Wakala wa Nyuma wa Odoo

25. Hatimaye, tutasakinisha seva ya wavuti ya Nginx ambayo itafanya kazi kama proksi ya kinyume kwa mfano wetu wa Odoo. Kwa hivyo, endesha amri:

$ sudo dnf install nginx

26. Kisha, unda faili mpya ya seva pangishi.

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

na ubandike usanidi ufuatao kama inavyoonyeshwa.

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

Hifadhi na uondoke kwenye faili ya usanidi.

27. Sasa anza na uwashe seva ya wavuti ya Nginx.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

28. Thibitisha kuwa Nginx inaendesha jinsi inavyoonyeshwa.

$ sudo systemctl status nginx

Katika hatua hii, sote tumemaliza na usanidi. Hatua ya mwisho ni kukamilisha usanidi kwenye kivinjari.

Hatua ya 8: Kukamilisha Usanidi wa Odoo

29. Zindua kivinjari na utembelee IP ya seva yako kama inavyoonyeshwa.

http://server-ip/

Ukurasa wa wavuti unaofanana na ulio hapa chini utaonyeshwa. Kwa nenosiri kuu, tumia nenosiri lililobainishwa katika Hatua ya 5 unapounda faili maalum ya usanidi ya Odoo. Kisha endelea kujaza maingizo mengine yote na ubofye kitufe cha 'Unda hifadhidata'.

30. Hii inakuleta kwenye dashibodi ya Odoo inayoonyesha programu mbalimbali zinazoweza kusakinishwa.

Na hii inahitimisha mafunzo yetu ya leo. Katika mwongozo huu, umejifunza jinsi ya kusakinisha Odoo kwenye CentOS 8.