Odoo je rešenje za upravljanje preduzećem otvorenog koda koje nudi širok spektar aplikacija za upravljanje preduzećima. U ovom članku, pokažaćemo vam kako da instalirate Odoo 18 na serveru Debian 12, od instalacije zavisnosti do postavljanja reverznog proksija za pristup Odoo-u putem sigurnog domena u HTTPS-u.
Preduslovi
Pre nego što započnete instalaciju, uverite se da imate čistu instalaciju Debiana 12 sa administratorskim pristupom. Ovaj vodič takođe pretpostavlja da imate SSH pristup vašem serveru.
1. Ažuriranje vašeg sistema
Prvi korak je da se uverite da je vaš sistem ažuriran. Pokrenite sledeće komande da biste ažurirali sve pakete instalirane na vašem Debian 12 sistemu.
sudo apt-get update && sudo apt-get upgrade -y
To garantuje da vaš sistem ima najnovije verzije softvera i bezbednosne zakrpe.
2. Konfigurišite vatrozid sa UFW
Bezbednost je od najveće važnosti, zato ćemo konfigurisati jednostavan vatrozid pomoću UFW (Uncomplicated Firewall). Pratite korake u nastavku:
Instalacija UFW
sudo apt install ufw
Dozvoliti SSH konekcije
sudo ufw allow OpenSSH sudo ufw enable
Dozvoliti HTTP i HTTPS konekcije
sudo ufw allow "WWW Full" sudo ufw reload
Provera statusa vatrozida
sudo ufw status
To omogućava da se osigura da je vatrozid aktivan i da su potrebne konekcije (SSH, HTTP, HTTPS) dozvoljene.
3. Instalacija potrebnih zavisnosti
Odoo 18 zahteva Python 3.11, koji je već uključen u Debian 12. Sada ćemo instalirati sve potrebne zavisnosti za Odoo, uključujući biblioteke za grafiku, kompresiju i konekcije sa PostgreSQL bazom podataka.
sudo apt install build-essential wget git python3.11-dev python3.11-venv \ libfreetype-dev libxml2-dev libzip-dev libsasl2-dev \ node-less libjpeg-dev zlib1g-dev libpq-dev \ libxslt1-dev libldap2-dev libtiff5-dev libopenjp2-7-dev libcap-dev
Ovi paketi su neophodni za optimalno funkcionisanje Odoo-a.
4. Kreirati sistemskog korisnika za Odoo
Preporučuje se da se kreira posvećen korisnik za pokretanje Odoo-a kako bi se izbegli konflikti sa drugim sistemskim procesima. Izvršite sledeću komandu da dodate korisnika:
sudo useradd -m -d /opt/odoo18 -Urs /bin/bash odoo18
To stvara korisnika pod imenom odoo18 sa ličnom fasciklom smeštenom na /opt/odoo18.
5. Instalacija PostgreSQL-a
Odoo funkcioniše sa PostgreSQL za upravljanje bazama podataka. Debian 12 uključuje PostgreSQL u svojim zvaničnim repozitorijumima, tako da je instalacija jednostavna.
sudo apt install postgresql
Zatim, moramo da kreiramo PostgreSQL korisnika za Odoo sa istim imenom kao sistemski korisnik:
sudo su - postgres -c "createuser -s odoo18"
6. Instalacija wkhtmltopdf
Odoo koristi wkhtmltopdf za generisanje izveštaja u PDF formatu iz HTML stranica. Verzija wkhtmltopdf dostupna za Debian 12 nije direktno kompatibilna, pa ćemo instalirati zakrpljenu verziju.
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb sudo apt install ./libssl1.1_1.1.1f-1ubuntu2_amd64.deb wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.bullseye_amd64.deb sudo apt install ./wkhtmltox_0.12.6.1-2.bullseye_amd64.deb
U slučaju problema sa instalacijom, možete pokušati da izvršite :
sudo apt install -f
7. Instalacija Odoo-a
Sada ćemo instalirati Odoo u virtuelnom Python okruženju. Počnite tako što ćete se prijaviti kao korisnik odoo18:
sudo su - odoo18
Kloni GitHub repozitorijum Odoo 18 :
git clone https://www.github.com/odoo/odoo --depth 1 --branch 18.0 odoo18
Zatim, kreirajte Python virtuelno okruženje i aktivirajte ga:
python3.11 -m venv odoo18-venv source odoo18-venv/bin/activate
Instalirajte potrebne Python zavisnosti za Odoo :
pip install wheel setuptools pip --upgrade pip install -r odoo18/requirements.txt
pip install phonenumbers
Jednom kada je instalacija završena, možete kreirati direktorijum za prilagođene module Odoo:
mkdir /opt/odoo18/odoo18/custom-addons
Napustite zatim korisnika odoo18 da biste kreirali Odoo konfiguracioni fajl:
exit
8. Kreirati Odoo konfiguracioni fajl
Napravite konfiguracioni fajl za Odoo u /etc/odoo18.conf :
sudo nano /etc/odoo18.conf
Dodajte sledeći sadržaj u datoteku:
[options] admin_passwd = m0d1fyth15 db_host = False db_port = False db_user = odoo18 db_password = False addons_path = /opt/odoo18/odoo18/addons,/opt/odoo18/odoo18/custom-addons
Zamenite lozinku sa sigurnijom lozinkom.
9. Kreirati systemd servisnu datoteku za Odoo
Da bismo upravljali Odoo-om kao servisom, moramo kreirati systemd unit fajl. Izvršite sledeću komandu:
sudo systemctl edit odoo18 --force --full
Dodajte sledeći sadržaj da biste konfigurisali Odoo kao uslugu:
[Unit] Description=odoo18 Requires=postgresql.service After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo18 PermissionsStartOnly=true User=odoo18 Group=odoo18 ExecStart=/opt/odoo18/odoo18-venv/bin/python3 /opt/odoo18/odoo18/odoo-bin -c /etc/odoo18.conf StandardOutput=journal+console [Install] WantedBy=multi-user.target
Zatim ponovo učitajte systemd servis i aktivirajte Odoo :
sudo systemctl daemon-reload sudo systemctl enable --now odoo18
Proverite da li Odoo radi sa :
sudo systemctl status odoo18
Možete sada pristupiti Odoo-u tako što ćete otići na http://vaša_ip_servera:8069.
10. Instalirati i konfigurisati reverzni proxy sa Nginx-om
Da bismo pristupili Odoo-u putem domena, moramo konfigurisati reverzni proxy sa Nginx-om. Počnite sa instalacijom Nginx-a:
sudo apt install nginx
Zatim, kreirajte Nginx server blok za Odoo :
sudo nano /etc/nginx/conf.d/odoo.conf
Dodajte sledeću konfiguraciju :
server { listen 80; server_name yourdomain.com; location / { proxy_pass http://127.0.0.1:8069; 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; } }
Restartujte Nginx da primenite izmene:
sudo systemctl restart nginx
11. Osigurati sa SSL putem Certbota
Na kraju, da biste osigurali svoj sajt sa HTTPS-om, instalirajte Certbot i dobijte SSL sertifikat:
sudo apt install certbot python3-certbot-nginx sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email votre_email@example.com -d yourdomain.com
Certbot će automatski konfigurisati HTTPS za vašu domenu.
Čestitamo, sada ste instalirali Odoo 18 na Debian 12, obezbedili svoj sajt sa SSL-om i konfigurisali reverse proxy Nginx da pristupite Odoo putem domena.