IT Blog

Kiến thức Linux Odoo

Hướng dẫn cài đặt Odoo 15 trên Ubuntu 22.04 (LTS)

Phần hướng dẫn này được thực hiện trên Ubuntu Server 22.04 chưa cài đặt bất kỳ dịch vụ nào trên đó.

1. Cập nhật hệ thống

sudo apt update -y && apt upgrade -y

2. Cài đặt các gói phụ thuộc

sudo apt install python3-pip wget python3-dev python3-venv python3-wheel libxml2-dev libpq-dev libjpeg8-dev liblcms2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev build-essential git libssl-dev libffi-dev libmysqlclient-dev libjpeg-dev libblas-dev libatlas-base-dev -y

3. Cài đặt và cấu hình cơ sở dữ liệu (Database)

Odoo sử dụng  PostgreSQL làm cơ sở dữ liệu bổ trợ. Đề cài đặt PostgreSQL, sử dụng câu lệnh:

sudo apt install postgresql -y

Sau khi cài đặt PostgreSQL, chúng ta cần tạo người dùng PostgreSQL và đặt tên là odoo15

sudo su - postgres -c "createuser -s odoo15"

4. Tạo người dùng hệ thống

Bây giờ bạn cần tạo một người dùng hệ thống cho phiên bản Odoo15. Để làm điều đó, hãy chạy lệnh này:

sudo useradd -m -d /opt/odoo15 -U -r -s /bin/bash odoo15

5. Cài đặt wkhtmltopdf

Wkhtmltopdf là một công cụ dòng lệnh mã nguồn mở hiển thị HTML sang định dạng PDF bằng công cụ kết xuất Qt WebKit. Công cụ này cần thiết để in các báo cáo PDF. Để cài đặt Wkhtmltopdf, chúng ta cần cài đặt gói wkhtmltox.

 Vì gói wkhtmltopdf có trong kho lưu trữ Ubuntu 22.04 không hỗ trợ đầu trang và chân trang, bạn cần tải xuống gói từ Github và cài đặt nó.

Trước khi tải xuống gói wkhtmltox từ Github , cần cài đặt libssl1.1 vì wkhtmltox phụ thuộc vào gói này.

Vì Ubuntu 22.04 đã nâng cấp libssl lên phiên bản 3 nên chúng ta cần thêm nguồn ubuntu 21.10 để buộc cài đặt libssl1.1.

echo “deb http://security.ubuntu.com/ubuntu impish-security main” | sudo tee /etc/apt/sources.list.d/impish-security.list

sudo apt-get update

sudo apt-get install libssl1.1 -y

CẬP NHẬT: Nếu kho lưu trữ không cập nhật được, bạn có thể tải xuống gói libssl1.1 theo cách thủ công và cài đặt.

Để cài đặt gói libssl1.1 theo cách thủ công, hãy làm theo các bước sau:

sudo wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb

sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Bây giờ chúng ta tiến hành cài đặ wkhtmltoppdf:

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

chmod +x wkhtmltox_0.12.6-1.focal_amd64.deb

sudo apt install ./wkhtmltox_0.12.6-1.focal_amd64.deb

Tạo liên kết:

ln -s /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf

Kiểm tra xem đã cài đặt thành công hay không:

wkhtmltopdf --version

ubuntu@oneit:~# wkhtmltopdf --version
wkhtmltopdf 0.12.6 (with patched qt)

6. Cài đặt và cấu hình Odoo 15

Điều đầu tiên chúng ta cần làm là chuyển sang người dùng odoo15.

su - odoo15

Tài Odoo 15 từ kho lưu trữ Github

git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo15/odoo

Di chuyển tới thư mục odoo15

cd /opt/odoo15

Sau đó, tạo một môi trường ảo

python3 -m venv myodoo15-venv

Kích hoạt môi trường ảo

source myodoo15-venv/bin/activate

Sau đó, chúng ta sẽ cài đặt tất cả các phụ thuộc Odoo15. Trước tiên, hãy cài đặt module wheel:

pip3 install wheel

(myodoo15-venv) pip3 install wheel

Sau đó, cài đặt các module python được liệt kê trong tệp requirements.txt.

Nhưng trước khi tiến hành cài đặt các phần phụ thuộc khác, chúng ta cần chỉnh sửa tệp requirements.txt để các module khác tương thích với Python 3.10, phiên bản python mặc định của Ubuntu 22.04.

