Kafa OpenERP (Odoo) 9 tare da Nginx akan RHEL/CentOS da Debian/Ubuntu


Odoo, wanda aka fi sani da OpenERP, shine software na kasuwanci mai tushe na ERP wanda aka rubuta a cikin Python wanda ya zo tare da rukunin kayan aikin yanar gizon da aka tsara don kowane kasuwanci, kamar Masu Gina Yanar Gizo, eCommerce modules, Billing and Accounting, Human Resources, Point of Sale, Abokin Ciniki Gudanar da Dangantakar Abokin Ciniki, Ƙididdigar ƙira, Taɗi kai tsaye da sauran ƙa'idodi da fasali da yawa.

Wannan koyawa za ta jagorance ku akan yadda ake shigar da sabuwar barga ta Odoo (version 9) akan tsarin RHEL/CentOS/Fedora ko Debian/Ubuntu tare da sabar Nginx don yin aiki azaman wakili na baya a gaba don samun damar yanar gizo. dubawa cikin sauri, amintacce kuma daga daidaitattun tashoshin binciken gidan yanar gizo, ba tare da buƙatar ɗora wa masu amfani nauyi don amfani da mashigai na tura mai bincike ba.

Mataki 1: Shigar da Amintaccen Bayanan Bayani na PostgreSQL

1. Kafin ka fara ci gaba da shigarwa na Odoo da farko ka tabbatar cewa tsarin naka yana jigilar kaya tare da fakitin da ma'ajiyar Epel ta samar don shigar da bayanan PostgreSQL na baya.

Hakanan tabbatar cewa uwar garken ya sabunta tare da sabbin fakitin tsaro da faci ta hanyar ba da umarni na ƙasa:

----------- On RedHat/CentOS based systems ----------- 
# yum update
# yum install -y epel-release

----------- On Debian/Ubuntu based systems ----------- 
# apt-get update && sudo apt-get upgrade # On Debian 

2. Na gaba, ci gaba da shigar da PostgreSQL database uwar garken, wanda shine tsoho database da Odoo ke amfani da shi don adana bayanai.

----------- On RedHat/CentOS based systems -----------
# yum install postgresql-server

----------- On Debian/Ubuntu based systems -----------
# apt-get install postgresql postgresql-client

Fara bayanan bayanan PostgreSQL.

# postgresql-setup initdb	

Yanzu a ƙarshe fara bayanan PostgreSQL ta hanyar ba da umarnin da ke ƙasa:

----------- On SystemD systems -----------
# systemctl start postgresql

----------- On SysVinit systems -----------
# service postgresql start

A matsayin ƙarin mataki don amintaccen mai amfani na PostgreSQL, wanda ke da kalmar sirri mara kyau, ba da umarnin da ke ƙasa tare da tushen gata don canza kalmar wucewa:

sudo -u postgres psql
postgres=# \password postgres

Mataki 2: Sanya Odoo 9 - BuɗeERP

3. Domin shigar da Odoo 9 daga ma'ajiyar hukuma, da farko ƙirƙirar sabon fayil na yum na Odoo tare da abun ciki mai zuwa:

# vi /etc/yum.repos.d/odoo.repo

Ƙara abin da ke gaba zuwa fayil odoo.repo.

[odoo-nightly]
name=Odoo Nightly repository
baseurl=http://nightly.odoo.com/9.0/nightly/rpm/
enabled=1
gpgcheck=1
gpgkey=https://nightly.odoo.com/odoo.key

A kan Debian/Ubuntu suna ba da umarni mai zuwa don ƙara wuraren ajiyar Odoo:

# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" >> /etc/apt/sources.list

4. Na gaba shigar Odoo 9 software daga binaries.

----------- On RedHat/CentOS based systems -----------
# yum install odoo

----------- On Debian/Ubuntu based systems -----------
# apt-get update && sudo apt-get install odoo

Na gaba, fara shi kuma duba halin daemon ta hanyar ba da umarni masu zuwa:

----------- On SystemD systems -----------
# systemctl start odoo
# systemctl status odoo

----------- On SysVinit systems -----------
# service odoo start
# service odoo status

A matsayin ƙarin mataki zaku iya tabbatar da tashar sauraron sabis na Odoo ta hanyar gudanar da umarnin ss ko netstat:

# ss -tulpn
OR
# netstat -tulpn

Ta hanyar tsoho, Odoo yana sauraron haɗin yanar gizo akan tashar jiragen ruwa 8069/TCP.

Mataki 3: Sanya Odoo daga Interface na Yanar Gizo

5. Domin saita Odoo ya kara kunna mai bincike da samun damar Intanet na Odoo a URI mai zuwa:

http://host-or-IP-address:8069/

6. Nan gaba za a sa ka ƙirƙiri sabon database na Odoo kuma saita kalmar sirri mai ƙarfi don admin account.

7. Da zarar an ƙirƙiro ma'adanar bayanai za a tura ku zuwa gidan yanar gizon gudanarwa inda za ku iya ƙara shigar da aikace-aikacen da kuma daidaita ERP ɗin ku. Don lokacin barin aikace-aikacen azaman tsoho kuma fita.

8. Da zarar an dawo a allon shiga, danna kan Sarrafa Databases mahada kuma Saita babban kalmar sirri don amintaccen manajan bayanai na Odoo.

