[Odoo 11] Lec (4) Lock - Unlock Confirmed Orders
תוכן עניינים:
- לפני שאתה מתחיל
- צור משתמש Odoo
- התקן וקבע את התצורה של PostgreSQL
- התקן Wkhtmltopdf
- התקן והגדר את תצורת Odoo
- צור קובץ יחידת מערכת
- בדוק את ההתקנה
- קבע את התצורה של Nginx כמתוקף סיום SSL
- שנה את ממשק הכריכה
- אפשר עיבוד מרובה
- סיכום
Odoo היא התוכנה העסקית הפופולרית ביותר ב- One בעולם. הוא מציע מגוון יישומים עסקיים הכוללים CRM, אתר, מסחר אלקטרוני, חיוב, חשבונאות, ייצור, מחסן, ניהול פרויקטים, מלאי ועוד, הכל משולב בצורה חלקה.
ישנן מספר דרכים להתקנת Odoo בהתאם למקרה השימוש הנדרש. הדרך הקלה והמהירה ביותר להתקנת Odoo היא באמצעות מאגרי APT הרשמיים שלהם.
מדריך זה מכסה את הצעדים הדרושים להתקנה ולהגדרת תצורה של Odoo לייצור באמצעות מקור Git וסביבה וירטואלית Python במערכת אובונטו 18.04.
לפני שאתה מתחיל
היכנס למחשב אובונטו שלך כמשתמש בסודו ועדכן את המערכת לחבילות האחרונות:
sudo apt update && sudo apt upgrade
התקן את 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
צור משתמש מערכת וקבוצה חדשים עם מדריך
/opt/odoo
ביתי שיפעיל את שירות Odoo.
sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo
אתה יכול לתת שם למשתמש ככל העולה על רוחו, רק וודא שאתה יוצר משתמש Postgres עם אותו שם.
התקן וקבע את התצורה של PostgreSQL
התקן את חבילת PostgreSQL ממאגרי ברירת המחדל של אובונטו:
sudo apt install postgresql
לאחר השלמת ההתקנה, צור משתמש PostgreSQL בעל שם זהה למשתמש המשתמש שיצר בעבר, במקרה שלנו
odoo
:
sudo su - postgres -c "createuser -s odoo"
התקן Wkhtmltopdf
חבילת
wkhtmltox
מספקת מערכת כלים של שורת פקודה בקוד פתוח שיכולה להפוך HTML ל- PDF ולתבניות תמונה שונות. כדי להדפיס דוחות PDF, תזדקק לכלי
wkhtmltopdf
. הגרסה המומלצת עבור Odoo היא
0.12.1
שאינה זמינה במאגרי הרשמי של אובונטו 18.04.
הורד את החבילה באמצעות הפקודה הבאה של wget:
wget
לאחר השלמת ההורדה, התקן את החבילה על ידי הקלדת:
sudo apt install./wkhtmltox_0.12.1.3-1~bionic_amd64.deb
התקן והגדר את תצורת Odoo
אנו נתקין את Odoo ממאגר ה- GitHub בתוך סביבה וירטואלית מבודדת של פייתון כך שנוכל לקבל שליטה רבה יותר על גרסאות ועדכונים.
לפני שתתחיל בתהליך ההתקנה, הקפד לעבור למשתמש
odoo
.
sudo su - odoo
כדי לאשר שאתה מחובר כמשתמש
odoo
אתה יכול להשתמש בפקודה הבאה:
whoami
כעת נוכל להתחיל בתהליך ההתקנה. שיבט תחילה את odoo ממאגר GitHub:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 11.0 /opt/odoo/odoo11
- אם ברצונך להתקין גרסת Odoo אחרת, פשוט שנה את מספר הגירסה לאחר מתג הסניף. אתה יכול לתת שם לספרייה כרצונך, לדוגמה במקום
odoo11
תוכל להשתמש בשם התחום שלך.
כדי ליצור סביבה וירטואלית חדשה להפעלת מופע Odoo 11:
cd /opt/odoo
python3 -m venv odoo11-venv
הפעל את הסביבה באמצעות הפקודה הבאה:
source odoo11-venv/bin/activate
ולהתקין את כל מודולי Python הנדרשים עם pip3:
pip3 install wheel
pip3 install -r odoo11/requirements.txt
pip3
הוא כלי להתקנה וניהול של חבילות Python.
לאחר סיום ההתקנה, השבתו את הסביבה וחזרו למשתמש הסודי שלכם באמצעות הפקודות הבאות:
deactivate
exit
sudo mkdir /opt/odoo/odoo11-custom-addons
sudo chown odoo: /opt/odoo/odoo11-custom-addons
בשלב הבא עלינו ליצור קובץ תצורה, אנו יכולים ליצור קובץ חדש מאפס או להעתיק את קובץ התצורה הכלול:
sudo cp /opt/odoo/odoo11/debian/odoo.conf /etc/odoo11.conf
פתח את הקובץ וערוך אותו באופן הבא:
/etc/odoo11.conf
; This is the password that allows database operations: admin_passwd = my_admin_passwd db_host = False db_port = False db_user = odoo db_password = False addons_path = /opt/odoo/odoo11/addons; If you are using custom modules; addons_path = /opt/odoo/odoo11/addons, /opt/odoo/odoo11-custom-addons
אל תשכח לשנות את
my_admin_passwd
למשהו בטוח יותר ולהתאים את
addons_path
אם אתה משתמש במודולים מותאמים אישית.
צור קובץ יחידת מערכת
להפעלת odoo כשירות, ניצור קובץ יחידת
odoo11.service
בתיקייה
/etc/systemd/system/
עם התכנים הבאים:
Description=Odoo11 Requires=postgresql.service After=network.target postgresql.service Type=simple SyslogIdentifier=odoo11 PermissionsStartOnly=true User=odoo Group=odoo ExecStart=/opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /etc/odoo11.conf StandardOutput=journal+console WantedBy=multi-user.target
הודע למערכת שיצרנו קובץ יחידה חדש והפעל את שירות Odoo על ידי ביצוע:
sudo systemctl daemon-reload
sudo systemctl start odoo11
ניתן לבדוק את מצב השירות באמצעות הפקודה הבאה:
sudo systemctl status odoo11
● odoo11.service - Odoo11 Loaded: loaded (/etc/systemd/system/odoo11.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2018-05-03 21:23:08 UTC; 3s ago Main PID: 18351 (python3) Tasks: 4 (limit: 507) CGroup: /system.slice/odoo11.service └─18351 /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /etc/odoo11.conf
ואם אין שגיאות, באפשרותך לאפשר הפעלה אוטומטית של שירות Odoo בזמן האתחול:
sudo systemctl enable odoo11
בדוק את ההתקנה
פתח את הדפדפן שלך והקלד:
http://:8069
http://:8069
בהנחה שההתקנה מצליחה, יופיע מסך הדומה לזה הבא:
קבע את התצורה של Nginx כמתוקף סיום SSL
- יש לך שם תחום שמצביע על IP השרת הציבורי שלך. במדריך זה נשתמש ב-
example.com
. יש לך Nginx המותקן על ידי ביצוע הוראות אלה. יש לך אישור SSL המותקן לדומיין שלך. באפשרותך להתקין תעודת SSL SSL בחינם על ידי ביצוע הוראות אלה.
שרת האינטרנט של ברירת המחדל של Odoo משרת תנועה דרך HTTP. כדי להפוך את פריסת Odoo לבטוחה יותר, אנו נקבע את התצורה של Nginx כפרוקסי סיום SSL אשר ישמש את התעבורה דרך
פרוקסי סיום SSL הוא שרת פרוקסי המטפל בהצפנת / פענוח SSL. משמעות הדבר היא שפרוקסי סיום שלנו (Nginx) יטפל בפענוח חיבורי TLS נכנסים (HTTPS), והוא יעביר את הבקשות הבלתי מוצפנות לשירות הפנימי שלנו (Odoo) כך שהתנועה בין Nginx ל- Odoo לא תוצפן (HTTP).
עלינו לומר לאודו כי אנו נשתמש בפרוקסי, נפתח את קובץ התצורה ונוסף את השורה הבאה:
/etc/odoo11.conf
proxy_mode = True
הפעל מחדש את שירות Odoo כדי שהשינויים ייכנסו לתוקף:
sudo systemctl restart odoo11
השימוש ב- Nginx כ- proxy מעניק לנו מספר יתרונות. בדוגמה זו נקבע את התצורה של סיום 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 באמצעות:
שנה את ממשק הכריכה
שלב זה הוא לא חובה, אך זהו נוהג אבטחה טוב. כברירת מחדל, שרת Odoo מקשיב ליציאה 8069 בכל הממשקים, כך שאם ברצונך להשבית גישה ישירה למופע Odoo שלך, אתה יכול לחסום את היציאה 8069 לכל הממשקים הציבוריים או לאלץ את Odoo להאזין רק בממשק המקומי.
במדריך זה נאלץ את Odoo להאזין רק ב-
127.0.0.1
, לפתוח את תצורת Odoo להוסיף את שתי השורות הבאות בסוף הקובץ:
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 = מספר_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 שלנו תצטרך בערך 2GB של זיכרון RAM.
כדי לעבור למצב עיבוד רב, פתח את קובץ התצורה והוסף את השורות הבאות:
/etc/odoo11.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 odoo11
שאר משאבי המערכת ישמשו שירותים אחרים הפועלים במחשב שלנו. במדריך זה התקנו את Odoo יחד עם PostgreSQL ו- Nginx באותו שרת ובהתאם להגדרה שלך יתכנו גם שירותים אחרים הפועלים בשרת שלך.
סיכום
זהו זה! הדרכה זו הובילה אותך דרך ההתקנה של Odoo 11 באובונטו 18.04 בסביבה וירטואלית של פייתון באמצעות Nginx כפרוקסיור הפוך. למדת גם כיצד לאפשר עיבוד מרובה ומיטוב Odoo לסביבת הייצור. יתכן שתרצה לבדוק את ההדרכה שלנו כיצד ליצור גיבויים יומיים אוטומטיים של מסדי הנתונים שלך ב- Odoo.
אובונטו odoo postgresql פיתון פיפ nginx proxy sslכיצד לפרוס odoo 12 באובונטו 18.04
הדרכה זו מכסה את הצעדים הנדרשים להתקנה ולהגדרת התצורה של Odoo 12 לייצור באמצעות מקור Git וסביבה וירטואלית Python במערכת אובונטו 18.04.
כיצד לפרוס את rocket.chat באובונטו 18.04
Rocket.Chat היא פלטפורמת תקשורת עם קוד פתוח, אלטרנטיבה של Slack המארחת את עצמה. Rocket.Chat הוא פיתרון מושלם עבור חברות וקהילות שרוצות לארח את מערכת הצ'אט שלהם.
כיצד לפרוס את הדבר החשוב ביותר באובונטו 18.04
Mattermost מביא את כל התקשורת הצוותית שלך למקום אחד ומספק תכונות שונות כולל שיתוף קבצים, העברת הודעות אחת על אחד וקבוצה, אמוג'ים בהתאמה אישית, שיחות וידאו ועוד.