Hotline : 07 088 44444
Thích
Chia sẻ

Hướng dẫn lưu trữ Node JS Application với cPanel

24/08/2021

Lưu trữ Node.js trước đây là một công việc phức tạp, đặc biệt là trên các máy chủ web hosting nhiều người dùng. Tuy nhiên, với cPanel & WHM’s Application Manager, việc cài đặt các ứng dụng JavaScript và định cấu hình môi trường Node.js sẽ dễ dàng hơn nhờ việc trao quyền cho các máy chủ web cung cấp các dịch vụ lưu trữ Node.js trực quan với giao diện đồ họa dễ sử dụng.

Bài viết này giải thích cách kích hoạt  cPanel’s Application Manager và cách cài đặt, đăng ký và quản lý các ứng dụng Node.js.

Bài viết này sẽ giải thích cách kích hoạt Trình quản lý ứng dụng của cPanel và cách cài đặt, đăng ký và quản lý các ứng dụng Node.js.

Bắt đầu với cPanel Application Manager

Người dùng cPanel có thể đăng ký các ứng dụng Node.js và liên kết với một miền trong  Application Manager. Để cung cấp tính năng này cho hosting user, quản trị viên máy chủ trước tiên nên cài đặt một số gói hỗ trợ và đảm bảo rằng  Application Manager đã được kích hoạt.

Hướng dẫn này sẽ sử dụng WHM’s Feature Manager để bật  Application Manager. Mở  Application Manager bên dưới Packages trong  sidebar menu WHM.

Click vào nút  Edit button dưới Manage Feature List với danh sách the Default được chọn trong menu thả xuống.

Hướng dẫn lưu trữ Node JS Application với cPanel
Hướng dẫn lưu trữ Node JS Application với cPanel

Nhập Application Manager vào trường tìm kiếm và xác minh rằng mục nhập của nó trong danh sách tính năng đã được chọn. Nếu không, hãy nhấp vào hộp bên cạnh, sau đó nhấp vào Save  ở cuối trang.

Tiếp theo, chúng tôi sẽ cài đặt phần mềm cho phép cPanel chạy và quản lý các ứng dụng Node.js, bao gồm máy chủ ứng dụng mod_passenger và môi trường EasyApache4’s Node. Bạn sẽ cần đăng nhập với quyền root bằng SSH để cài đặt phần mềm:

yum install ea-ruby24-mod_passenger ea-apache24-mod_env ea-nodejs10

Application Manager hiện có sẵn trong tài khoản cPanel của người dùng và sẵn sàng lưu trữ các ứng dụng Node.js.

Tạo ứng dụng trong cPanel Application Manager

Lưu trữ node js application với cpanel là quy trình gồm hai bước:

  1. Cài đặt ứng dụng trên máy chủ.
  2. Đăng ký ứng dụng với Application Manager.

Việc đăng ký ứng dụng sẽ được trình bày trong phần tiếp theo, nhưng trước tiên chúng ta cần cài đặt ứng dụng đó trên máy chủ. Người dùng của hệ thống kiểm soát phiên bản Git ™ có thể sao chép kho lưu trữ bằng ứng dụng dòng lệnh hoặc giao diện cPanel’s Git Version Control. Tuy nhiên, để minh họa quá trình này, chúng tôi sẽ tạo một ứng dụng một tệp đơn giản.

Đăng nhập bằng SSH với tư cách là người dùng cPanel và tạo một thư mục mới trong thư mục chính.

mkdir nodejsapp

Đây là nơi chứa các tệp mã của ứng dụng của bạn. Tạo một tệp có tên app.js trong thư mục này bằng trình soạn thảo văn bản. cPanel mong muốn điểm vào của ứng dụng được gọi là app.js, vì vậy tốt nhất nên tuân thủ quy ước đặt tên tiêu chuẩn trừ khi bạn có lý do chính đáng để thay đổi nó.

Dán mã sau và lưu tệp mới.

const http = require('http')

const hostname = '127.0.0.1';

const port = 3000;

const server = http.createServer((req, res) => {

  res.statusCode = 200;

  res.setHeader('Content-Type', 'text/plain');

  res.end('Hello World! I am your new NodeJS app! \n');

});

server.listen(port, hostname, () => {

  console.log(`Server running at http://${hostname}:${port}/`);

});

Mã thiết lập một máy chủ HTTP trên cổng 3000. Nó phản hồi các yêu cầu web với thông báo: “Hello World! I am your new NodeJS app!”  

