How to Install Odoo 13 on Ubuntu 18.04
תוכן עניינים:
- התקנת תנאים מוקדמים
- יצירת משתמש מערכת
- התקנה וקביעת תצורה של PostgreSQL
- התקנת Wkhtmltopdf
- התקנה ותצורה של Odoo 13
- יצירת קובץ Systemd
- בדיקת ההתקנה
- קביעת תצורה של Nginx כ- Proxy סיום SSL
- שינוי ממשק הכריכה
- הפעלת מעבד מרובה
- סיכום
Odoo היא חבילת קוד פתוח פופולרית של אפליקציות עסקיות. הוא מציע מגוון יישומים, כולל CRM, מסחר אלקטרוני, בונה אתרים, חיובים, חשבונאות, ייצור, מחסן, ניהול פרוייקטים, מלאי ועוד, הכל משולב בצורה חלקה.
ניתן להתקין את Odoo במספר דרכים, תלוי במקרה השימוש ובטכנולוגיות הזמינות. הדרך הקלה והמהירה ביותר להתקנת Odoo היא באמצעות מאגרי ה- APT הרשמיים של Odoo.
התקנת Odoo בסביבה וירטואלית, או פריסה ככלי Docker, מאפשרת לך שליטה רבה יותר על הגדרת המערכת, ולהריץ מספר גרסאות Odoo באותה מערכת.
במדריך זה, נלך אתכם דרך התקנה ופריסה של Odoo 13 בסביבה וירטואלית של פייתון באובונטו 18.04. אנו מורידים את Odoo ממאגר ה- Github שלהם ונשתמש ב- Nginx כ- proxy הפוך.
התקנת תנאים מוקדמים
התחבר לאובונטו שלך כמשתמש בסודו ועדכן את מטמון ה- Apt:
sudo apt update
התקן את Git, Pip, Node.js ואת הכלים הדרושים לבניית תלות של Odoo:
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
יצירת משתמש מערכת
צור משתמש מערכת שיפעיל את Odoo, בשם
odoo13
עם מדריך הבית
/opt/odoo13
:
sudo useradd -m -d /opt/odoo13 -U -r -s /bin/bash odoo13
אתה יכול להגדיר את שם המשתמש לכל דבר שתרצה, כל עוד אתה יוצר משתמש PostgreSQL עם אותו שם.
התקנה וקביעת תצורה של PostgreSQL
Odoo משתמש ב- PostgreSQL כמאפיין בסיסי הנתונים. כדי להתקין את PostgreSQL, הפעל את הפקודה הבאה:
sudo apt install postgresql
לאחר השלמת ההתקנה, צור משתמש PostgreSQL עם אותו שם כמו משתמש המערכת שנוצר קודם לכן, במקרה שלנו
odoo13
:
sudo su - postgres -c "createuser -s odoo13"
התקנת Wkhtmltopdf
חבילת
wkhtmltox
מספקת מערך כלים של שורת פקודה בקוד פתוח שיכולים להעביר HTML למסמך PDF ולתבניות תמונה שונות. כדי להיות מסוגל להדפיס דוחות PDF, עליך להתקין את הכלי
wkhtmltopdf
. הגרסה המומלצת עבור Odoo היא
0.12.5
, שאינה זמינה במאגרי ברירת המחדל של אובונטו 18.04.
הורד את החבילה באמצעות הפקודה הבאה של wget:
wget
לאחר השלמת ההורדה, התקן את החבילה על ידי הקלדת:
sudo apt install./wkhtmltox_0.12.5-1.bionic_amd64.deb
התקנה ותצורה של Odoo 13
כאמור, נתקין את Odoo מהמקור בתוך סביבה וירטואלית מבודדת של פייתון.
ראשית, שנה למשתמש "odoo13":
sudo su - odoo13
שיבט את קוד המקור של Odoo 13 מ- GitHub:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo13/odoo
לאחר סיום ההורדה, צור סביבה וירטואלית חדשה של פייתון עבור Odoo:
cd /opt/odoo13
python3 -m venv odoo-venv
הפעל את הסביבה באמצעות הפקודה הבאה:
source odoo-venv/bin/activate
התקן את כל מודולי Python הנדרשים עם pip3:
pip3 install wheel
pip3 install -r odoo/requirements.txt
אם אתה נתקל בשגיאת קומפילציה במהלך ההתקנה, וודא כי כל התלות הנדרשות המפורטות בסעיף
Installing Prerequisites
מותקנות.
לאחר שתסיים, בטל את הסביבה על ידי הקלדה:
deactivate
ניצור תיקיה חדשה שתכלול את התוספות של צד שלישי.
mkdir /opt/odoo13/odoo-custom-addons
בהמשך, נוסיף את הספריה
addons_path
לפרמטר
addons_path
. פרמטר זה מגדיר רשימת ספריות בהן Odoo מחפש מודולים.
חזור למשתמש ה- sudo שלך:
exit
צור קובץ תצורה עם התוכן הבא:
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
אל תשכח לשנות את ה-
my_admin_passwd
למשהו בטוח יותר.
יצירת קובץ Systemd
פתח את עורך הטקסט שלך וצור קובץ יחידת שירות בשם
odoo13.service
עם התוכן הבא:
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
הודע למערכת כי קיים קובץ יחידה חדש:
sudo systemctl daemon-reload
הפעל את שירות Odoo ואיפשר לו להתחיל על האתחול על ידי הפעלה:
sudo systemctl enable --now odoo13
אמת את מצב השירות:
sudo systemctl status odoo13
הפלט צריך להיראות כמו למטה, ולציין ששירות Odoo פעיל ופועל.
● 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
לצפייה בהודעות שנרשמו על ידי שירות Odoo, השתמש בפקודה שלהלן:
בדיקת ההתקנה
פתח את הדפדפן שלך והקלד:
http://:8069
http://:8069
בהנחה שההתקנה מצליחה, יופיע מסך הדומה לזה הבא:
קביעת תצורה של Nginx כ- Proxy סיום SSL
שרת האינטרנט של ברירת המחדל של Odoo משרת תנועה דרך HTTP. כדי להפוך את פריסת Odoo לבטוחה יותר, אנו נקבע את התצורה של Nginx כ- proxy לסיום SSL שישרת את התנועה דרך
פרוקסי סיום SSL הוא שרת פרוקסי המטפל בהצפנת / פענוח SSL. משמעות הדבר היא שפרוקסי סיום (Nginx) יעבד ויפענח חיבורי TLS נכנסים (HTTPS), ויעביר את הבקשות הבלתי מוצפנות לשירות הפנימי (Odoo). התנועה בין Nginx ל- Odoo לא תוצפן (HTTP).
שימוש בשרת פרוקסי הפוך מעניק לך יתרונות רבים כגון איזון עומסים, סיום SSL, מטמון, דחיסה, הגשת תוכן סטטי ועוד.
ודא כי עמדת בתנאים המוקדמים הבאים לפני שתמשיך בסעיף זה:
- שם דומיין שמצביע על IP השרת הציבורי שלך. אנו נשתמש ב-
example.com
Nginx מותקן אישור.SSL עבור הדומיין שלך. אתה יכול להתקין תעודת SSL של Let's Encrypt בחינם.
פתח את עורך הטקסט שלך וצור / ערוך את חסימת שרת הדומיין:
sudo nano /etc/nginx/sites-enabled/example.com
התצורה הבאה מגדירה סיום SSL, ניתוב מחדש של HTTP ל- HTTPS, ניתוב מחדש ל- WWW ללא ניתוק WWW, מטמון את הקבצים הסטטיים ומאפשרת דחיסת GZip.
/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; }
אל תשכח להחליף example.com בדומיין Odoo שלך ולהגדיר את הנתיב הנכון לקובצי אישור SSL. הקטעים המשמשים בתצורה זו נוצרים במדריך זה.
לאחר שתסיים, הפעל מחדש את שירות Nginx:
sudo systemctl restart nginx
בשלב הבא עלינו לומר לאודו להשתמש בפרוקסי. לשם כך, פתח את קובץ התצורה והוסף את השורה הבאה:
/etc/odoo13.conf
proxy_mode = True
הפעל מחדש את שירות Odoo כדי שהשינויים ייכנסו לתוקף:
sudo systemctl restart odoo13
בשלב זה, הגדרת ה- proxy ההפוך, ותוכלו לגשת למופע Odoo שלך בכתובת:
https://example.com
שינוי ממשק הכריכה
שלב זה הוא לא חובה, אך זהו נוהג אבטחה טוב.
כברירת מחדל, שרת Odoo מקשיב ליציאה
8069
בכל הממשקים. כדי להשבית גישה ישירה למופע Odoo, אתה יכול לחסום את היציאה
8069
לכל הממשקים הציבוריים או לאלץ את Odoo להאזין רק בממשק המקומי.
אנו נקבע את התצורה של Odoo להאזנה רק ב-
127.0.0.1
. פתח את התצורה הוסף את שתי השורות הבאות בסוף הקובץ:
xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1
שמור את קובץ התצורה והפעל מחדש את שרת Odoo כדי שהשינויים ייכנסו לתוקף:
הפעלת מעבד מרובה
כברירת מחדל, Odoo פועל במצב של ריבוי חוטים. עבור פריסות ייצור, מומלץ לעבור לשרת המעבד מכיוון שהוא מגביר את היציבות ולנצל טוב יותר את משאבי המערכת.
כדי לאפשר עיבוד מרובה צריך לערוך את תצורת Odoo ולהגדיר מספר לא-אפס של תהליכי עובדים. מספר העובדים מחושב על פי מספר ליבות המעבד במערכת וזיכרון ה- RAM הזמין.
על פי התיעוד הרשמי של Odoo לחישוב מספר העובדים וגודל זיכרון ה- RAM הנדרש, אתה יכול להשתמש בנוסחאות וההנחות הבאות:
חישוב מספר העובד
- המספר המרבי התיאורטי של העובד = (system_cpus * 2) + 11 עובדים יכולים לשרת ~ = 6 משתמשים במקביל עובדים העובדים דורשים גם מעבד
חישוב גודל זיכרון RAM
- ניקח בחשבון ש 20% מכל הבקשות הן בקשות כבדות ו 80% הן קלות יותר. בקשות כבדות משתמשים בסביבות 1 ג'יגה-בייט של זיכרון RAM בעוד שהקלות יותר משתמשות בכ- 150 מגה-בייט של RAMNeeded RAM =
number_of_workers * ((light_worker_ratio * light_worker_ram_estimation) + (heavy_worker_ratio * heavy_worker_ram_estimation))
grep -c ^processor /proc/cpuinfo
נניח שיש לך מערכת עם 4 ליבות מעבד, 8 GB זיכרון RAM, ו -30 משתמשי Odoo במקביל.
-
30 users / 6 = **5**
(5 הוא מספר העובדים הדרוש לעובדים)(4 * 2) + 1 = **9**
(9 הוא מספר העובדים המרבי התיאורטי)
בהתבסס על החישוב שלמעלה, אתה יכול להשתמש ב 5 עובדים + 1 עובד לעובד cron שהם בסך הכל 6 עובדים.
חשב את צריכת זיכרון ה- RAM על פי מספר העובדים:
-
RAM = 6 * ((0.8*150) + (0.2*1024)) ~= 2 GB of RAM
החישוב מראה שהתקנת Odoo תצטרך בערך 2 ג'יגה זיכרון RAM.
כדי לעבור למצב עיבוד רב, פתח את קובץ התצורה והוסף את הערכים המחושבים:
/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
הפעל מחדש את שירות Odoo כדי שהשינויים ייכנסו לתוקף:
sudo systemctl restart odoo13
שאר משאבי המערכת ישמשו שירותים אחרים הפועלים במערכת זו. במדריך זה התקנו את Odoo יחד עם PostgreSQL ו- Nginx באותו שרת. בהתאם להגדרת ההתקנה שלך יתכנו גם שירותים אחרים הפועלים בשרת שלך.
סיכום
מדריך זה הוביל אותך דרך ההתקנה של Odoo 13 באובונטו 18.04 בסביבה וירטואלית של פייתון תוך שימוש ב- Nginx כפרוקסיור הפוך. הראינו לכם גם כיצד לאפשר עיבוד מרובה ומיטוב Odoo לסביבת ייצור.
יתכן שתרצה לבדוק את ההדרכה שלנו כיצד ליצור גיבויים יומיים אוטומטיים של מסדי נתונים של Odoo.
אובונטו odoo postgresql פיתון פיפ nginx proxy sslכיצד לפרוס odoo 11 באובונטו 18.04

מדריך זה מכסה את הצעדים הדרושים להתקנה ולהגדרת תצורה של Odoo לייצור באמצעות מקור Git וסביבה וירטואלית Python במערכת אובונטו 18.04.
כיצד לפרוס odoo 12 באובונטו 18.04

הדרכה זו מכסה את הצעדים הנדרשים להתקנה ולהגדרת התצורה של Odoo 12 לייצור באמצעות מקור Git וסביבה וירטואלית Python במערכת אובונטו 18.04.
כיצד להתקין odoo 11 באובונטו 16.04

Odoo היא אחת התוכנות הפופולריות ביותר בעולם. מדריך זה מכסה את הצעדים הדרושים להתקנה ולהגדרת תצורת Odoo באמצעות מקור Git וסביבת וירטואלית Python באובונטו 16.04