Mở tệp requirements.txt bằng lệnh vim và sửa dòng sau:

vim /opt/odoo15/odoo/requirements.txt

Sửa 2 dòng sau:

gevent==20.9.0 ; python_version > '3.7' and python_version <= '3.9'

greenlet==0.4.17 ; python_version > '3.7' and python_version <= '3.9'

Thành:

gevent>=20.9.0 ; python_version > '3.8'

greenlet>=0.4.17 ; python_version > '3.7'

Nhìn vào gói được đánh dấu, đó là những gói cần được cập nhật, về cơ bản, bạn chỉ cần thiết lập phiên bản gevent greenlet để cài đặt phiên bản tương thích mới nhất nếu phiên bản Python lớn hơn tương ứng với Python 3.7 và Python 3.8.

Bây giờ, sau khi chỉnh sửa tệp requirements.txt, lưu chỉnh sửa và cài đặt các gói phụ thuộc cho Odoo15.

pip3 install -r odoo/requirements.txt

Sau khi cài đặt các phụ thuộc, chúng ta cần hủy kích hoạt môi trường ảo

deactivate

(myodoo15-venv) deactivate

Tạo một thư mục cho các chương trình bổ trợ tùy chỉnh

mkdir /opt/odoo15/custom-addons

Thoát người dùng odoo15

exit

Tạo tệp cấu hình của phiên bản Odoo15

sudo vim /etc/odoo15.conf

Thêm các dòng sau vào tệp odoo15.conf

[options]

; This is the password that allows database operations:

admin_passwd = admin_password

db_host = False

db_port = False

db_user = odoo15

db_password = False

xmlrpc_port = 8069

logfile = /var/log/odoo15/odoo.log

addons_path = /opt/odoo15/odoo/addons,/opt/odoo15/custom-addons

Hãy đảm bảo thay đổi “admin_password” thành mật khẩu ưa thích của bạn, sau đó lưu và đóng tệp

Tiếp theo, tạo một thư mục nhật ký

sudo mkdir /var/log/odoo15

Đặt quyền sở hữu thư mục nhật ký cho người dùng odoo15

chown odoo15:root /var/log/odoo15

7. Tạo service Odoo systemd

Để dễ dàng quản lý phiên bản Odoo15, chúng ta cần tạo một tệp đơn vị systemd

sudo vim /etc/systemd/system/odoo15.service

Thêm các dòng sau vào tệp odoo15.service

[Unit]

Description=Odoo15

Requires=postgresql.service

After=network.target postgresql.service

[Service]

Type=simple

SyslogIdentifier=odoo15

PermissionsStartOnly=true

User=odoo15

Group=odoo15

ExecStart=/opt/odoo15/myodoo15-venv/bin/python3 /opt/odoo15/odoo/odoo-bin -c /etc/odoo15.conf

StandardOutput=journal+console

[Install]

WantedBy=multi-user.target

Lưu và đóng tệp và tải lại daemon systemd để áp dụng các thay đổi

sudo systemctl daemon-reload

Khởi động và kích hoạt dịch vụ Odoo15

sudo systemctl enable --now odoo15

Kiểm tra trạng thái của dịch vụ Odoo15

sudo systemctl status odoo15

ubuntu@oneit:~# sudo systemctl status odoo15
● odoo15.service – Odoo15
Loaded: loaded (/etc/systemd/system/odoo15.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2022-06-22 11:41:42 UTC; 36s ago
Main PID: 47893 (python3)
Tasks: 4 (limit: 992)
Memory: 95.4M
CPU: 4.484s
CGroup: /system.slice/odoo15.service
└─47893 /opt/odoo15/myodoo15-venv/bin/python3 /opt/odoo15/odoo/odoo-bin -c /etc/odoo15.conf
Jun 22 11:41:42 oneit systemd[1]: Started Odoo15.

Cuối cùng, bạn sẽ có thể truy cập phiên bản odoo15 của mình tại http: // ipaddress: 8069

Kết luận

Trong hướng dẫn này, bạn đã học cách cài đặt Odoo 15 trên Ubuntu 22.04. Nếu bạn có thắc mắc, đừng ngại để lại bình luận và chúng tôi sẽ cố gắng giải đáp.

Cảm ơn bạn và hy vọng bạn thích hướng dẫn của chúng tôi?

Leave a Reply

Your email address will not be published. Required fields are marked *