Wkhtmltopdf odoo 14

Odoo là một bộ ứng dụng kinh doanh nguồn mở phổ biến giúp các công ty quản lý và điều hành công việc kinh doanh của họ. Nó bao gồm một loạt các ứng dụng như CRM, Thương mại điện tử, lập trình trang web, thanh toán, kế toán, sản xuất, kho hàng, quản lý dự án, hàng tồn kho, v. v. , tất cả đều được tích hợp trên cùng một hệ thống

Odoo có thể được cài đặt theo nhiều cách khác nhau, tùy thuộc vào trường hợp sử dụng và công nghệ có sẵn. Cách dễ nhất và nhanh nhất để cài đặt Odoo là sử dụng kho lưu trữ chính thức

Cài đặt Odoo trong môi trường ảo hoặc khai thác dưới dạng container Docker, cho phép bạn kiểm tra giám sát ứng dụng nhiều hơn và cho phép bạn chạy nhiều phiên bản Odoo trên cùng một hệ thống

Bài viết này giải thích cách cài đặt và phát triển khai thác Odoo 14 bên trong môi trường ảo Python trên Ubuntu 20. 04. Chúng ta sẽ tải xuống Odoo từ kho lưu trữ GitHub chính thức và sử dụng Nginx làm proxy ngược

Nội dung chính

Yêu cầu trước khi cài đặt

