Giao diện người dùng Odoo 10

Cài đặt Odoo 10 từ mã nguồn trên Máy chủ Ubuntu 22.04

Odoo 10 được phát hành vào Ngày 5 Tháng 10, 2016 và hết hạn sử dụng vào ngày 5 tháng 10 năm 2019 (khi Odoo 13 được phát hành). Nó yêu cầu phiên bản Python 2.7 lỗi thời và không có sẵn trên Ubuntu 22.04. Tuy nhiên, có một số lý do khiến chúng ta vẫn muốn cài đặt Odoo 10 trên Ubuntu 22.04:

  • Bạn không có phiên bản Ubuntu cũ hơn hỗ trợ Python 2.7 và các thư viện khác mà Odoo 10 yêu cầu.
  • Bảo trì
  • Nâng cấp lên một phiên bản Odoo cao hơn
  • và các lý do khác (vui lòng cho tôi biết bằng cách để lại bình luận)

Xin lưu ý rằng nếu bạn đang tìm cách cài đặt các phiên bản Odoo khác, bạn có thể đọc các bài liên quan khác của tôi:

Nếu bạn là nhà phát triển Odoo, bạn có thể quan tâm đến Cách thiết lập môi trường phát triển Odoo trên Ubuntu 22.04.

Tóm tắt

Trong bài viết này, tôi sẽ hướng dẫn bạn 6 bước để cài đặt Odoo 10 trên máy chủ Ubuntu 22.04 để đạt được những điều sau:

  1. Mã nguồn của Odoo 10 được đặt tại /opt/odoo/odoo10
  2. Nó chạy dưới một tài khoản unix có tên odoo10 thuộc nhóm có tên odoo
  3. Nó có thể kết nối với PostgreSQL cục bộ dưới vai trò có tên odoo10 mà CÓ THỂ tạo cơ sở dữ liệu.
  4. Sau khi hoàn tất cài đặt, bạn có thể truy cập phiên bản Odoo 10 bằng trình duyệt web của mình
  5. Odoo 10 sẽ sử dụng PostgreSQL 10 để lưu trữ dữ liệu.

Bước1 - Tạo tài khoản người dùng để chạy Odoo

Để bảo mật, chúng ta nên chạy Odoo dưới một người dùng Linux riêng biệt có các thông số kỹ thuật sau:

  • Tài khoản người dùng sẽ được đặt tên odoo10;
  • Tài khoản người dùng sẽ không thể đăng nhập vì mục đích bảo mật;
  • Tài khoản người dùng phải là tài khoản hệ thống mà dưới đó daemon và các quy trình tự động khác chạy;
  • Một thư mục chính chuyên dụng để lưu trữ dữ liệu và các addon Odoo tùy chỉnh. Đó là một thực tiễn tốt để làm cho nó theo /home/ danh mục;
  • Tài khoản người dùng phải thuộc nhóm có quyền truy cập vào mã nguồn Odoo 10 (ví dụ: odoo);

Chạy lệnh sau để tạo nhóm odoo:

sudo addgroup odoo

Chạy lệnh sau để tạo tài khoản odoo10 và thêm nó vào nhóm odoo:

sudo adduser odoo10 --system \
--home=/home/odoo10 --disabled-login \
--disabled-password --ingroup odoo

Bước 2 - Cài đặt Python 2.7

Mặc dù Python 2.7 đã bị loại bỏ kể từ Ubuntu 20.04, chúng tôi vẫn có thể cài đặt nó bằng cách làm theo hướng dẫn của tôi về cách cài đặt Python 2.7 trên Ubuntu 22.04.

Sau đó, chúng tôi sẽ tạo một môi trường ảo cho Odoo 10 để chúng tôi có thể cách ly nó với những người khác để không phá vỡ những thứ hiện có. Hãy chắc chắn rằng bạn đã cài đặt virtualenv dành cho Python 2.7.

Tạo môi trường ảo

Tạo thư mục mẹ cho môi trường ảo của Odoo 10

sudo mkdir -p /python-venv/2.7/odoo10

Đặt quyền truy cập thích hợp cho nhóm odoo và tài khoản odoo10:

sudo chown -hR odoo10: /python-venv/2.7/odoo10

Chuyển tài khoản sang bash của odoo10:

sudo su - odoo10 -s /bin/bash

Tạo một môi trường ảo và đặt tên là odoo10:

virtualenv /python-venv/2.7/odoo10

