Instance Odoo là gì?
Instance Odoo là một service để bạn có thể chạy được odoo trên server, trên một server các bạn có thể tạo được nhiều instance. Điều đó có nghĩa là trên cùng một server, các bạn có thể chạy được cùng lúc nhiều giả lập môi trường Odoo khác nhau.
Cách cài đặt Odoo trên server debian mình đã hướng dẫn, các bạn có thể xem lại tại đây.
Hướng dẫn tạo nhiều instance Odoo trên server debian.
1. Tạo thư mục chứa file config.
sudo mkdir /etc/openerp
2. Tạo file config.
nano /etc/init.d/tên-file-config.conf
Bạn copy nội dung sau bỏ vào file config:
[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = ip-server
db_port = 5432
db_user = user-db-postgresql
db_password = password-db
addons_path = thư mục chứa addon odoo
;Log settings
logfile = thư mục chứa file log
log_level = error
xmlrpc_port = port
Các bạn có thể tham khảo thêm các thuộc tính cho file config tại Odoo documentation.
3. Tạo file service.
nano /etc/init.d/tên-file-service
Bạn copy nội dung sau bỏ vào file service:
#!/bin/sh
### BEGIN INIT INFO
# Provides: openerp-server
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Enterprise Resource Management software
# Description: Open ERP is a complete ERP and CRM software.
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=thư mục chứa addon odoo/openerp-server
NAME=tên-file-config
DESC=tên-file-config
CONFIG=/etc/openerp/tên-file-config.conf
LOGFILE=thư-mục-chứa-file-log/tên-file-config.log
USER=user-trong-server
test -x ${DAEMON} || exit 0
set -e
do_start () {
echo -n "Starting ${DESC}: "
start-stop-daemon --start --quiet --pidfile /var/run/${NAME}.pid --chuid ${USER} --background --make-pidfile --exec ${DAEMON} -- --config=${CONFIG} --logfile=${LOGFILE}
echo "${NAME}."
}
do_stop () {
echo -n "Stopping ${DESC}: "
start-stop-daemon --stop --quiet --pidfile /var/run/${NAME}.pid --oknodo
echo "${NAME}."
}
case "${1}" in
start)
do_start
;;
stop)
do_stop
;;
restart|force-reload)
echo -n "Restarting ${DESC}: "
do_stop
sleep 1
do_start
;;
*)
N=/etc/init.d/${NAME}
echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
4. Phân quyền file service và file config.
sudo chown user-trong-server: /etc/openerp/tên-file-config.conf
sudo chmod 640 /etc/tên-file-config.conf
chmod 755 /etc/init.d/tên-file-service
chown root: /etc/init.d/tên-file-service
5. Bật, tắt service.
service tên-file-service start/stop/restart/status
Lưu ý:
Khi bạn gặp lỗi : [Errno 98] Address already in use.
Bạn khắc phục theo các bước sau:
Gõ các câu lệnh sau:
ps-ef | grep openerp-server
Tìm dòng có chữ: python ./openerp-server
sudo kill -9 - number-id
Kết luận:
Mình vừa giới thiệu đến các bạn cách cài đặt Odoo trên server Debian. Các bạn có thắc mắc gì có thể để lại comment chia sẽ bên dưới.
Cảm ơn các bạn theo dõi.