9. Da zarar kun kulla Odoo database Manager za ku iya shiga cikin aikace-aikacen ku kuma fara daidaita shi tare da apps da saitunan da kuke buƙata.

Mataki 4: Shiga Odoo daga Nginx Frontend

Kuna iya saita tsarin don masu amfani su sami damar shiga rukunin yanar gizon Odoo ta hanyar Nginx reverse proxy. Wannan na iya sauƙaƙe masu amfani don kewaya yanar gizo na Odoo da sauri, saboda wasu caching na gaba na Nginx, akan daidaitattun tashoshin HTTP ba tare da buƙatar shigar da tashar 8069 na http da hannu akan masu binciken su ba.

Domin saita wannan saitin da farko kuna buƙatar shigar da saita Nginx akan tsarin ku ta hanyar ba da matakai masu zuwa.

10. Da farko shigar Nginx sabar yanar gizo tare da umarni mai zuwa:

----------- On RedHat/CentOS based systems -----------
# yum install nginx

----------- On Debian/Ubuntu based systems -----------
# apt-get install nginx

11. Na gaba, buɗe babban fayil ɗin Nginx tare da editan rubutu kuma saka toshe mai zuwa bayan layin wanda ya ƙayyade tushen tushen Nginx.

----------- On RedHat/CentOS based systems -----------
# vi /etc/nginx/nginx.conf 

----------- On Debian/Ubuntu based systems -----------
# nano /etc/nginx/sites-enabled/default

Ƙara ɓangarorin daidaitawa mai zuwa zuwa fayil nginx.conf:

 location / {
        proxy_pass http://127.0.0.1:8069;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

Hakanan, sharhi Nginx wuri sanarwa ta sanya # a gaban layin masu zuwa. Yi amfani da hoton allo na ƙasa azaman jagora.

#location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
        #       try_files $uri $uri/ =404;
        #}

12. Bayan kun yi duk canje-canjen da ke sama, sake kunna Nginx daemon amma ba kafin ku gudanar da umarni getenforce don bincika idan an kunna Selinux akan injin ku.

Idan an saita manufar zuwa An tilastawa ta hanyar ba da umarnin da ke ƙasa:

# setenforce 0
# getenforce

Don kashe Selinux gaba ɗaya, buɗe fayil /etc/selinux/config tare da editan rubutu kuma saita layin SELINUX don kashewa.

Idan ba kwa son musaki manufofin Seliux gaba ɗaya kuma kawai kuna son shakata da ƙa'idodi don ba da wakili na Nginx tare da izinin shiga soket ɗin cibiyar sadarwa gudanar da umarni mai zuwa:

# setsebool httpd_can_network_connect on -P
# getsebool -a | grep httpd 

Sannan, sake kunna Nginx daemon don yin la'akari da canje-canjen da aka yi a sama:

# systemctl restart nginx
OR
# service nginx restart

13. Wannan mataki na gaba shine fasalin zaɓin tsaro kuma yana nuna canjin soket ɗin hanyar sadarwa wanda aikace-aikacen Odoo ke sauraro, canza adireshin ɗaurin daga duk musaya (ko adireshin) zuwa localhost kawai.

Dole ne a yi wannan canjin kawai tare da Nginx reverse proxy saboda gaskiyar cewa ɗaure aikace-aikacen akan localhost kawai yana nuna cewa Odoo ba zai sami dama daga masu amfani a cikin LAN ko wasu cibiyoyin sadarwa ba.

Domin kunna wannan canjin, buɗe fayil ɗin /etc/odoo/openerp-server.conf sannan a gyara layin xmlrpc_interface don ɗaure kan localhost kawai kamar yadda aka ba da shawara akan hoton da ke ƙasa.

xmlrpc_interface = 127.0.0.1

Don yin la'akari da canje-canje sake kunna sabis na Odoo ta hanyar aiwatar da umarnin da ke ƙasa:

# systemctl restart odoo.service
OR
# service odoo restart

14. Idan na'urar ku tana da layin tsaro na cibiyar sadarwa da wuta ta samar, ba da umarni masu zuwa don buɗe tashoshin kashe wuta zuwa duniyar waje don wakili na Nginx:

----------- On FirewallD based systems -----------
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload
----------- On IPTables based systems -----------
# iptables -A INPUT -p tcp -m tcp --sport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
# /etc/init.d/iptables save
----------- On UFW Firewall systems -----------
# ufw allow http

15. Haka ne! Yanzu zaku iya samun nasarar shiga aikace-aikacenku na ERP Odoo ta ziyartar adireshin IP na uwar garken ku ko sunan yanki.

http://192.168.1.40
http://domain.tld

16. Domin gudanar da ayyukan ta atomatik bayan tsarin sake kunnawa yana ba da umarni mai zuwa don kunna duk tsarin daemons-fadi tare da harbi daya.

------------ On SystemD Systems ------------  
# systemctl enable postgresql.service 
# systemctl enable odoo.service
# systemctl enable nginx.service
------------ On SysVinit Systems ------------ 

# chkconfig postgresql on
# chkconfig odoo on
# chkconfig nginx on

NOTE: Don rahotannin PDF, dole ne ku zazzage kuma ku shigar da fakitin binary wkhtmltopdf don rarraba ku ta hanyar ziyartar hanyar haɗin yanar gizo mai zuwa Shigar wkhtmltopdf don Maida Shafin HTML zuwa PDF.