HƯỚNG DẪN DEPLOY ỨNG DỤNG LÊN HEROKU | CO-WELL Asia
Heroku cung cấp dịch vụ máy chủ đám mây giúp dễ dàng trong việc deploy ứng dụng. Trong bài viết này, CO-WELL Asia hướng dẫn bạn một cách đơn giản để deploy một ứng dụng lên Heroku nhé!
A. Tổng quan về Heroku
1. Heroku là gì?
Heroku là nền tảng đám mây cho phép các lập trình viên xây dựng, triển khai, quản lý và mở rộng ứng dụng (PaaS – Platform as a service), hỗ trợ nhiều nền tảng như NodeJS, Ruby, Java, PHP, Python, Go, Scala …
Ngoài hỗ trợ nền tảng để chạy các ngôn ngữ lập trình, Heroku cũng hỗ trợ cả Postgresql database.
2. Heroku hoạt động như thế nào?
Heroku chạy các ứng dụng trong dynos – nó là một loại máy ảo có thể tự scale phần cứng tùy vào độ lớn của ứng dụng chạy trên nó
3. Heroku có những tính năng gì?
- Heroku Runtime
Heroku Runtime cung cấp các smart container mà ứng dụng của bạn sẽ chạy trong đó. Nó xử lý mọi thứ từ từ cấu hình, điều phối, cân bằng tải, backup, log, bảo mật…
- Heroku Teams
Là một công cụ quản lý nhóm, kết hợp nhiều lập trình viên lại với nhau để xây dựng phần mềm tốt hơn.
- Scale
Heroku có thể mở rộng quy mô ứng dụng ngay lập tức, cả theo chiều dọc và chiều ngang.
- Add-ons
Mở rộng, nâng cao và quản lý các ứng dụng của bạn với các dịch vụ được tích hợp sẵn như New Relic, MongoDB, SendGrid, Searchify, Fastly, Papertrail, ClearDB MySQL, Treasure Data…
- Code/data rollback
Heroku cho phép bạn khôi phục mã nguồn hoặc cơ sở dữ liệu của mình về trạng thái trước đó ngay lập tức.
- App metrics
Với tính năng giám sát tích hợp lưu lượng, thời gian phản hồi, bộ nhớ, tải CPU và lỗi…bạn sẽ luôn biết được ứng dụng của bạn đang hoạt động ra sao.
- Continuous delivery
Heroku Flow sử dụng Heroku Pipeline, Review Apps và tích hợp Github để xây dựng quy trình CI/CD gồm build, test, deploy…
- GitHub Integration
Tích hợp Github giúp bạn có thể pull request, push, commit,…
B. Cách deploy ứng dụng lên Heroku
Trước khi làm các bước hướng dẫn dưới đây, việc đầu tiên là lên trang chủ của Heroku và đăng ký cho mình một tài khoản nhé.
Bước 1: Cài đặt Heroku CLI
- Truy cập đường dẫn: The Heroku CLI | Heroku Dev Center và làm theo hướng dẫn.
Bước 2: Tạo ứng dụng trên Heroku
- Ở trang chủ Heroku, chọn “New > Create new app”
- Điền thông tin app của bạn vào form tạo app sau đó nhấn “Create app”
- Sau khi tạo xong, bạn sẽ được chuyển hướng vào trang quản lý app vừa tạo. Trang này sẽ có giao diện dạng như hình sau:
Bước 3: Bắt đầu đẩy lên Heroku
# Login heroku từ terminal heroku login # Di chuyển vào thư mục vừa clone cd test-nodejs # Khởi tạo git của Heroku git init heroku git:remote -a ten-app-cua-ban # Đẩy toàn bộ code lên git add . git commit -m "init" git push heroku masterHeroku sẽ tự nhận biết ứng dụng của bạn chạy trên nền tảng nào và biết cách deploy cho phù hợp.
Khi deploy thành công, bạn sẽ nhận được output dạng như sau:
...
remote: -----> Caching build
remote: - node_modules
remote:
remote: -----> Pruning devDependencies
remote: audited 194 packages in 1.075s
remote: found 4 vulnerabilities (3 low, 1 critical)
remote: run npm audit fix to fix them, or npm audit for details
remote:
remote: -----> Build succeeded!
remote: -----> Discovering process types
remote: Procfile declares types -> (none)
remote: Default types for buildpack -> web
remote: remote: -----> Compressing…
remote: Done: 23.7M
remote: -----> Launching…
remote: Released v3
remote: https://ten-app-cua-ban.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy… done.
To https://git.heroku.com/ten-app-cua-ban.git
[new branch] master -> master
Sau đó thử truy cập vào https:// + ten-app-cua-ban.herokuapp + .com để xem kết quả nhé.
MỘT SỐ LƯU Ý VỚI TÀI KHOẢN HEROKU MIỄN PHÍ
- Cứ 30 phút nếu app không có request tới server thì Heroku sẽ set machine state thành cold sleep để tiết kiệm tài nguyên hệ thống. Nếu có request mới sau 30’ thì Heroku sẽ khởi động lại từ cold sleep nên sẽ tốn thời gian.
- Mỗi user Heroku sẽ tạo tối đa được 5 app, nếu thêm thông tin thẻ tín dụng sẽ tạo được tối đa 100 app.
- Mỗi tài khoản sẽ có 550 giờ sống mỗi tháng, chia đều cho tất cả các app. Nếu thêm thông tin thẻ tín dụng, bạn sẽ có 1000 giờ sống mỗi tháng. Nếu sử dụng hết tầm 70% số giờ, Heroku sẽ có mail thông báo cho bạn (tham khảo chi tiết)
- Nếu app có các tính năng như thêm, CUD file trực tiếp trên Heroku, thì mặc định các chứng năng này sẽ không hoạt động, bởi tất cả các file khi deploy lên Heroku sẽ ở trạng thái read-only.
Kết lại
Trên đây là cách mình làm và đã thành công, hy vọng có thể giúp các bạn trong quá trình đẩy ứng dụng lên Heroku. Chúc các bạn thành công và đừng quên theo dõi chuyên mục CODEWELL trên website CO-WELL Asia để đón đọc những bài viết về công nghệ bổ ích nhé!Hồ Nguyễn Bảo Trân – CO-WELL AsiaTags: Deploy ứng dụng lên Heroku, Heroku
Từ khóa » Heroku Logs Là Gì
-
Sử Dụng Logs Cho ứng Dụng Trong Heroku - Hoàng Web
-
Heroku - Làm Thế Nào để Xem Tất Cả Các Bản Ghi?
-
Heroku Là Gì? Cách đưa ứng Dụng Lên Heroku | TopDev
-
Heroku Là Gì ? Deploy Sử Dụng Heroku - Hoclaptrinh
-
Logging | Heroku Dev Center
-
Heroku Là Gì? Tìm Hiểu Tổng Quan Về Heroku - ITNavi
-
Heroku Là Gì? Định Nghĩa Và Các đặc điểm Nổi Bật - Bizfly Cloud
-
Heroku Là Gì ? Tổng Quan Về Nền Tảng đám Mây Heroku
-
Heroku Là Gì? Cách đăng Ký Heroku Và đưa ứng Dụng Lên - Tino Group
-
Heroku Là Gì? Phân Tích Các Tính Năng Và ưu Nhược điểm - Teky
-
See Heroku Logs Terminal Code Example
-
Phần 3: Deploy API Lên Heroku - Viblo
-
Deploy Project Golang Lên Heroku (Golang, Postgres, GORM, Gin)
-
Receiptify