Bây giờ, hãy thoát odoo10 để quay lại tài khoản người dùng trước đó.

exit

Bước 3 - Tải xuống mã nguồn Odoo 10 từ GitHub

Như đã nói trong phần Tóm tắt điều hành, chúng tôi sẽ lưu trữ mã nguồn Odoo 10 trong / opt / odoo / odoo10.

sudo mkdir /opt/odoo

Cấp quyền truy cập cho các tài khoản người dùng trong nhóm odoo để đọc mã nguồn Odoo:

sudo chown root:odoo /opt/odoo

Để tải xuống mã nguồn của Odoo 10 từ GitHub, chỉ cần chạy lệnh bên dưới để tải xuống mã nguồn Odoo 10 qua HTTP:

git clone -b 10.0 https://github.com/odoo/odoo.git /opt/odoo/odoo10

Hoặc, bạn có thể sao chép kho lưu trữ từ GitHub qua SSH để có hiệu suất và bảo mật tốt hơn bằng cách sử dụng lệnh sau:

git clone -b 10.0 git@github.com:odoo/odoo.git /opt/odoo/odoo10

Tùy thuộc vào tốc độ kết nối internet của bạn, quá trình này có thể mất vài phút hoặc hơn. Xin hãy kiên nhẫn!

Sau khi quá trình hoàn tất, bạn sẽ tìm thấy mã nguồn Odoo 10 trong thư mục /opt/odoo/odoo10/.

Bây giờ, hãy bảo mật mã nguồn của bạn để chỉ cho phép những người dùng của nhóm odoo để đọc nó.

sudo chown -hR root:odoo /opt/odoo/odoo10

Bước 4 - Cài đặt PostgreSQL cho Odoo 10

Tôi chưa được thử nghiệm Odoo 10 với phiên bản PostgreSQL mới nhất là PostgreSQL 14 đi kèm với Ubuntu 22.04 nhưng tôi tin rằng nó sẽ hoạt động. Tuy nhiên, nếu bạn đang cài đặt Odoo 10 cho máy chủ sản xuất của mình, tôi đoán bạn có thể muốn gắn bó với PostgreSQL 10 vì Odoo 10 được thiết kế cho PostgreSQL 9.6 và hỗ trợ thêm cho PostgreSQL 10 sau này.

Vì vậy, trong bài viết này, tôi sẽ hướng dẫn bạn cách cài đặt PostgreSQL 10. Bạn có thể đọc một bài viết khác của tôi nếu bạn muốn cài đặt nhiều phiên bản PostgreSQL trên Ubuntu 22.04.

Thêm PPA PostgreSQL chính thức

Vì Ubuntu 22.04 không có biết gì về các phiên bản PostgreSQL ngoài 14, chúng ta cần thêm PPA chính thức từ tác giả PostgreSQL

# Create the file repository configuration: 
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' 
# Import the repository signing key: 
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg 
# Update the package lists: 
sudo apt-get update 

Cài đặt PostgreSQL 10

sudo apt install postgresql-10 # version 10

Sau khi cài đặt hoàn tất và tôi giả sử rằng bạn chưa cài đặt bất kỳ postgreSQL nào trước đó, cổng lắng nghe của PostgreSQL 10 mới được cài đặt sẽ là 5432

Trong trường hợp bạn có nhiều phiên bản PostgreSQL đang chạy và bạn muốn sắp xếp lại việc gán các cổng, vui lòng làm theo hướng dẫn thay đổi cổng PostgreSQL.

Tạo Role cho cơ sở dữ liệu

Trong phần này, chúng tôi sẽ tạo các role SQL có cùng tên với tài khoản người dùng unix odoo10 cho mỗi phiên bản PostgreSQL để Odoo 10 chạy dưới odoo10 tài khoản sẽ có thể kết nối PostgreSQL bằng phương pháp xác thực danh tính (không sử dụng mật khẩu).

Vì cụm PostgreSQL 10 đã cài đặt đang chạy trên cổng 5432, chúng ta có thể sử dụng lệnh sau để tạo vai trò odoo10 cho PostgreSQL 10:

sudo -u postgres createuser odoo10 --interactive -p 5432

Khi được hỏi trong phiên tương tác, vui lòng nhập như sau:

Tạo vai trò odoo10 trong PostgreSQL 10
Tạo vai trò odoo10 trong PostgreSQL 10

Bước 5 - Cài đặt các gói và thư viện bắt buộc của Odoo 10

Các yêu cầu tiên quyết

