🖥️ DevOps
cover

Hướng dẫn cài đặt Wiki.js trên hosting cPanel

Giới thiệu

Wiki.js là một hệ thống quản lý nội dung mã nguồn mở mạnh mẽ, phù hợp để xây dựng tài liệu và kiến thức nội bộ. Bài viết này hướng dẫn bạn cách cài đặt Wiki.js trên hosting sử dụng cPanel.


Yêu cầu hệ thống

Trước khi bắt đầu, hãy kiểm tra hosting của bạn đáp ứng các yêu cầu sau:

  • Node.js: Phiên bản 18.x trở lên
  • Database:
    • PostgreSQL: Phiên bản 9.5 trở lên
    • mysql = Phiên bản MySQL 8.0 trở lên
    • mariadb = Phiên bản MariaDB 10.2.7 trở lên
    • mssql = Phiên bản MS SQL Server 2012 trở lên
    • sqlite = Phiên bản SQLite 3.9 trở lên
  • Quyền truy cập SSH: Để chạy các lệnh cần thiết.
  • Dung lượng: Tối thiểu 512MB RAM và 2GB dung lượng đĩa.

Các bước cài đặt

Bước 1: Đăng nhập cPanel

Truy cập vào cPanel thông qua URL do nhà cung cấp hosting cung cấp.

Đăng nhập bằng tài khoản và mật khẩu của bạn.

Bước 2: Cài đặt Node.js

Trong giao diện cPanel, tìm mục Setup Node.js App hoặc tương tự.

image.png

Sau đó chọn phiên bản Node.js 18.x trở lên và thiết lập một ứng dụng mới:

  • Application root: Thư mục nơi bạn muốn cài đặt Wiki.js (ví dụ: wikijs).
  • Application URL: Chọn đường dẫn truy cập (ví dụ: https://example.com/wiki).
  • Các phần thiết lập khác bạn để mặc định hoặc không điều chỉnh gì.

CleanShot 2024-12-24 at 14.56.37.png

Bước 3: Tạo database

Trong cPanel, tìm mục Database Wizard.

  • Tạo một cơ sở dữ liệu mới(Step 1: Create A Database):
    • Database Name: Bạn đặt tên cho database.

CleanShot 2024-12-24 at 16.10.54.png

  • Tạo một người dùng mới(Step 2: Create Database Users):
    • Username: Bạn đặt tên user database.
    • Password: Mật khẩu của user database.

CleanShot 2024-12-24 at 16.12.03.png

  • Gán người dùng vào cơ sở dữ liệu với quyền All Privileges(Step 3: Add user to the database).

CleanShot 2024-12-24 at 16.12.56.png

Bước 4: Kết nối SSH

Sử dụng một ứng dụng SSH (như PuTTY) để kết nối đến máy chủ.

  • Đăng nhập bằng tài khoản SSH của bạn.

Bước 5: Tải và cài đặt Wiki.js

Điều hướng đến thư mục của ứng dụng Node.js đã tạo. Bạn bấm vào đường dẫn thư mục ở phần Enter to the virtual environment. To enter to virtual environment, run the command để copy đường dẫn thư mục chính xác nhất nhé.

CleanShot 2024-12-24 at 16.47.36.png

Trong bài này mình sẽ sử dụng yarn để build thay vì sử dụng npm

Sau khi đã vào thư mục của ứng dụng node.js bạn dùng lệnh sau để cài yarn

npm install -g yarn

Tiếp theo để đảm bảo bạn xoá hết các thư mục / file và chỉ để lại file .htaccess trong thư mục dự án node.js.

Sau đó bạn tải source code của Wiki.js về lệnh sau:

git clone <https://github.com/requarks/wiki.git>

Tiếp theo bạn di chuyển(move) toàn bộ source code từ wiki ra bên ngoài thư mục của ứng dụng Node.js

mv đường/dẫn/thư/mục/của/ứng/dụng/wiki/* đường/dẫn/thư/mục/của/ứng/dụng/

Tiếp theo bạn thay đổi tên file config.sample.yml thành config.yml

mv config.sample.yml config.yml

Thay đổi tên file xong, bạn mở file config.yml để cấu hình kết nối database mà bạn đã tạo trước đó ở Bước 3: Tạo database.

Ở bài này mình sẽ dùng mariadb nên phần thông tin kết nối database sẽ như bên dưới**:**

db:
  type: mariadb (bạn có thể điều chỉnh lại phần **type** để phù hợp với service database mà server bạn đang dùng)
  host: localhost
  port: 3306 
  user: Username (Thay bằng user database mà bạn đã tạo ở bước 3)
  pass: Password (Thay bằng password user mà bạn đã tạo ở bước 3)
  db: Database Name (Thay bằng database mà bạn đã tạo ở bước 3)

Ngoài ra nếu bạn muốn truy cập với SSL(https). Thì ở file config.yml bạn tìm tới dòng cấu hình ssl để cấu hình bật sử dụng ssl. Ở bài này mình sẽ dùng letsencrypt nên phần cấu hình sẽ như sau:

ssl:
  enabled: true
  port: 3443
  provider: letsencrypt

  domain: yourdomain.com (Thay bằng URL mà bạn đã thiết lập ở Application URL)
  subscriberEmail: admin@example.com

Sau khi đã thiết lập và cấu hình xong hết. Bạn sử dụng lệnh sau, để cài đặt các node_modules

yarn install

CleanShot 2024-12-24 at 18.35.42.png

Quá trình cài đặt sẽ có hơi lâu, sau khi quá trình hoàn tất bạn dùng lệnh sau để build:

yarn run build

CleanShot 2024-12-24 at 18.42.23.png

Nếu có phát sinh lỗi như bên dưới:

yarn run v1.22.22
$ NODE_OPTIONS=--openssl-legacy-provider webpack --profile --config dev/webpack/webpack.prod.js
/opt/alt/alt-nodejs20/root/usr/bin/node: --openssl-legacy-provider is not allowed in NODE_OPTIONS
error Command failed with exit code 9.
info Visit <https://yarnpkg.com/en/docs/cli/run> for documentation about this command.

Bạn mở file package.json sau đó xoá bỏ dòng NODE_OPTIONS=--openssl-legacy-provider ở dòng build đi rồi bạn chạy lại lệnh trên.

CleanShot 2024-12-24 at 18.22.34.png

Bước 6: Cấu hình Wiki.js

Cuối cùng truy cập trình duyệt web tại URL đã cấu hình (ví dụ: https://example.com/wiki) và làm theo các bước trên giao diện để:

  • Thiết lập tài khoản quản trị.

Như vậy là quá trình build đã hoàn tất.

CleanShot 2024-12-24 at 18.58.57.png


Lưu ý

  • Luôn cập nhật Wiki.js để đảm bảo bảo mật.
  • Sao lưu dữ liệu thường xuyên, bao gồm cả cơ sở dữ liệu database.
  • Nếu gặp lỗi, kiểm tra file log của ứng dụng trong cPanel.

Kết luận

Với các bước trên, bạn đã cài đặt thành công Wiki.js trên hosting sử dụng cPanel. Hệ thống Wiki.js sẽ giúp bạn quản lý kiến thức hiệu quả và chuyên nghiệp hơn.