Chúng tôi thường xây dựng nhiều dự án và ứng dụng với tư cách là người mới, nhưng đây mới chỉ là một nửa của phương trình.
Chúng tôi cũng muốn phần còn lại của thế giới có thể sử dụng và thử nghiệm các ứng dụng này, cho dù đó là để thuyết trình, dành cho nhà tuyển dụng tiềm năng hay chỉ để đưa nó ra trước mặt mọi người.
Chúng tôi sẽ cần đặt các ứng dụng này trên máy chủ công cộng để thực hiện việc này.
Heroku là một nền tảng dựa trên đám mây được quản lý hoàn toàn dưới dạng dịch vụ (PaaS) để phát triển, triển khai và bảo trì ứng dụng.
Nền tảng này có thể thích ứng và được xây dựng dựa trên DX để phù hợp với phương pháp phát triển đã chọn của bạn và nhóm của bạn trong khi vẫn giữ cho bạn tập trung và làm việc hiệu quả.
Heroku được các nhà phát triển, nhóm và doanh nghiệp thuộc mọi loại sử dụng để khởi chạy, quản lý và phát triển các dự án. Cho dù bạn đang tạo một nguyên mẫu nhỏ hay một sản phẩm quan trọng, nền tảng được quản lý hoàn toàn của Heroku cung cấp cách đơn giản nhất để phân phối ứng dụng nhanh chóng.
Một trong những tính năng chính của Heroku là khả năng triển khai, quản lý và mở rộng quy mô các dự án được viết theo cách bạn ưa thích ngôn ngữ lập trình [Node, Ruby, Python, Java, PHP, Go, và những thứ khác].
Trong bài đăng này, tôi sẽ hướng dẫn bạn cách triển khai một dự án Node.js hiện có trên Heroku.
Điều kiện tiên quyết
Các phương pháp hay nhất của bài viết này giả định rằng bạn có:
- Cài đặt Node.js với npm.
- Một Heroku Tài khoản là hoàn toàn miễn phí.
- Một ứng dụng Node.js đã tồn tại
- Heroku's giao diện dòng lệnh (CLI).
1. Khai báo các phụ thuộc của ứng dụng của bạn
Tệp package.json chỉ định phần phụ thuộc nào sẽ được cài đặt với dự án của bạn.
Chạy lệnh npm init trong thư mục gốc của dự án của bạn để tạo tệp package.json cho nó. Nó sẽ chỉ cho bạn cách tạo tệp package.json.
Bằng cách để trống, bạn có thể bỏ qua bất kỳ câu hỏi nào. Trên Windows, khởi chạy chương trình Git Bash để khởi chạy trình bao lệnh.
Tệp package.json kết quả như sau:
Sử dụng `npm install pkg>` để cài đặt các phần phụ thuộc.
Thao tác này sẽ cài đặt gói cũng như làm cho nó phụ thuộc vào tệp dữ liệu `package.json`. Ví dụ: Để cài đặt express, hãy nhập` npm install express`.
Đảm bảo rằng không có gói cấp hệ thống nào đang được sử dụng. Gói của bạn thiếu phần phụ thuộc. Khi cố gắng triển khai tới Heroku, tệp JSON sẽ gây ra sự cố.
Để khắc phục sự cố này, hãy thực thi mô-đun nút rm -rf; npm install - production` trên dòng lệnh cục bộ của bạn, rồi thử khởi chạy ứng dụng cục bộ của bạn bằng cách nhập web cục bộ Heroku.
Nếu một trong các gói phụ thuộc của bạn bị thiếu tệp .json, bạn sẽ thấy thông báo lỗi cho biết không thể định vị mô-đun nào.
2. Chỉ định phiên bản của nút
Tệp package.json của bạn cũng phải bao gồm phiên bản Node.js sẽ được sử dụng để thực thi ứng dụng của bạn trên Heroku.
Bạn nên luôn sử dụng phiên bản Node.js tương ứng với thời gian chạy mà bạn đang làm việc. Nhập nút —version để tìm phiên bản của bạn.
Đây là tệp package.json của bạn sẽ trông như thế nào:
Bây giờ các phần phụ thuộc đã được cài đặt và phiên bản nút được sử dụng đã được chỉ định, tệp package.json sẽ trông giống như sau:
3. Tạo một Procfile
Tạo một Procfile trong thư mục gốc của bạn (đảm bảo không có phần mở rộng và chữ “P” được viết hoa).
Trong tệp Heroku, bạn sẽ định cấu hình cài đặt Dynos, chẳng hạn như cách Heroku sẽ khởi động máy chủ web js nút sau khi tải lên ứng dụng.
Procfile trong ứng dụng mẫu mà bạn đã triển khai trông giống như sau:
4. Tạo ứng dụng của bạn và thử nghiệm nó cục bộ
Để cài đặt các phần phụ thuộc mà bạn đã chỉ ra trong tệp package.json, hãy chạy lệnh npm install trong thư mục ứng dụng cục bộ của bạn.
Sử dụng lệnh cục bộ Heroku, được bao gồm trong Heroku CLI, để khởi động ứng dụng cục bộ của bạn.
Bây giờ bạn có thể truy cập ứng dụng của mình tại https://localhost:5000/.
5. Tạo tác phẩm
Tạo một tệp .gitignore trông giống như thế này để giữ cho các tạo tác xây dựng nằm ngoài tầm kiểm soát của bản sửa đổi:
6. Triển khai ứng dụng node.js của bạn cho Heroku
Các hướng dẫn sau sẽ triển khai ứng dụng của bạn cho Heroku.
7. Nhật ký Heroku
Bạn cũng có thể sử dụng một trong các lệnh ghi nhật ký để nhận thông tin về chương trình đang chạy của mình. Điều này khá hữu ích để khắc phục sự cố.
Kết luận
Xin chúc mừng, ứng dụng Node.js của bạn hiện đã có trên Heroku. Đây là một nền tảng đám mây cho phép các doanh nghiệp tạo, phân phối, quản lý và phát triển ứng dụng.
Heroku đã ở đó đối với chúng tôi trong kỷ nguyên mới của không máy chủ và container hóa, nơi chúng tôi chỉ cần một cú nhấp chuột là có thể triển khai toàn bộ dự án của mình và nó vẫn đang giúp hàng triệu người dùng triển khai dự án của họ một cách đơn giản.
Bình luận