Hướng dẫn cài đặt OpenERP 7 trên Ubuntu Server 12.04 LTS

Mở đầu

Những năm gần đây, giải pháp phần mềm nguồn mở OpenERP đã ngày càng chứng minh được vị thế là phần mềm Quản trị và Hoạch định nguồn lực doanh nghiệp tổng thể tốt nhất và phổ biến nhất thế giới, thu hút hàng triệu doanh nghiệp sử dụng cũng như hàng trăm ngàn lập trình viên và các nhà phát triển chuyên sâu vào các giải pháp lấy OpenERP làm nền tảng (trong đó có chúng tôi).

Tại Việt Nam, các chủ doanh nghiệp và các nhà quản lý gần đây cũng đã nhận thức ra được tầm quan trọng mang tính sống còn và đầy chiến lược của việc áp dụng một giải pháp phần mềm Quản trị tổng thể (cụ thể là các giải pháp ERP & CRM). Do nhu cầu này ngày càng tăng mạnh dẫn đến việc hình thành một đội ngũ ngày càng đông đảo các nhà phát triển, các lập trình viên cũng như các đơn vị cung cấp giải pháp ERP & CRM.

Không bỏ qua một giải pháp nổi tiếng thế giới như OpenERP, cộng đồng các nhà phát triển, lập trình viên OpenERP cũng dần hình thành. Để hỗ trợ cho cộng đồng OpenERP Việt Nam (gồm cả người dùng cuối, các nhà phát triển và các lập trình viên OpenERP), tôi dành thời gian viết entry này để hướng dẫn cách thức cài đặt OpenERP, giúp cộng đồng có thể nhanh chóng tiếp cận và kiểm thử giải pháp ERP & CRM tiêu chuẩn quốc tế này.

Hướng dẫn cài đặt

Các bước chuẩn bị:

  • OpenERP có thể cài đặt được trên nhiều hệ điều hành khác nhau, bao gồm Windows, Mac OS, Lunix (Ubuntu, CentOS, v.v.). Trong phạm vi bài này, tôi giới thiệu cách cài đặt trên Ubuntu, phiên bản 12.04.
  • Bạn cần có một máy tính hoặc máy chủ, cài mới hệ điều hành Ubuntu 12.04 LTS. Trong phạm vi giới hạn bài viết này, tôi sẽ không hướng dẫn cách cài đặt Ubuntu. Nếu bạn chưa biết cách cài đặt Ubuntu, có thể nhờ đến người bạn Google!

Thực tế, bạn có thể download bản OpenERP đóng gói sẵn (.deb) và chạy lệnh dkkg -i xxxxxxxx.deb là có thể cài đặt được OpenERP. Tuy nhiên, trong phạm vi bài này, tôi sẽ hướng dẫn cách xây dựng từ mã nguồn của OpenERP. Cách làm này hơi khó hơn một chút những sẽ mang lại nhiều thuận lợi cho bạn sau này (về việc nâng cấp, cấu hình, bảo trì, sửa lỗi, phát triển các phân hệ của riêng mình, v.v.)

Xây dựng máy chủ OpenERP

1. Cập nhật các gói hiện có trên Ubuntu Server lên phiên bản mới nhất

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Sau bước này, bạn nên khởi động lại Ubuntu, đôi khi không cần nhưng nên làm để đảm bảo các gói nâng cấp có hiệu lực và hệ thống hoạt động ổn định.

2. Tạo một tài khoản Ubuntu (kiểu system, tên openerp) để thực thi OpenERP

sudo adduser --system --home=/home/openerp --group openerp

Để đăng nhập vào tài khoản openerp mới tạo này, bạn có thể chạy lệnh sau:

sudo su - openerp -s /bin/bash

Thoát tài khoản openerp để trở lại tài khoản trước đó

exit

3. Cài đặt và cấu hình Hệ quản trị Cơ sở Dữ liệu PostgreSQL