Chạy lệnh sau để cài đặt các gói cần thiết để cài đặt thư viện Python sau này.

sudo apt install build-essential python-setuptools 
python2-dev libpq-dev libxml2-dev libxslt1-dev 
zlib1g-dev libsasl2-dev libldap2-dev libssl-dev 
libjpeg-dev

Cài đặt Less Compiler

Odoo 10 yêu cầu trình biên dịch Less (Less Compiler) để biên dịch less sang css. Đây là cách chúng ta cài đặt less compiler:

Đầu tiên, chúng ta sẽ cài đặt nodejs:

sudo apt install nodejs

Thứ hai, chúng ta sẽ cài đặt trình quản lý gói Nodejs (còn gọi là npm):

sudo apt install npm

Sau đó, nâng cấp npm lên phiên bản mới nhất:

sudo npm install -g npm

Bây giờ, hãy cài đặt trình biên dịch Less bằng npm. Xin lưu ý rằng phiên bản Less mới nhất sẽ không hoạt động với Odoo 10. Chúng ta chỉ cài Less 3.10.3 để có thể hoạt động với tất cả các phiên bản Odoo sử dụng Less (cụ thể là Odoo 9, Odoo 10, Odoo 11).

sudo npm install -g less@3.10.3
sudo npm install -g less-plugin-clean-css

Cài đặt wkhtmltopdf

Odoo tạo PDF từ HTML, đó là lý do tại sao chúng ta cần wkhtmltopdf.

Tải xuống wkhtmltopdf:

wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.jammy_amd64.deb

Cài đặt wkhtmltopdf:

sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb
# force install dependencies
sudo apt -f install

Cài đặt thư viện Python cho Odoo 10

Đầu tiên, chúng ta cần kích hoạt môi trường ảo Odoo 10 mà chúng ta đã tạo ở trên bằng cách thực hiện lệnh:

# switch to odoo10's bash
sudo su - odoo10 -s /bin/bash
# activate the virtual environment
source /python-venv/2.7/odoo10/bin/activate

Sau khi kích hoạt, bạn sẽ thấy (odoo10) là tiền tố của dấu nhắc lệnh của bạn. Sau đó, bạn có thể bắt đầu cài đặt các gói và thư viện bắt buộc của Odoo 10 bằng lệnh pip như sau:

pip install -r /opt/odoo/odoo10/requirements.txt

Khởi chạy Odoo 10

Bây giờ, hãy thử chạy lệnh sau để kiểm tra xem mọi thứ có ổn không:

/opt/odoo/odoo10/odoo-bin

Hoặc, nếu bạn muốn chạy Odoo 10 trên một cổng khác với 8069 (cổng mặc định của Odoo), ví dụ: 8089:

/opt/odoo/odoo10/odoo-bin --xmlrpc-port=8089

Sau đó, bạn sẽ thấy kết quả tương tự như bên dưới:

Chạy Odoo10 từ giao diện dòng lệnh
Chạy Odoo10 từ giao diện dòng lệnh

Bây giờ, bạn có thể bắt đầu mở trình duyệt web của mình và nhập địa chỉ http://ip_cua_server:8089 để xem kết quả như bên dưới:

Giao diện người dùng tạo cơ sở dữ liệu Odoo 10
Giao diện người dùng tạo cơ sở dữ liệu Odoo 10

Bây giờ, bạn có thể bắt đầu nhập tên cơ sở dữ liệu và các thông tin khác để Odoo 10 sẽ khởi tạo mọi thứ cho bạn

  • Tên cơ sở dữ liệu: v10_psql10
  • Email: your_name@example.com
  • Mật khẩu: mật khẩu bảo mật của bạn
  • Ngôn ngữ: chọn ngôn ngữ bạn thích trong danh sách ngôn ngữ thả xuống
  • Quốc gia: chọn quốc gia mà công ty của bạn được đăng ký chính thức. Chọn đúng có thể mang lại sự dễ dàng cho bạn sau này (ví dụ: các mô-đun bản địa hóa sẽ được cài đặt tương ứng)

Dừng Odoo 10

Để dừng phiên bản Odoo, chỉ cần nhấn Ctrl + C hai lần.

Thoát

Sau một số thao tác như trên, chúng ta có thể cần thoát khỏi môi trường chạy cho các tác vụ khác bằng cách sử dụng các lệnh sau:

# Deactivate the virtual environment
deactivate
# exit odoo10's bash session to get back the previous unix user
exit

