post-image

Hướng dẫn Deploy SpringBoot lên Heroku

Deployment & CI/CD

1. Tổng quan

Heroku là một Nền tảng đám mây dựa trên ứng dụng container dưới dạng Dịch vụ (PaaS). Heroku được sử dụng để triển khai, quản lý và mở rộng các ứng dụng hiện đại. Bài viết này mình sẽ hướng dẫn deploy Spring Boot lên Heroku.

2. Cài đặt và cấu hình Heroku

  • Đầu tiên chúng ta sẽ khởi tạo dự án Spring Boot và chọn những thư viện như sau:
  • Sau đó các bạn vào trong email của mình để xác thực tài khoản và nhập mật khẩu cho tài khoản của mình (mật khẩu phải ít nhất 8 ký tự và phải chứa cả số, chữ và ký tự đặc biệt)
  • Trong giao diện sau khi đăng nhập, click chọn create new app để tạo mới một ứng dụng trên heroku
  • Sau khi tạo xong ứng dụng các bạn vào phần Resource, trong phần add-on các bạn tìm kiếm Heroku Postgres và thêm nó vào trong ứng dụng
  • Sau khi bạn chọn thêm add-ons heroku postgres sẽ hiện lên cửa sổ pop up và ta nhấn chọn vào provision
  • Vậy là ta đã thêm được add on heroku postgres vào trong ứng dụng heroku của mình
  • Để xem chi tiết thông tin của các bạn click vào add on heroku postgres:
  • Ở giao diện mới chúng ta có thể xem được số lượt truy cập đến cơ sở dữ liệu, số bản ghi, kích thước của dữ liệu, số lượng bảng trong thẻ Overview
  • Ngoài ra chúng ta có thể vào thẻ Setting và chọn view Credentials để xem host, tên database, tên user và password để truy cập vào cơ sở dữ liệu này. Ngoài ra ở thẻ này bạn còn có thể reset database và xóa database này

3. Deploy ứng dụng SpringBoot lên Heroku

  • Sau khi thực hiện đầy đủ các bước trên, các bạn vào lại dự án Spring Boot vừa tạo ở máy mình và sử dụng environment variable mình đã giới thiệu ở bài sử dụng biến môi trường trong Spring Boot tại đây.
  • Trước hết chúng ta sẽ tạo file có tên local.env để sử dụng ở máy mình, file .env để sử dụng trên Heroku và cấu hình file application.properties như sau:
  • Trong file local.env các bạn cấu hình như sau
  • Còn ở trong file .env, các bạn lấy url, username, password ở trong thẻ setting của add-on heroku postgres như mình đã nói ở bài trước:
  • Sau đó các bạn tạo một dự án của mình lên github và ở trong giao diện trang web của heroku chúng ta chọn thẻ deploy
  • Trong giao diện này ở phần Deployment method chúng ta chọn connect to Github
  • Trong giao diện này mọi người nhập tên repo của dự án Spring Boot vừa rồi trên github và ấn nút search sau đó chọn connect
  • Sau đó các bạn chọn enable automatic deploys để heroku tự động deploy ứng dụng của bạn mỗi khi bạn push đoạn code mới lên github
  • Và bây giờ các bạn hãy push project của mình lên github và Heroku sẽ tự động deploy
  • Ngoài ra các bạn có thể tích chọn with for CI to pass before deploy nếu project của bạn có các bộ test. Các bạn có thể tham khảo các bài viết về tesing tại đây.
  • Đây là kết quả sau khi deploy thành công

Leave a Reply

Your email address will not be published.