Chúng ta có thể chuyển thẳng đến bước đăng ký, nhưng trước tiên hãy đảm bảo rằng ứng dụng hoạt động. Chạy lệnh dưới đây, lệnh này thực thi ứng dụng nhỏ với cài đặt Node.js của EasyApache.

/opt/cpanel/ea-nodejs10/bin/node app.js

Nếu tất cả đều hoạt động tốt, bạn sẽ thấy thông điệp sau:

Server running at http://127.0.0.1:3000

Cuối cùng, mở một window terminal mới và đăng nhập vào máy chủ với tư cách là người dùng cPanel. Ứng dụng khách curl HTTP sẽ được dùng để để gửi yêu cầu cho ứng dụng.

curl http://127.0.0.1:3000

Nếu có phản hồi  “’Hello World! I am a NodeJS app on cPanel,” bạn có thể chuyển sang bước tiếp theo: đăng ký ứng dụng Node.js với cPanel.

Đăng ký ứng dụng Node.JS trong cPanel Application Manager

Việc đăng ký sẽ cho người quản lý ứng dụng  Passenger và cPanel biết nơi tìm ứng dụng của bạn và miền nào bạn muốn sử dụng.

Trong cPanel, hãy mở Application Manager, phần mà bạn sẽ tìm thấy trong mục Software trên trang chính.

Click nút Register Application

Trong bảng Application Configuration sẽ cần cung cấp 4 trường thông tin như hình dưới:

Application Name: Tên hiển thị cho ứng dụng. Bạn có thể chọn bất kỳ tên nào, nhưng tên đó phải bắt đầu bằng số hoặc chữ cái và không được chứa dấu chấm.

Deployment Domain: Tên miền của ứng dụng. Miền phải được liên kết với tài khoản cPanel.

Base Application URL: Trang chủ của ứng dụng sẽ có sẵn tại  deployment domain + the base URL. Ví dụ: Nếu Deployment Domain là “example.com” và bạn nhập  “nodeapp” vào trường này, ứng dụng sẽ được phân phát từ “example.com/nodeapp”. Phần mở rộng URL không nhất thiết phải giống với thư mục lưu trữ các tệp của ứng dụng. 

Application Path: Vị trí của các tệp của ứng dụng liên quan đến nhà của người dùng. Trong ví dụ, chúng tôi đã tạo một thư mục trong trang chủ có tên là “nodejsapp”, vì vậy chúng tôi sẽ nhập “nodejsapp” vào đây.

Deployment Environment triển khai cho biết ứng dụng đang được phát triển hay đã sẵn sàng để triển khai trong môi trường sản xuất.

Bên dưới bảng  Application Configuration là một giao diện để định cấu hình các biến môi trường. Chúng ta sẽ xem xét sâu hơn trong phần tiếp theo.

Hiện tại, chúng tôi sẽ nhấp vào nút Deploy ở cuối trang và cPanel sẽ định cấu hình miền và môi trường của ứng dụng. Sau khi hoàn tất, bạn có thể mở ứng dụng mới của mình trong trình duyệt web tại URL bạn vừa định cấu hình:  “example.com/nodeapp” trong các ví dụ của chúng tôi.

Không giống như một ứng dụng thực, một máy nhắn tin của chúng tôi không có phụ thuộc bên ngoài. Nếu đúng như vậy,  Application Manager cPanel sẽ hiển thị nút Ensure Dependencies để cài đặt bằng một cú nhấp chuột. Nút này chỉ khả dụng cho các ứng dụng có tệp package.json liệt kê các phần phụ thuộc.

Nếu bạn đang làm theo các ví dụ của chúng tôi và muốn xem Ensure Dependencies trong hoạt động, hãy thêm một tệp có tên là package,json vào thư mục của ứng dụng với các nội dung sau:

<!-- wp:paragraph -->
<p>{</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"name": "nodejsapp",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"version": "1.0.0",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"description": "A Node App",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"main": "app.js",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"author": "",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"license": "ISC",</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;"dependencies": {</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;&nbsp;&nbsp;"express": "^4.17.1"</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;&nbsp;}</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>}</p>
<!-- /wp:paragraph -->

Như bạn có thể thấy, chúng tôi đã liệt kê khung web Express là một phần phụ thuộc. Nút Ensure Dependencies bây giờ sẽ có sẵn trong Application Manager. Khi bạn nhấp vào nó, cPanel sẽ cài đặt Express và bất kỳ ứng dụng và thư viện nào mà nó phụ thuộc vào.