Lệnh sau khi cài đặt Git , Pip , Node. js và các công cụ cần thiết để xây dựng(https. //linux hóa. com/post/how-to-install-gcc-on-ubuntu-20-04/) Các phần phụ thuộc của Odoo

sudo apt update
sudo apt install -y 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

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

Không được phép chạy Odoo dưới quyền của người dùng root, vì đó là rủi ro về bảo mật. Chúng ta sẽ tạo một nhóm và người dùng hệ thống mới với thư mục chính

sudo su - postgres -c "createuser -s odoo14"
3 sẽ chạy dịch vụ Odoo. Để làm như vậy, hãy nhập lệnh sau

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

Bạn có thể đặt tên cho người dùng bất kỳ thứ gì bạn muốn, miễn là bạn tạo một người dùng PostgreSQL có cùng tên

Cài đặt và cấu hình PostgreSQL

Odoo sử dụng PostgreSQL làm phần cuối của cơ sở dữ liệu. PostgreSQL được bao gồm trong kho lưu trữ chuẩn Ubuntu. To install it, please run

sudo apt install postgresql -y

Khi cài đặt hoàn tất, hãy tạo người dùng PostgreSQL có cùng tên với người dùng hệ thống đã tạo trước đó. Trong ví dụ này, đó là 

sudo su - postgres -c "createuser -s odoo14"
4

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

Cài đặt wkhtmltopdf

wkhtmltopdf là một bộ công cụ dòng mã nguồn mở để chuyển đổi trang HTML thành PDF và các định dạng hình ảnh khác nhau. Để báo cáo PDF trong Odoo, bạn cần cài đặt gói 

sudo su - postgres -c "createuser -s odoo14"
5 này. Phiên bản được đề xuất cho Odoo là phiên bản 
sudo su - postgres -c "createuser -s odoo14"
6, có thể tải xuống từ Github

________số 8

Sau khi tệp được tải xuống, hãy cài đặt tệp bằng cách nhập

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

Cài đặt và cấu hình Odoo 14

Chúng ta sẽ cài đặt Odoo từ các nguồn bên trong môi trường ảo Python đã được thiết lập

Đầu tiên, hãy thay đổi thành người dùng "odoo14"

sudo su - postgres -c "createuser -s odoo14"
0

Sao chép mã nguồn Odoo 14 từ GitHub

sudo su - postgres -c "createuser -s odoo14"
1

Tạo môi trường ảo Python mới cho Odoo

sudo su - postgres -c "createuser -s odoo14"
2

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

sudo su - postgres -c "createuser -s odoo14"
3

Cài đặt tất cả các mô-đun Python được yêu cầu với pip3

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

Nếu bạn gặp bất kỳ biên dịch lỗi nào trong quá trình cài đặt, hãy đảm bảo rằng tất cả các thành phần phụ thuộc bắt buộc được liệt kê trong ____17 phần đã được cài đặt

Sau khi hoàn tất, hãy hủy kích hoạt môi trường bằng cách đăng nhập

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

Create a new directory chứa các addon của bên thứ 3

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

Chúng ta sẽ thêm thư mục này vào tham số

sudo su - postgres -c "createuser -s odoo14"
8. Tham số này xác định danh sách các thư mục nơi Odoo tìm kiếm các mô-đun

Move to back user sudo your

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

Tạo một cấu hình tệp với nội dung sau

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

/etc/odoo14. conf

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

Đừng quên thay đổi 

sudo su - postgres -c "createuser -s odoo14"
9 to one what that an than more

Tạo Systemd Unit File

Open trình soạn thảo văn bản của bạn và dịch vụ tạo tệp được gọi là 

sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
0 với nội dung sau

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

/etc/systemd/system/odoo14. Dịch vụ

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

Thông báo cho systemd rằng tồn tại một tập tin đơn vị mới

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

Khởi động dịch vụ Odoo và cho phép nó khởi động khi khởi động máy chủ bằng cách chạy

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

Xác minh trạng thái dịch vụ

sudo apt install postgresql -y
0

Đầu ra sẽ giống như bên dưới, cho thấy dịch vụ Odoo đang hoạt động và đang chạy

sudo apt install postgresql -y
1

Để xem các thông báo đã được đăng nhập lại bằng dịch vụ Odoo, hãy sử dụng lệnh bên dưới

sudo apt install postgresql -y
2

Kiểm tra cài đặt

Mở trình duyệt của bạn và nhập.

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

Giả sử cài đặt thành công, một màn hình tương tự như sau sẽ xuất hiện

Wkhtmltopdf odoo 14
Wkhtmltopdf odoo 14

Cấu hình Nginx làm SSL Termination Proxy

Máy chủ web Odoo mặc định cho phép truy cập qua HTTP. Để làm cho việc phát triển khai thác Odoo an toàn hơn, chúng ta sẽ đặt Nginx  SSL Termination Proxy sẽ cho phép truy cập qua HTTPS

SSL Termination Proxy là proxy máy chủ xử lý mã hóa / giải mã SSL. Điều này có nghĩa là proxy (Nginx) sẽ xử lý và giải mã các kết nối TLS đến (HTTPS), đồng thời chuyển các yêu cầu chưa được mã hóa đến dịch vụ nội bộ (Odoo). Lưu lượng giữa Nginx và Odoo sẽ không được mã hóa (HTTP)

Sử dụng proxy ngược mang lại cho bạn rất nhiều lợi ích như Cân bằng tải, chấm dứt SSL, Lưu vào bộ nhớ đệm, Nén, Cung cấp Nội dung tĩnh, v. v

Đảm bảo rằng bạn đã trả lời các điều kiện giải quyết trước khi tiếp tục với phần này

  • Tên miền trỏ đến IP public server của bạn. Chúng ta sẽ sử dụng 
    sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
    2
  • Nginx đã được cài đặt
  • SSL only for your domain. Bạn có thể cài đặt chứng chỉ SSL Let's Encrypt miễn phí

Mở trình soạn thảo văn bản của bạn và tạo/chỉnh sửa tệp cho tên miền mới

sudo apt install postgresql -y
3

Cấu hình sau sẽ thiết lập Kết thúc SSL, chuyển hướng HTTP sang HTTPS , chuyển hướng WWW sang không WWW, lưu vào bộ nhớ cache của các tệp tĩnh và bật nén GZip

sudo apt install postgresql -y
4

Đừng quên thay thế ví dụ. com bằng miền Odoo của bạn và đặt đường dẫn chính đến các tệp chứng chỉ SSL.  

Sau khi hoàn tất, hãy khởi động lại dịch vụ Nginx

sudo apt install postgresql -y
5

Tiếp theo, chúng ta cần yêu cầu Odoo sử dụng proxy. Để làm như vậy, hãy mở tệp cấu hình và thêm dòng sau. /etc/odoo14. conf

sudo apt install postgresql -y
6

Khởi động lại dịch vụ Odoo để thay đổi hiệu lực

sudo apt install postgresql -y
7

Tại thời điểm này, proxy ngược đã được định cấu hình và bạn có thể truy cập phiên bản Odoo của mình tại 

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

Change Binding interface

Bước này là tùy chọn, nhưng nó là một phương pháp bảo mật tốt

Theo mặc định, máy chủ Odoo lắng nghe cổng 

sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
4 trên tất cả các giao diện. Để vô hiệu hóa quyền truy cập trực tiếp vào cá nhân Odoo, bạn có thể chặn cổng 
sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
4 cho tất cả các giao diện công cộng hoặc buộc Odoo chỉ nghe trên giao diện cục bộ

Chúng ta sẽ định cấu hình Odoo để chỉ lắng nghe 

sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
6. Open cấu hình, thêm hai dòng sau vào cuối tệp /etc/odoo14. conf

sudo apt install postgresql -y
8

Lưu cấu hình tệp và khởi động lại máy chủ Odoo để các thay đổi có hiệu lực

sudo apt install postgresql -y
7

Bật đa xử lý

Theo mặc định, Odoo đang hoạt động ở chế độ đa luồng. Đối với triển khai sản xuất, bạn nên thay đổi sang máy chủ đa xử lý vì nó tăng tính ổn định và sử dụng tài nguyên hệ thống tốt hơn

Để bật đa xử lý, bạn cần chỉnh sửa cấu hình Odoo và đặt số lượng quy trình worker khác 0. Số lượng công nhân được tính toán dựa trên số lượng CPU lõi trong hệ thống và bộ nhớ RAM khả dụng

Theo tài liệu công thức chính của Odoo , để tính toán số lượng worker và kích thước bộ nhớ RAM cần thiết , bạn có thể sử dụng các công thức và giả định sau

Tính toán số worker

  • Số worker tối đa theo lý thuyết = (system_cpus * 2) + 1
  • 1 worker can server ~ = 6 user dong time
  • Worker Cron cũng yêu cầu CPU

Tính toán kích thước bộ nhớ RAM

  • Chúng ta sẽ nhận xét rằng 20% ​​tổng số yêu cầu là yêu cầu nặng và 80% là yêu cầu nhẹ hơn. Các yêu cầu nặng đang sử dụng khoảng 1 GB RAM trong khi các yêu cầu nhẹ hơn sử dụng khoảng 150 MB RAM
  • RAM need = 
    sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
    7

Nếu bạn không biết mình có bao nhiêu CPU trên hệ thống của mình, hãy sử dụng lệnh sau

sudo su - postgres -c "createuser -s odoo14"
0

Giả sử bạn có một hệ thống với CPU 4 nhân, RAM 8 GB và 30 người dùng Odoo đồng thời

  • sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
    8 (5 là số lượng worker cần thiết theo lý thuyết)
  • sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
    9 (9 là số worker tối đa theo lý thuyết)

Dựa vào tính năng cho phép, bạn có thể sử dụng 5 worker + 1 worker cho worker cron đó là tổng cộng 6 worker

Tính toán mức tiêu thụ bộ nhớ RAM dựa trên số worker

  • sudo apt install ./wkhtmltox_0.12.6-1.bionic_amd64.deb
    0

Tính toán để cài đặt Odoo cần khoảng 2GB RAM

Để chuyển sang chế độ xử lý đa chế độ, hãy mở tệp cấu hình và thay đổi các giá trị đã tính /etc/odoo14. conf

sudo su - postgres -c "createuser -s odoo14"
1

Khởi động lại dịch vụ Odoo để thay đổi hiệu lực

sudo apt install postgresql -y
7

Phần còn lại của tài nguyên hệ thống sẽ được sử dụng bởi các dịch vụ khác chạy trên hệ thống này. Trong hướng dẫn này, chúng tôi đã cài đặt Odoo cùng với PostgreSQL và Nginx trên cùng một máy chủ. Tùy thuộc vào thiết lập của bạn, bạn cũng có thể có các dịch vụ khác đang chạy trên máy chủ của mình

Phần kết luận

Bài viết này đã hướng dẫn bạn cách cài đặt Odoo 14 trên Ubuntu 20. 04 trong môi trường ảo Python sử dụng Nginx làm proxy ngược. Chúng ta cũng đã tìm hiểu cách bật xử lý tối đa và tối ưu hóa Odoo cho môi trường sản xuất

Bạn cũng có thể muốn xem hướng dẫn về cách tạo bản sao lưu tự động hàng ngày cho nền tảng Odoo