bài trước, tôi đã hướng dẫn cách cài đặt cơ bản Odoo 8.0. Bài này tôi hướng dẫn một số cấu hình trước khi thật sự đi sâu vào tìm hiểu Odoo. Đây là bước cần thiết không những để Odoo chạy trơn tru mà còn giúp ta hiểu sâu hơn về cơ chế hoạt động của Odoo.

Nhắc lại rằng ta đã cài được Odoo 8.0 ở thư mục: /home/odoo/odoo-v8/odoo với user là odoo, thư mục gốc của user odoo là /home/odoo. Ta kết thúc bài trước bằng việc khởi chạy Odoo server bằng lệnh:

./odoo.py

Và xem thành quả trên trình duyệt bằng cách gõ:

localhost:8069

Một số file và thư mục của Odoo 8.0

Trước hết ta hãy xem qua các thành phần trong thư mục cài đặt của Odoo 8.0. Hãy chuyển tới thư mục cài đặt và liệt kê các file và thư mục con bằng lệnh ls:

cd odoo-v8/odoo
ls 

Ta được kết quả như hình dưới. 

Học lập trình Python trực tuyến

Ở đây, để đơn giản tôi chỉ nói qua các file và thư mục quan trọng. Đầu tiên là các file:

odoo.py: ta dùng nó để khởi chạy server như ở trên, ta có thể thiết đặt các tham số sẽ nói ở phần dưới đây.

openerp-server: nhiệm vụ giống với odoo.py. Chẳng hạn thay vì khởi chạy server như trên ta có thể chạy như sau:

./openerp-server start

Về các tham số thêm vào thì 2 lệnh odoo.py và openerp-server hoàn toàn giống nhau, có thể kiểm tra bằng cách liệt kê các tham số với lệnh --help:

./odoo.py --help
./openerp-server --help

Thư mục addons: chứ các module hiện tại của Odoo. Sau này, ta thường lưu các module mới vào một thư mục khác và thiết lập đường dẫn để cài đặt các module mới này vào Odoo.

Cấu hình Odoo

Việc thiết lập các thông số cho Odoo có thể làm bằng 2 cách:

- Dùng tham số thêm vào khi dùng lệnh ./odoo.py, khi đó để tránh việc phải thêm tham số khi mỗi lần chạy ta dùng lệnh --save để lưu các thiết lập này cho những lần sau.

- Chỉnh sửa trực tiếp vào file config của Odoo. Mặc định Odoo 8.0 lưu các thiết lập ở file .openerp_serverrc, đây là một file ẩn và nằm ở thư mục gốc /home/odoo. Các bạn dùng lệnh cd để chuyển về home rồi dùng lệnh ls -a để liệt kê hết tất cả các file kể cả file ẩn:

cd
ls -a

Để chỉnh sửa file này ta dùng trình chỉnh sửa nano:

sudo nano .openerp_serverrc

Học lập trình Python online

Khá nhiều các thông số, ở đây ta chú ý thiết lập các thông số sau.

Addons Path

Đường dẫn tới thư mục addons, hiện tại ta chưa cần thay đổi thông số này. Khi nào viết module mới ta sẽ đề cập chi tiết hơn. 

Admin Password

Đây là mật khẩu dùng để tạo, xoá, khôi phục database khi lần đầu ta chạy Odoo. Mặc định là admin, nếu bạn đang chạy Odoo trên localhost thì có thể không cần đổi để đơn giản, nhưng trên server nào đó thì cần đổi ngay để đảm bảo an toàn. 

Học lập trình trực tuyến chất lượng

Logfile

Logfile dùng để lưu trữ các thông tin khi chạy server. Mặc định các thông tin này hiển thị ngay trên màn hình của terminal khi khởi chạy server. Nhưng ta hoàn toàn có thể thiết lập để lưu các thông tin này vào 1 file. Chẳng hạn tôi chọn lưu nó vào /var/log/odoo/odoo-server.log, đầu tiên ta tạo thư mục odoo để chứa log file:

mkdir /var/log/odoo
chown odoo: /var/log/odoo
chmod 640 /var/log/odoo

Hai lệnh sau cấp quyền ghi cho user odoo và chỉ đọc được bởi odoo và root. Sau đó thêm vào file .openerp_serverrc  đường dẫn: /var/log/odoo/odoo-server.log (file odoo-server.log sẽ được tự động tạo ra.)

Ở đây có một thông số liên quan là logrotate dùng để quản lý dung lượng, nén, xoá bỏ log file hay sử dụng log file định kỳ theo tuần, ngày,... tuy vậy vì dung lượng file log của Odoo nhỏ nên ta có thể bỏ qua phần này.

Port

Ta đã biết port mặc định để truy cập vào Odoo server là 8069, ta có thể thay đổi thông số này bằng cách thay đổi dòng: xmlrpc-server.

Như đã giới thiệu ở trên, ta có thể thay đổi các thông số này bằng cách thêm vào các tham số khi chạy odoo.py:

./odoo.py --addons-path="<addons_path>" --logfile=<logfile_path> --xmlrpc-serverserver=<port> --save

Cài đặt

Thư viện wkhtmltopdf

Đây là thư viện để in các báo cáo, hợp đồng, bảng báo giá... trong Odoo. Một số hướng dẫn hiện nay chỉ dẫn người dùng sử dụng lệnh apt-get install wkhtmltopdf  để cài đặt, tuy nhiên nếu dụng lệnh này, có thể bạn sẽ cài phiên bản cũ của thư viện này. Do đó, ta sẽ download từ trang chủ và cài đặt lên hệ thống như sau:

wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
dpkg -i wkhtmltox-0.12.2.1_linux-trusty-amd64.deb

Nếu hệ thống báo thiếu các gói dependencies thì ta dùng lệnh:

sudo apt-get -f install

để cài đặt các gói này.

Một số lỗi thường gặp

"Address already in use"

Lỗi này xảy ra vì có 1 process khác đang lắng nghe ở cổng 8069. Ta dùng lệnh sau để kiểm tra:

lsof -i :8069

Học lập trình online chất lượng nhất

Sau đó, ta dừng process (có ID: 15495 như hình) này rồi khởi chạy lại server:

kill -9 15495
./odoo.py

Lỗi ngày giờ

Học lập trình online kiếm việc làm

Click vào biểu tượng đó thấy lỗi: Timezone Mismatch. Các bạn vào Administator/Preferences và đổi Timezone là Etc/GMT -7.

Tôi kết thúc phần 2 ở đây. Ở phần cuối, tôi đưa ra một vài lưu ý khi cài đặt trên một VPS và một vài thiết lập chưa được đề cập ở bài này để tránh gây phức tập, đặc biêt với các bạn chưa quen môi trường Linux.