baha.
Obuna boʻlish Buyurtma berish Aloqa

Odoo 19 ni macOSʼga oʻrnatish: toʻliq qoʻllanma

Odoo 19 ni macOSga sourcedan oʻrnatish: Xcode, Python, PostgreSQL, kutubxonalar va wkhtmltopdf. Dasturchilar uchun bosqichma-bosqich qoʻllanma.

3 daqiqa oʻqish Oʻrnatish va DevOps Mos versiyalar: Odoo 19 Nashrlar: Community · Enterprise

Windows va Linux haqidagi maqolalardan keyin mantiqiy savol keladi: Macʼda-chi?

Javob qisqa: Odoo macOS uchun tayyor installer chiqarmaydi. Rasmiy paketlar faqat Debian asosidagi distributivlar, RPM asosidagi distributivlar va Windows uchun mavjud.

Yaʼni Macʼda bitta yoʻl bor — manbadan oʻrnatish. Va bu yomon xabar emas. Modul yozadigan dasturchi baribir shu usulni tanlaydi, chunki installer kodga kirish imkonini bermaydi.

Quyida butun jarayon bosqichma-bosqich. Barcha buyruqlar Odoo 19 uchun va rasmiy hujjatlardan olingan.

Nima kerak boʻladi

Ishni boshlashdan oldin shu beshtasi kerak:

  • Homebrew yoki MacPorts — paket menejeri
  • Python 3.10 yoki undan yuqori
  • PostgreSQL 13 yoki undan yuqori
  • Xcode Command Line Tools — kompilyatsiya uchun
  • Git — kodni yuklab olish uchun

Homebrew oʻrnatilmagan boʻlsa, brew.sh saytidagi buyruqni bajaring. Qolgan hamma narsa shu orqali oʻrnatiladi.

1-qadam. Xcode Command Line Tools

Bu birinchi boʻlishi kerak, chunki Odooʻning baʼzi Python kutubxonalari C kodini kompilyatsiya qilishni talab qiladi. Busiz pip install xatolik bilan toʻxtaydi.

Terminal window
xcode-select --install

Oyna chiqadi — Install ni bosing va tugashini kuting. Toʻliq Xcode oʻrnatish shart emas, faqat Command Line Tools yetarli.

Agar allaqachon oʻrnatilgan boʻlsa, buyruq “already installed” deb javob beradi. Bu normal.

2-qadam. Python

Odoo 19 Python 3.10 yoki undan yuqori versiyani talab qiladi. Bu talab Odoo 17 da oʻzgargan — undan oldin 3.7 yetarli edi.

Homebrew orqali oʻrnating:

Terminal window
brew install python3

Tekshiring:

Terminal window
python3 --version
pip3 --version

Muhim nuqta. macOSʼda tizimning oʻz Pythonʼi ham bor va u Odoo uchun mos emas. Shuning uchun har doim python3 va pip3 buyruqlarini ishlating — python emas. Agar python3 —version eski versiyani koʻrsatsa, Homebrewʼning Pythonʼi PATH da toʻgʻri turmagan boʻladi.

3-qadam. PostgreSQL

Odoo 19 uchun minimal versiya — PostgreSQL 13. Bu Odoo 19 da oʻzgargan: avval 12 yetarli edi.

Rasmiy hujjat macOS uchun Postgres.app ni tavsiya qiladi: postgresapp.com

Bu oddiy ilova — yuklab olasiz, Applications papkasiga tashlaysiz va ishga tushirasiz. Terminal bilan ovora boʻlish shart emas.

CLI vositalarini PATH ga qoʻshish

Postgres.app bilan birga createuser, createdb, psql kabi buyruqlar keladi. Lekin ular terminalda ishlashi uchun PATH sozlanishi kerak.

Qanday qilish kerakligi Postgres.app hujjatida yozilgan: postgresapp.com/documentation/cli-tools.html

Bu qadamni oʻtkazib yubormang — keyingi qadamda aynan shu buyruqlar kerak boʻladi.

Foydalanuvchi yaratish

Odoo postgres foydalanuvchisi bilan ulanishni taqiqlaydi. Yangi foydalanuvchi yaratish shart:

Terminal window
sudo -u postgres createuser -d -R -S $USER
createdb $USER

Bu yerda bitta qulaylik bor: PostgreSQL foydalanuvchisi tizim loginʼi bilan bir xil nomda boʻlgani uchun, bazaga parolsiz ulanish mumkin. Lokal ishlab chiqish uchun bu juda qulay — konfiguratsiyada parol yozish shart emas.

4-qadam. Kodni yuklab olish

Git oʻrnatilmagan boʻlsa:

Terminal window
brew install git

Community versiyasini klonlang:

Terminal window
git clone --branch 19.0 --single-branch https://github.com/odoo/odoo.git

Enterprise ham kerak boʻlsa, ikkinchi repozitoriyni ham oling:

Terminal window
git clone --branch 19.0 --single-branch https://github.com/odoo/enterprise.git

Bu yerni tushunib olish kerak. Enterprise repozitoriysi toʻliq Odoo kodini oʻz ichiga olmaydi — u faqat qoʻshimcha modullar toʻplami. Server kodi Communityʼda. Enterpriseʼni ishlatish degani — Community serverini ishga tushirib, addons-path ga Enterprise papkasini qoʻshish degani.

Shuning uchun Enterprise uchun ikkala repozitoriy ham kerak.

5-qadam. Python kutubxonalari

Odoo papkasiga oʻting va oʻrnating:

Terminal window
cd /CommunityPath
pip3 install setuptools wheel
pip3 install -r requirements.txt

CommunityPath — siz klonlagan odoo papkasining manzili.

Virtual muhit haqida. Bir nechta Odoo versiyasi bilan ishlasangiz yoki tizim Pythonʼini toza saqlamoqchi boʻlsangiz, virtualenv orqali alohida muhit yarating:

Terminal window
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt

Bu majburiy emas, lekin Macʼda men buni tavsiya qilaman. Homebrew Pythonʼini global paketlar bilan toʻldirish keyinchalik tartibsizlikka olib keladi.

Agar oʻrnatish xatolik bersa: avval Xcode Command Line Tools oʻrnatilganini tekshiring (1-qadam). Bu eng koʻp uchraydigan sabab.

6-qadam. Python boʻlmagan bogʻliqliklar

Rasmiy hujjat aniq ogohlantiradi: Python boʻlmagan bogʻliqliklar paket menejeri orqali oʻrnatilishi kerak — Homebrew yoki MacPorts.

Bu pip orqali oʻrnatilmaydigan tizim kutubxonalari. Odatda requirements.txt oʻrnatilayotganda qaysi biri yetishmayotgani xatolik matnida koʻrinadi, keyin uni brew install bilan qoʻshasiz.

7-qadam. wkhtmltopdf

Bu paket pip orqali oʻrnatilmaydi. Qoʻlda oʻrnatish kerak va aynan 0.12.6 versiyasi — faqat shu versiya kolontitullarni (header, footer) qoʻllab-quvvatlaydi.

Yuklab olish: github.com/wkhtmltopdf/packaging/releases/tag/0.12.6.1-3

Agar buni oʻtkazib yuborsangiz, Odoo ishlaydi — lekin PDF hisobot chiqarmoqchi boʻlganingizda xatolik beradi. Bu koʻpincha loyihaning oʻrtasida, hisobot kerak boʻlganda maʼlum boʻladi.

8-qadam. rtlcss (ixtiyoriy)

Faqat arab yoki ibroniy tillarini qoʻllab-quvvatlash kerak boʻlsa. Oʻzbek va rus tili uchun kerak emas — oʻtkazib yuborsangiz boʻladi.

Node.js ni paket menejeri orqali oʻrnating, keyin:

Terminal window
sudo npm install -g rtlcss

9-qadam. Ishga tushirish

Hammasi tayyor:

Terminal window
cd /CommunityPath
python3 odoo-bin --addons-path=addons -d mydb

mydb — PostgreSQL maʼlumotlar bazasining nomi.

Enterprise bilan ishlasangiz — Enterprise yoʻli birinchi turishi shart, aks holda modullar notoʻgʻri yuklanadi:

Terminal window
python3 odoo-bin --addons-path=../enterprise,addons -d mydb

Tayyor ekanini qanday bilasiz

Terminalda shu qator chiqishini kuting:

odoo.modules.loading: Modules loaded.

Brauzerda oching: http://localhost:8069

Kirish maʼlumotlari:

  • Email: admin
  • Parol: admin

Diqqat: bu Odoo interfeysiga kirish hisobi. U PostgreSQL foydalanuvchisidan butunlay boshqa narsa. Ikkisini aralashtirmang.

Konfiguratsiya fayli

Har safar uzun buyruq yozish noqulay. Sozlamalarni faylga yozing — masalan, odoo.conf:

[options]
db_host = localhost
db_port = 5432
db_user = odoo
addons_path = addons,../custom-addons

Postgres.app bilan parolsiz ulanish ishlasa, db_password qatorini yozish shart emas.

Ishga tushirish:

Terminal window
python3 odoo-bin -c odoo.conf -d mydb

Enterprise bilan ishlasangiz, addons_path qatorini shunday yozing:

addons_path = ../enterprise,addons,../custom-addons

Eng koʻp uchraydigan xatolar

pip3 install -r requirements.txt kompilyatsiya xatosi bilan toʻxtaydi
Xcode Command Line Tools oʻrnatilmagan. xcode-select —install ni bajaring va qaytadan urinib koʻring.

createuser: command not found
Postgres.app ning CLI vositalari PATH ga qoʻshilmagan. 3-qadamdagi havoladagi koʻrsatmani bajaring.

FATAL: role ”…” does not exist
PostgreSQL foydalanuvchisi yaratilmagan yoki konfiguratsiyada boshqa nom koʻrsatilgan.

could not connect to server
Postgres.app ishlamayapti. Ilovani oching va server yashil holatda ekanini tekshiring.

python3 eski versiyani koʻrsatadi
Tizim Pythonʼi ishlayapti, Homebrewʼniki emas. PATH tartibini tekshiring yoki toʻgʻridan-toʻgʻri /opt/homebrew/bin/python3 manzilini ishlating.

PDF hisobot chiqmaydi yoki kolontitulsiz
wkhtmltopdf oʻrnatilmagan yoki notoʻgʻri versiya. Aynan 0.12.6 kerak.

**Port band:**Address already in use
Boshqa Odoo nusxasi ishlab turibdi yoki 8069 port egallangan: —http-port=8070

Macʼda ishlash haqida bir necha eslatma

Production uchun Mac ishlatilmaydi. Bu aytilmagan qoida. Mac — bu ishlab chiqish mashinasi. Jonli server Linuxʼda turadi. Macʼda yozilgan modul Linux serverda sinalishi kerak, chunki fayl tizimi va bogʻliqliklar farq qilishi mumkin.

Multi-processing rejimi haqida. Odooʻning koʻp jarayonli rejimi (—workers) Linux serverlari uchun chuqur moslashtirilgan. Lokal ishlab chiqishda bu baribir kerak emas — bitta jarayon yetarli.

Docker alternativa sifatida. Agar bir nechta Odoo versiyasi bilan parallel ishlasangiz, Docker koʻproq qulaylik beradi — har bir versiya oʻz konteynerida, PostgreSQL ham alohida. Lekin bu alohida mavzu va kod bilan ishlash biroz murakkabroq boʻladi.

Qisqa xulosa

macOSʼda Odoo oʻrnatish Linuxʼdagiga juda oʻxshash — farq faqat paket menejerida va PostgreSQL ni oʻrnatish usulida.

Eng muhim uchta nuqta:

  • Xcode Command Line Tools birinchi boʻlsin. Aks holda kutubxonalar oʻrnatilmaydi.
  • python3 va****pip3 ishlating, python emas.
  • Virtual muhit yarating. Macʼda global paketlar tez tartibsizlanadi.

Qolgan hammasi standart: PostgreSQL, kod, kutubxonalar, ishga tushirish.

Manbalar

  1. Source install — Odoo 19.0 documentation www.odoo.com
  2. Packaged installers — Odoo 19.0 documentation www.odoo.com

Yana oʻqing

Boʻlimlar