How to install Odoo 14 on Ubuntu 20.04

Jessadawut Sanomnao
4 min readSep 5, 2021

--

image source : https://www.skytizens.com/wp-content/uploads/2021/01/odoo-alfresco-joget-integration-fs8-or8.png

สวัสดีครับ สำหรับบทความนี้เราก็จะมาทำความรู้จักและทดลองติดตั้ง Odoo แบบเบื้องต้น โดยเวอร์ชั่นที่เราจะติดตั้งนั้นเป็นเวอร์ชั่นที่ 14 ซึ่งเป็นเวอร์ชั่นล่าสุดที่ออกมา (ปัจจุบัน ณ วันที่ 5 กันยายน 2564) โดยระหว่างการติดตั้งก็จะมีการสอนใช้ package บางอันของภาษา python เพื่อเพิ่มความสะดวกอีกด้วย

และก่อนที่เราจะติดตั้งตั้ง Odoo นั้น สังสัยไหมครับว่าเจ้า Open Source ที่ชื่อ Odoo นั้นมันคืออะไร และมันสามารถทำอะไรได้บ้าง ..

Odoo คืออะไร ?

odoo คือ ซอฟต์แวร์ประเภท ERP (Enterprise Resource Plantning) หรือซอฟต์แวร์ที่ช่วยบริหารและจัดการกับธุระกิจโดยมี Module ให้เลือกใช้มากมาย เช่น การขาย การบัญชี การผลิต และจัดการทรัพยากรบบุคคล อีกทั้งยังประหยัดค่าใช้จ่ายและควบคุมต้นทุนได้อีกด้วย.

โดย odoo นั้นใช้ภาษา python ในการพัฒนาและถูกแบ่งออกเป็น 2 เวอร์ชั่น คือ

  • แบบ Community Version ซึ่งก็คือแบบ Open-Source ที่ให้นักพัฒนาหรือผู้ใช้นำไปใช้งานได้แบบฟรี
  • แบบ Enterprise Version เป็นแบบเสียค่าใช้งานจ่าย แต่สามารถใช้งานได้เลย ไม่ต้องติดตั้งและเขียนโมดูลให้เสียเวลา

เริ่มติดตั้ง Odoo 14 แบบ Open-Source

ตอนนี้เราก็มาถึงการติดตั้งกันแล้วนะครับ โดยระบบปฏิบัติการที่ผมใช้เป็น Ubuntu 20.04 ใช้ python 3.8.10 โดยสามารถดูวิธีติดตั้งได้ ที่นี่

สิ่งที่ต้องมีก่อนติดตั้ง odoo 14

เราจะต้องติดตั้ง nodejs , git, pip ก่อน สามารถใช้ command นี่ได้เลย

$ sudo apt update

$ sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less libjpeg-dev zlib1g-dev libpq-dev libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev

สร้าง User System

การทำงานของ Odoo นั้นไม่สามารถทำงานภายใต้ user root ได้เพราะเหตุผลทางความปลอดภัย ดังนั้นเราจึงต้องสร้าง user system ที่ให้ odoo ทำงานโดยเฉพาะ โดยจะสร้างไฟล์ไว้ที่ /opt/odoo14-test

ทั้งนี้ผมสร้างจะสร้างโฟลเดอร์ชื่อว่า odoo14-test และให้ชื่อ user ว่า odoo14-test

$ sudo useradd -m -d /opt/odoo14-test -U -r -s /bin/bash odoo14-test

ติดตั้งและ Configuring PostgreSQL

odoo นั้นใช้ PostgreSQL เป็น database back-end สามารถติดตั้งด้วย command

$ sudo apt install postgresql

หลังจากที่เราติดตั้ง postgresql เสร็จสิ้นนั้น ก็มาสร้าง user สำหรับ postgresql

$ sudo su - postgres -c "createuser -s odoo14_test" 

ติดตั้ง wkhtmltopdf

wkhtmltopdf เป็น open-source สำหรับแสดงหน้า html หรือเว็บเพจเป็นไฟล์ pdf โดยใช้การพิมพ์คำสั่งเป็น command line ล้วนๆ แทนการใช้แบบกราฟฟิก ซึ่งแปลงได้หลายหน้า หรือการแสดงรูปภาพต่างๆ ได้มากมาย

เริ่มการติดตั้งด้วยการ download ไฟล์ .deb

$ sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb

หลังจาก download เริ่มติดตั้งด้วย command

$ sudo apt install ./wkhtmltox_0.12.6-1.bionic_amd64.deb

ติดตั้ง และ Configuring Odoo14

ก่อนที่จะเริ่มติดตั้ง odoo เรามาทำความรู้จักกับ python package ที่ชื่อว่า pyenv โดยมันสามารถใช้เพื่อแยกเวอร์ชั่นของ python 2.7, 3.6, 3.7 และ3.8 อีกทั้งเวลาที่เราจะใช้งานเราสามารถสลับเวอร์ชั่นไปมาได้

สามารถอ่านรายละเอียดและติดตั้งได้ตามลิงค์นี้เลยครับ

เริ่มการติดตั้ง odoo14 โดยการเปลี่ยน user ไปที่ odoo14-test

$ sudo su - odoo14

clone Odoo14 จาก git repo ข้างต้น จะเห็นว่า directory ของโปรเจ็คนั้นคือ /opt/odoo14-test/odoo

$ git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo14-test/odoo 

หลังจาก clone เสร็จให้ย้าย directory มาที่ home/user โดยใช้ command

$ cd ~ จากนั้นสร้างโฟลเดอร์สำหรับโปรเจ็คโดยผมใช้ชื่อว่า odoo14-test ด้วย command $ mkdir odoo14-test

หลังจากที่เราสร้างโฟลเดอร์โปรเจ็คเรียบร้อยแล้ว ให้เข้าไปภายในโฟลเดอร์โปรเจ็ตของเราโดยหลังจากนี้เราจะให้โฟล์เดอร์โปรเจ็คของเราเพื่อสร้างโฟลเดอร์ like-addons และเชื่อมต่อกับโฟล์เดอร์ odoo ที่ clone มาจาก git ด้วย command

$ mkdir link-addons

เราสามารถดู directory ปัจจุบันได้ด้วย command $ pwd

ln -s <directory git clone> <directory your project>

$ sudo ln -s /opt/odoo14-test/odoo /home/art/odoo14-test

จากนั้นเราจะใช้ pyenv เพื่อใช้ python 3.8.10 เป็น version default มาเริ่มกันเลย

$ pyenv install 3.8.10 ติดตั้ง python version 3.8.10

$ pyenv virtualenv 3.8.10 odoo14-test สร้างโปรเจ็ค Virtual Environment

$ pyenv versions เพื่อดู version ปัจจุบันของ pyenv

$ pyenv local odoo14-test เพื่อใช้ virtual environment odoo14-test

ต่อจากนั้นทำการติดตั้ง package ทั้งหมดตาม requirements ที่ odoo ต้องการ

$ pip install -r odoo/requirements.txt

สร้าง config file ด้วย command

$ sudo vim odoo14-test.conf

เริ่ม start odoo ด้วย command $ ./odoo/odoo-bin -c odoo14-test.conf

url : http://localhost:8069 โดย user และ password คือ admin

เป็นอันเสร็จสิ้นครับ ถ้าผิดพลาดประการใดหรือสงสัยส่วนไหนก็ติชมหรือสอบภามได้นะครับ

ปล. ถ้าการเชื่อมต่อมีปัญหาให้ลองเปลี่ยน owner ของ database odoo14_test เป็น owner ที่เป็น <system user> ดูครับ

--

--