Để lưu trữ dữ liệu, OpenERP sử dụng Hệ Quản trị Cơ sở dữ liệu PostgreSQL, do đó, bạn cần phải có một server có PostgreSQL. Server PostgreSQL này có thể là server độc lập hoặc có thể cài chung với OpenERP. Trong môi trường hoạt động thât, chúng ta nên cài tách riêng để dễ bảo trì cũng như giảm thiểu rủi ro trục trặc.

Để cài đặt PostgreSQL, bạn có thể tham khảo bài Hướng dẫn biên dịch và cài đặt PostgreSQL 9.2.x trên Ubuntu 12.04 LTS mà tôi đã viết cách đây ít lâu. Nếu bạn đã có sẵn server PostgreSQL rồi thì xin chúc mừng, bạn có thể đến bước tiếp theo.

4. Tạo database user cho OpenERP

Để OpenERP có thể kết nối & sử dụng (đọc, ghi, xóa, cập nhật, thêm mới, v.v.) cơ sở dữ liệu PostgreSQL, chúng ta phải cấp cho OpenERP một tài khoản PostgreSQL. Dưới đây là câu lệnh tạo tài khoản PostgreSQL có tên pg_openerp:

su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt pg_openerp

Hệ thống sẽ hiển thị dấu nhắc yêu cầu bạn nhập mật khẩu cho tài khoản pg_openerp này.

Lưu ý: nếu PostgreSQL của bạn không nằm cùng một server với OpenERP, bạn sẽ cần phải đăng nhập vào PostgreSQL server để thực hiện lệnh bên trên.

 5. Cài đặt các thư viên Python cần thiết cho OpenERP trên server cài đặt OpenERP

sudo apt-get install python-dateutil python-docutils python-feedparser python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi

Download & Cài đặt thư viện gdata để giúp OpenERP khả năng tích hợp với Google Apps

cd /usr/src
sudo wget https://gdata-python-client.googlecode.com/files/gdata-2.0.17.zip
cd gdata-2.0.17
sudo python setup.py install

 Đến đây, chúng ta đã có các thư viện tối thiểu để OpenERP 7 có thể hoạt động.

6. Tải về mã nguồn (Source code) của OpenERP 7

Tải về mã nguồn (Source Code) bản OpenERP 7 mới nhất vào thư mục của user  openerp

sudo su
cd /home/openerp
wget http://nightly.openerp.com/7.0/nightly/src/openerp-7.0-latest.tar.gz

Giải nén mã nguồn

tar xvfz openerp-7.0-latest.tar.gz

Đổi tên thư mục mã nguồn vừa giải nén thành server (bạn cần phải thay source_code thành tên thực tế của bộ mã nguồn mà bạn vừa giải nén ra)

mv source_code server

Để tài khoản openerp có thể truy cập mã nguồn và thực thi OpenERP, chúng ta cần chown và chmod có các file trong thư mục mã nguồn.

chown -hR openerp: /home/openerp/*
find . -type d -exec chmod 700 {} \;
find . -type f -exec chmod 600 {} \;
chmod 755 /home/openerp/server/openerp-server

 Chuẩn bị tập tin cấu hình cho OpenERP 7:

sudo cp /opt/openerp/server/install/openerp-server.conf /etc/
sudo chown openerp: /etc/openerp-server.conf
sudo chmod 640 /etc/openerp-server.conf

Để cho phép OpenERP kết nối với cơ sở dữ liệu, chúng ta cần phải khai báo thông tin cở sở dữ liệu trong tập tin cầu hình /etc/openerp-server.conf với các thông số của cơ sở dữ liệu như sau:

db_host=10.0.x.x
db_password=yyy
db_port=5432
db_user=pg_openerp

Với db_host là IP của PostgreSQL Server; db_password là mật khẩu của tài khoản pg_openerp mà bạn đã tạo ở bên trên; db_port là port truy cập vào PostgreSQL (mặc định là 5432, bạn nên đổi port này để tăng tính bảo mật); db_user là tên tài khoản dùng để truy cập vào PostgreSQL mà bạn đã tạo ở bên trên (e.g. pg_openerp)

 

[Bài còn tiếp]