Bước 6 - Chạy Odoo 10 dưới dạng dịch vụ / daemon

Trong phần này, tôi sẽ hướng dẫn bạn cách tạo dịch vụ khởi động cho Odoo 10 mới được cài đặt của bạn để Odoo 10 của bạn sẽ chạy như một dịch vụ và khởi động mỗi khi máy chủ được khởi động.

Tạo tệp cấu hình Odoo 10

Tệp cấu hình là tệp lưu trữ các chỉ thị cấu hình cho phép Odoo biết cách chạy (ví dụ: đường dẫn đến các module bổ trợ, cổng cơ sở dữ liệu, v.v.).

Trong phần này, mình sẽ tạo một tập tin cấu hình có tên là odoo10.conf và lưu trữ trong / home / odoo10 để Odoo 10 sử dụng sau này. Tôi sẽ sử dụng trình chỉnh sửa nano để tạo tệp:

sudo nano /home/odoo10/odoo10.conf

Bây giờ, hãy copy và paste những thứ sau vào giao diện người dùng trình soạn thảo nano của bạn:

[options]
addons_path = /opt/odoo/odoo10/odoo/addons,/opt/odoo/odoo10/addons
admin_passwd = admin
csv_internal_sep = ,
data_dir = /home/odoo10/.local/share/Odoo
db_host = False
db_maxconn = 64
db_name = False
db_password = False
db_port = False
db_template = template1
db_user = False
dbfilter = .*
demo = {}
email_from = False
geoip_database = /usr/share/GeoIP/GeoLite2-City.mmdb
import_partial =
limit_memory_hard = 2684354560
limit_memory_soft = 2147483648
limit_request = 8192
limit_time_cpu = 60
limit_time_real = 120
limit_time_real_cron = -1
list_db = True
log_db = False
log_db_level = warning
log_handler = :INFO
log_level = info
logfile = None
logrotate = False
longpolling_port = 8072
max_cron_threads = 2
osv_memory_age_limit = 1.0
osv_memory_count_limit = False
pg_path = None
pidfile = None
proxy_mode = False
reportgz = False
server_wide_modules = web,web_kanban
smtp_password = False
smtp_port = 25
smtp_server = localhost
smtp_ssl = False
smtp_user = False
syslog = False
test_commit = False
test_enable = False
test_file = False
test_report_directory = False
translate_modules = ['all']
unaccent = False
without_demo = False
workers = 0
xmlrpc = True
xmlrpc_interface =
xmlrpc_port = 8089

Bây giờ, lưu tệp và thoát bằng cách nhấn Ctrl + X, sau đó nhập y và nhấn nút Enter.

Để cho phép odoo10 truy cập tệp cấu hình:

sudo chown odoo10:root /home/odoo10/odoo10.conf

Tạo tệp dịch vụ

sudo nano /lib/systemd/system/odoo10.service

Bây giờ, sao chép và dán nội dung sau vào giao diện trình soạn thảo nano của bạn

[Unit]
Description=Odoo10
After=network.target postgresql.service

[Service]
Type=simple
PermissionsStartOnly=true
User=odoo10
Group=odoo
SyslogIdentifier=odoo10
PIDFile=/run/odoo10/odoo10.pid
ExecStartPre=/usr/bin/install -d -m755 -o odoo10 -g odoo /run/odoo10
ExecStart=/python-venv/2.7/odoo10/bin/python /opt/odoo/odoo10/odoo-bin -c /home/odoo10/odoo10.conf --pid=/run/odoo10/odoo10.pid
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID

[Install]
Alias=odoo10.service
WantedBy=multi-user.target

Bây giờ, lưu tệp và thoát bằng cách nhấn Ctrl + X, sau đó nhập y và nhấn nút Enter.

Chạy lệnh sau để thông báo cho systemd rằng có một tệp đơn vị dịch vụ mới:

sudo systemctl daemon-reload

Bây giờ, hãy kích hoạt dịch vụ và yêu cầu nó chạy khi khởi động:

sudo systemctl enable --now odoo10

Bây giờ, hãy khởi động Odoo 10 của bạn bằng systemd:

sudo systemctl start odoo10

Rồi, hãy mở trình duyệt web của bạn và nhập địa chỉ http://ip_cua_server:8089 để xem Giao diện người dùng tạo cơ sở dữ liệu Odoo 10.

Để dừng nó, chỉ cần chạy:

sudo systemctl stop odoo10

Để lại một câu trả lời