Mục lục [Ẩn]
PM2 là một trình quản lý mạnh mẽ, sử dụng rộng rãi, và tính năng phong phú, quản lý quá trình sản xuất sẵn sàng cho Node.js. Khởi động lại PM2 với các quy trình mà nó quản lý mỗi khi máy chủ của bạn khởi động/khởi động lại là rất quan trọng. Một trong những tính năng chính của PM2 là hỗ trợ tập lệnh khởi động (được tạo động dựa trên hệ thống init mặc định trên máy chủ của bạn), khởi động lại PM2 và các quy trình của bạn ở mỗi lần khởi động lại máy chủ.
Tập lệnh bắt đầu thiết lập PM2 như một dịch vụ trong init hệ thống. Khi máy chủ khởi động lại, nó sẽ tự động khởi động lại PM2, sau đó sẽ khởi động lại tất cả các ứng dụng/quy trình Node.js mà nó đang quản lý.
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách triển khai PM2 như một dịch vụ để quản lý các ứng dụng Node.js của bạn một cách đáng tin cậy. Đối với hướng dẫn này, hệ thống thử nghiệm sử dụng dịch vụ systemd và trình quản lý hệ thống. Tất cả các lệnh trong bài viết này sẽ được thực thi dưới dạng root (sử dụng sudo khi cần thiết cho người dùng có đặc quyền gọi nó).
Tạo tập lệnh khởi động PM2 cho hệ thống Init
PM2 được thiết kế để hoạt động với hệ thống init mặc định trên hệ thống Linux (hệ thống này có thể tự động phát hiện) để tạo tập lệnh khởi động và định cấu hình PM2 như một dịch vụ có thể được khởi động lại khi khởi động hệ thống.
Để tạo tập lệnh khởi động, chỉ cần chạy lệnh sau với quyền root:
# pm2 startup
Lệnh khởi động PM2 cho biết để phát hiện hệ thống init có sẵn, tạo cấu hình và kích hoạt hệ thống khởi động.
Bạn cũng có thể chỉ định rõ ràng hệ thống init như sau:
# pm2 startup systems
Để xác nhận rằng dịch vụ khởi động PM2 đã được thiết lập và đang chạy trong systemd, hãy chạy lệnh sau (thay thế pm2-root.service bằng tên thực của bạn dịch vụ, kiểm tra kết quả của lệnh trước):
# systemctl status pm2-root.service
Khởi động ứng dụng/quy trình Node.js
Tiếp theo, bạn muốn khởi động các ứng dụng Node.js của mình bằng PM2 như sau. Nếu bạn đã thiết lập và chạy chúng, bắt đầu qua PM2, bạn có thể bỏ qua bước này:
# cd /var/www/backend/api-v1-staging/
# pm2 start src/bin/www.js -n api-service-staging
Tiếp theo, bạn cần đăng ký/lưu danh sách các quy trình hiện tại mà bạn muốn quản lý bằng PM2 để chúng xuất hiện lại khi khởi động hệ thống (mỗi khi dự kiến hoặc khởi động lại máy chủ không mong muốn), bằng cách chạy như sau command:
# pm2 save
Xác minh ứng dụng PM2 tự động khởi động Node.js khi khởi động
Cuối cùng, bạn cần kiểm tra xem thiết lập có hoạt động tốt hay không. Khởi động lại hệ thống của bạn và kiểm tra xem tất cả các quy trình Node.js của bạn có đang chạy dưới PM2 hay không.
# pm2 ls
or
# pm2 status
Lưu ý rằng bạn có thể khôi phục lại các quy trình theo cách thủ công bằng cách chạy lệnh sau:
# pm2 resurrect
Tắt hệ thống khởi động
Bạn có thể tắt hệ thống khởi động bằng cách chạy lệnh hủy khởi động phụ như hình minh họa.
# pm2 unstartup
OR
# pm2 startup systemd
Để cập nhật tập lệnh khởi động, trước tiên, hãy tắt nó, sau đó khởi động lại như được hiển thị.
# pm2 unstartup
# pm2 startup
+ Fanpage: https://www.facebook.com/nhanhoacom
+ Chỉ đường: https://g.page/nhanhoacom
+ Chương trình khuyến mãi mới nhất: https://nhanhoa.com/khuyen-mai.html
————————————————————
CÔNG TY TNHH PHẦN MỀM NHÂN HÒA
Hotline: 1900 6680
Trụ sở chính: Tầng 4 - Tòa nhà 97-99 Láng Hạ, Đống Đa, Hà Nội
Tel: (024) 7308 6680 – Email: sales@nhanhoa.com
Chi nhánh TP. Hồ Chí Minh: 270 Cao Thắng (nối dài), Phường 12, Quận 10, Tp.HCM
Tel: (028) 7308 6680 – Email: hcmsales@nhanhoa.com
Chi nhánh Vinh - Nghệ An: Tầng 2 Tòa nhà Sài Gòn Sky, ngõ 26 Nguyễn Thái Học, phường Đội Cung, TP. Vinh, Nghệ An
Tel: 0915221384 – Email: contact@nhanhoa.com