Android

Kuinka asentaa odoo 13 ubuntu 18.04: een

Odoo suomalainen laskupohja (Odoo versio 10)

Odoo suomalainen laskupohja (Odoo versio 10)

Sisällysluettelo:

Anonim

Odoo on suosittu avoimen lähdekoodin yrityssovellusten sarja. Se tarjoaa joukon sovelluksia, mukaan lukien CRM, verkkokauppa, verkkosivustojen rakentaja, laskutus, kirjanpito, valmistus, varasto, projektinhallinta, inventaario ja paljon muuta, kaikki saumattomasti integroituna.

Odoo voidaan asentaa monin tavoin käyttötavasta ja käytettävissä olevasta tekniikasta riippuen. Helpoin ja nopein tapa asentaa Odoo on käyttää virallisia Odoo APT -varastoja.

Odoo: n asentaminen virtuaaliympäristöön tai asentaminen Docker-säilöksi antaa sinulle mahdollisuuden hallita paremmin järjestelmän kokoonpanoa ja käyttää useita Odoo-versioita samassa järjestelmässä.

Tässä oppaassa opastamme sinua asentamaan ja ottamaan käyttöön Odoo 13 Python-virtuaaliympäristössä Ubuntu 18.04: ssä. Lataamme Odoo heidän Github-arkistostaan ​​ja käytämme Nginxiä käänteisenä välityspalvelimena.

Edellytysten asentaminen

Kirjaudu sisään Ubuntun sudo-käyttäjänä ja päivitä Apt-välimuisti:

sudo apt update

Asenna Git, Pip, Node.js ja Odoo-riippuvuuksien luomiseen tarvittavat työkalut:

sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less

Järjestelmäkäyttäjän luominen

Luo järjestelmän käyttäjä, joka ajaa Odoo-nimistä odoo13 kotihakemistolla /opt/odoo13 :

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

Voit asettaa käyttäjän nimen mille tahansa haluamallesi, kunhan luot PostgreSQL-käyttäjän samalla nimellä.

PostgreSQL: n asentaminen ja määrittäminen

Odoo käyttää PostgreSQL: tä tietokannan taustana. Asenna PostgreSQL suorittamalla seuraava komento:

sudo apt install postgresql

Kun asennus on valmis, luo PostgreSQL-käyttäjä, jolla on sama nimi kuin aiemmin luodulla järjestelmän käyttäjällä, tässä tapauksessa odoo13 :

sudo su - postgres -c "createuser -s odoo13"

Wkhtmltopdf-tiedoston asentaminen

wkhtmltox paketti tarjoaa joukon avoimen lähdekoodin komentorivityökaluja, jotka voivat wkhtmltox HTML-tiedoston PDF-muotoon ja erilaisiin kuvamuotoihin. Jotta voit tulostaa PDF-raportteja, sinun on asennettava wkhtmltopdf työkalu. Odoo: n suositeltava versio on 0.12.5 , jota ei ole saatavana oletus Ubuntu 18.04 -varastoissa.

Lataa paketti seuraavalla wget-komennolla:

wget

Kun lataus on valmis, asenna paketti kirjoittamalla:

sudo apt install./wkhtmltox_0.12.5-1.bionic_amd64.deb

Odoo 13: n asentaminen ja määrittäminen

Kuten aiemmin mainittiin, asennamme Odon lähteestä eristetyn Python-virtuaaliympäristön sisään.

Vaihda ensin käyttäjäksi “odoo13”:

sudo su - odoo13

Klooni Odoo 13 -lähdekoodi GitHubista:

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

Kun lataus on valmis, luo uusi Python-virtuaalinen ympäristö Odoolle:

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

Aktivoi ympäristö seuraavalla komennolla:

source odoo-venv/bin/activate

Asenna kaikki vaadittavat Python-moduulit pip3: lla:

pip3 install wheel pip3 install -r odoo/requirements.txt Jos asennuksen aikana tapahtuu käännösvirheitä, varmista, että kaikki Installing Prerequisites -osiossa luetellut vaadittavat riippuvuudet on asennettu.

Kun olet valmis, poista ympäristö käytöstä kirjoittamalla:

deactivate

Luomme uuden hakemiston, joka sisältää kolmannen osapuolen lisäykset.

mkdir /opt/odoo13/odoo-custom-addons

Myöhemmin lisäämme tämän hakemiston parametriin addons_path . Tämä parametri määrittelee luettelon hakemistoista, joissa Odoo etsii moduuleja.

Vaihda takaisin sudo-käyttäjääsi:

exit

Luo seuraavan sisällön asetustiedosto:

sudo nano /etc/odoo13.conf /etc/odoo13.conf

; This is the password that allows database operations: admin_passwd = my_admin_passwd db_host = False db_port = False db_user = odoo13 db_password = False addons_path = /opt/odoo13/odoo/addons, /opt/odoo13/odoo-custom-addons Muista vaihtaa my_admin_passwd jotain turvallisempaa.

Järjestelmällisen yksikötiedoston luominen

Avaa tekstieditori ja luo palveluyksikötiedosto, nimeltään odoo13.service jolla on seuraava sisältö:

sudo nano /etc/systemd/system/odoo13.service /etc/systemd/system/odoo13.service

Description=Odoo13 Requires=postgresql.service After=network.target postgresql.service Type=simple SyslogIdentifier=odoo13 PermissionsStartOnly=true User=odoo13 Group=odoo13 ExecStart=/opt/odoo13/odoo-venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf StandardOutput=journal+console WantedBy=multi-user.target

Ilmoita systemd: lle, että uusi yksikötiedosto on olemassa:

sudo systemctl daemon-reload

Käynnistä Odoo-palvelu ja salli sen käynnistyä käynnistyessä suorittamalla:

sudo systemctl enable --now odoo13

Varmista palvelun tila:

sudo systemctl status odoo13

Lähtön tulisi näyttää jonkinlaiselta kuin alla, mikä osoittaa, että Odoo-palvelu on aktiivinen ja käynnissä.

● odoo13.service Loaded: loaded (/etc/systemd/system/odoo13.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2019-10-19 20:06:23 UTC; 3s ago Main PID: 1860 (python3) Tasks: 4 (limit: 2362) CGroup: /system.slice/odoo13.service └─1860 /opt/odoo13/odoo-venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf

Käytä alla olevaa komentoa nähdäksesi Odoo-palvelun kirjaamat viestit:

sudo journalctl -u odoo13

Asennuksen testaaminen

Avaa selain ja kirjoita: http://:8069 http://:8069

Jos asennus onnistuu, seuraavanlainen näyttö tulee näkyviin:

Nginxin määrittäminen SSL-lopetuspalvelimeksi

Odoo-oletusverkkopalvelin palvelee liikennettä HTTP: n kautta. Jotta Odoo-käyttöönotto olisi turvallisempaa, määritämme Nginxin SSL-päätevälityspalvelimeksi, joka palvelee liikennettä HTTPS: n kautta.

SSL-päätevälityspalvelin on välityspalvelin, joka käsittelee SSL-salausta / salauksen purkamista. Tämä tarkoittaa, että lopetuspalvelin (Nginx) käsittelee ja purkaa saapuvat TLS-yhteydet (HTTPS) ja välittää salaamattomat pyynnöt sisäiselle palvelulle (Odoo). Nginxin ja Odoo: n välistä liikennettä ei salata (HTTP).

Käänteisen välityspalvelimen käyttö antaa sinulle paljon etuja, kuten kuormituksen tasapainotus, SSL-lopettaminen, välimuisti, pakkaus, staattisen sisällön tarjoaminen ja paljon muuta.

Varmista, että olet täyttänyt seuraavat ehdot, ennen kuin jatkat tässä osiossa:

  • Verkkotunnus, joka osoittaa julkisen palvelimen IP-osoitteeseen. Käytämme example.com .Nginx install.SSL -varmennetta. Voit asentaa ilmaisen Let's Encrypt SSL -sertifikaatin.

Avaa tekstieditori ja luo / muokkaa verkkotunnuspalvelinlohkoa:

sudo nano /etc/nginx/sites-enabled/example.com

Seuraava kokoonpano asettaa SSL-lopetuksen, HTTP-HTTPS-uudelleenohjauksen, WWW-muun kuin WWW-uudelleenohjauksen, tallentaa staattiset tiedostot välimuistiin ja ottaa käyttöön GZip-pakkauksen.

/etc/nginx/sites-enabled/example.com

# Odoo servers upstream odoo { server 127.0.0.1:8069; } upstream odoochat { server 127.0.0.1:8072; } # HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; # Proxy headers 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; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; # log files access_log /var/log/nginx/odoo.access.log; error_log /var/log/nginx/odoo.error.log; # Handle longpoll requests location /longpolling { proxy_pass http://odoochat; } # Handle / requests location / { proxy_redirect off; proxy_pass http://odoo; } # Cache static files location ~* /web/static/ { proxy_cache_valid 200 90m; proxy_buffering on; expires 864000; proxy_pass http://odoo; } # Gzip gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript; gzip on; } Muista korvata esimerkki.com Odoo-verkkotunnuksellasi ja määrittää oikea polku SSL-varmennetiedostoihin. Tässä kokoonpanossa käytetyt katkelmat luodaan tässä oppaassa.

Kun olet valmis, käynnistä Nginx-palvelu uudelleen:

sudo systemctl restart nginx

Seuraavaksi meidän on kerrottava Odoolle käyttää välityspalvelinta. Avaa niin määritystiedosto ja lisää seuraava rivi:

/etc/odoo13.conf

proxy_mode = True

Käynnistä Odoo-palvelu uudelleen, jotta muutokset tulevat voimaan:

sudo systemctl restart odoo13

Tässä vaiheessa käänteinen välityspalvelin on määritetty, ja voit käyttää Odoo-ilmentymääsi osoitteessa: https://example.com

Sidontarajapinnan vaihtaminen

Tämä vaihe on valinnainen, mutta se on hyvä tietoturvakäytäntö.

Oletuksena Odoo-palvelin kuuntelee porttia 8069 kaikilla rajapinnoilla. Jos haluat estää suoran pääsyn Odoo-ilmentymään, voit joko estää kaikkien julkisten rajapintojen portin 8069 tai pakottaa Odoo kuuntelemaan vain paikallisella käyttöliittymällä.

Määritämme Odoo kuuntelemaan vain 127.0.0.1 . Avaa kokoonpano ja lisää seuraavat kaksi riviä tiedoston loppuun:

/etc/odoo13.conf

xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1

Tallenna määritystiedosto ja käynnistä Odoo-palvelin uudelleen, jotta muutokset tulevat voimaan:

sudo systemctl restart odoo13

Monikäsittelyn käyttöönotto

Oletuksena Odoo toimii monisäikeisessä tilassa. Tuotannon käyttöönottoa varten on suositeltavaa vaihtaa moniprosessointipalvelimeen, koska se lisää vakautta ja käyttää järjestelmäresursseja paremmin.

Moniprosessoinnin mahdollistamiseksi sinun on muokattava Odoo-kokoonpanoa ja asetettava nolla luku työntekijäprosesseja. Työntekijöiden lukumäärä lasketaan perustuen järjestelmän CPU-ytimien määrään ja käytettävissä olevaan RAM-muistiin.

Työntekijöiden lukumäärän ja tarvittavan RAM-muistin koon laskemiseksi virallisen Odoo-asiakirjan mukaan voit käyttää seuraavia kaavoja ja oletuksia:

Työntekijän määrän laskeminen

  • Teoreettinen suurin työntekijän lukumäärä = (system_cpus * 2) + 11 työntekijää voi palvella ~ = 6 samanaikaista käyttäjääCron työntekijät vaativat myös prosessoria

RAM-muistin koon laskeminen

  • Katsomme, että 20% kaikista pyynnöistä on raskaita ja 80% on kevyempiä. Raskaat pyynnöt käyttävät noin 1 Gt RAM-muistia, kun taas kevyemmät käyttävät noin 150 Mt RAMNeeded RAM-muistia = työntekijöiden lukumäärä number_of_workers * ((light_worker_ratio * light_worker_ram_estimation) + (heavy_worker_ratio * heavy_worker_ram_estimation))

grep -c ^processor /proc/cpuinfo

Oletetaan, että sinulla on järjestelmä, jossa on 4 suorittimen ydintä, 8 Gt RAM-muistia ja 30 samanaikaista Odoo-käyttäjää.

  • 30 users / 6 = **5** (5 on teoreettinen tarvittavien työntekijöiden lukumäärä) (4 * 2) + 1 = **9** (9 on teoreettinen suurin työntekijöiden lukumäärä)

Yllä olevan laskelman perusteella voit käyttää 5 työntekijää + 1 työntekijää cron-työntekijälle eli yhteensä 6 työntekijää.

Laske RAM-muistin kulutus työntekijöiden määrän perusteella:

  • RAM = 6 * ((0.8*150) + (0.2*1024)) ~= 2 GB of RAM

Laskelma osoittaa, että Odoo-asennus vaatii noin 2 Gt RAM-muistia.

Voit siirtyä monikäsittelytilaan avaamalla asetustiedoston ja lisäämällä lasketut arvot:

/etc/odoo13.conf

limit_memory_hard = 2684354560 limit_memory_soft = 2147483648 limit_request = 8192 limit_time_cpu = 600 limit_time_real = 1200 max_cron_threads = 1 workers = 5

Käynnistä Odoo-palvelu uudelleen, jotta muutokset tulevat voimaan:

sudo systemctl restart odoo13

Loput järjestelmäresursseista käyttävät muut tällä järjestelmällä toimivat palvelut. Tässä oppaassa asensimme Odoo yhdessä PostgreSQL: n ja Nginxin kanssa samaan palvelimeen. Asennustasi riippuen palvelimellasi saattaa olla käynnissä myös muita palveluita.

johtopäätös

Tämä opas opasi Odoo 13: n asennuksen Ubuntu 18.04: een Python-virtuaaliympäristöön käyttämällä Nginxiä käänteisenä välityspalvelimena. Olemme myös osoittaneet sinulle, kuinka ottaa käyttöön moniprosessointi ja optimoida Odoo tuotantoympäristölle.

Voit myös tarkistaa opetusohjelmasi siitä, miten luodaan päivittäin automaattisia varmuuskopioita Odoo-tietokannoista.

ubuntu odoo postgresql python pip nginx välityspalvelin ssl