Thêm các biến môi trường vào môi trường ứng dụng Node.JS

Biến môi trường là các cặp tên-giá trị lưu trữ một lượng lớn thông tin. Chúng hoạt động giống như các biến trong lập trình, ngoại trừ việc chúng không nằm trong chương trình mà là một phần của môi trường bên ngoài. Máy chủ sử dụng các biến môi trường để chứa dữ liệu cấu hình hữu ích.

Ví dụ, CentOS sử dụng biến môi trường PATH để lưu trữ danh sách các thư mục chứa các chương trình dòng lệnh. Khi bạn nhập một lệnh như “ls”, shell sẽ xem xét các thư mục đó để tìm tệp thực thi có tên đó. Nếu không có biến PATH, bạn phải nhập đường dẫn đầy đủ của mọi lệnh: “/ usr / bin / ls” thay vì chỉ “ls”.

Quản trị viên máy chủ có thể thay đổi biến môi trường PATH, kiểm soát các thư mục mà shell nhìn vào mà không cần sửa đổi mã nội bộ của nó. Với Application Manager của cPanel, bạn có thể thêm các biến môi trường vào môi trường của ứng dụng Node.js để định cấu hình hành vi của ứng dụng theo cách tương tự. 

Trong tệp app.js đơn giản, dòng JavaScript này cho ứng dụng biết cổng mà ứng dụng sẽ lắng nghe các kết nối.

const port = 3000;

Trong thực tế, một nhà phát triển khó có thể biết đúng cổng khi họ viết mã. Để đảm bảo cho người dùng sự linh hoạt, họ có thể yêu cầu ứng dụng tìm kiếm một biến có tên là PORT trong môi trường của ứng dụng và sử dụng giá trị của nó khi thiết lập ứng dụng.

Trong Node.js, mã JavaScript trông giống như sau:

const PORT = process.env.PORT || 3000;

Điều này đặt biến PORT nội bộ của ứng dụng thành giá trị của biến môi trường được gọi là PORT hoặc thành giá trị mặc định là 3000 nếu biến môi trường không được đặt.

Giờ đây, người dùng có thể cho ứng dụng biết cổng nào cần liên kết bằng cách đặt biến PORT trong môi trường của ứng dụng. Để thực hiện việc này trong Application Manager của cPanel, hãy tìm giao diện  Environment Variables bên dưới Application Configuration và nhấp vào Add Variable.

Nhập tên và giá trị biến, sau đó nhấp vào Save.

 Chỉnh sửa ứng dụng Node.JS 

Bạn có thể chỉnh sửa cấu hình đăng ký của ứng dụng Node trong Application Manager.

Nhấp vào liên kết Edit trong cột Actions. Trong giao diện này, bạn có thể chỉnh sửa tất cả các giá trị bạn đã đặt khi đăng ký ứng dụng lần đầu, bao gồm cả các biến môi trường.

Gỡ cài đặt ứng dụng Node.JS

Để gỡ cài đặt hoặc “hủy đăng ký” ứng dụng Node.js khỏi cPanel, hãy nhấp vào liên kết unregister  ở bên phải bảng Application Manager.

Khi bạn hủy đăng ký một ứng dụng, cPanel sẽ xóa ứng dụng đó khỏi danh sách, xóa tệp cấu hình của ứng dụng và tách ứng dụng đó khỏi miền. cPanel không xóa các tệp của ứng dụng, nhưng bạn có thể tự xóa chúng trong File Manager hoặc trên dòng lệnh.

Nếu bạn có thắc mắc hay có vấn đề cần hỗ trợ, bạn có thể liên hệ trực tiếp với Vietnix thông qua các kênh sau:
  • Hotline: 1800 1093 - 07 088 44444
  • Email: support@vietnix.vn
  • Hoặc chat trực tiếp với Vietnix thông qua biểu tượng Livechat ở góc phải màn hình. Đội ngũ chuyên viên của chúng tôi luôn sẵn sàng tư vấn và hỗ trợ bạn 24/7.
Vietnix hiện đang có chương trình khuyến mãi lớn nhất trong năm, giảm giá TRỌN ĐỜI: Đăng ký dùng thử ngay và Vietnix sẽ hoàn tiền 100% nếu quý khách không hài lòng với chất lượng sản phẩm, dịch vụ!
Vietnix thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, Vietnix đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan
Không có bài viết liên quan
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments