October 18, 2021

Cloud Build – Container Registry – Cloud Run- Bộ Ba Sản Phẩm Build & Deploy Ứng Dụng Trên GCP

Đối với công ty công nghệ thì việc phát triển ứng dụng trên một hoặc nhiều ngôn ngữ lập trình cùng lúc là bình thường. Trước khi có Cloud, việc lưu trữ mã nguồn rất phong phú : Local, Subversion, GitHub, Bitbucket,…. và build mã nguồn này cho nhiều mục đích khác nhau: test, alpha, beta, stagging, production ,…. Hiện nay, trên GCP cũng hỗ trợ cho việc lưu trữ mã nguồn hiệu quả với Cloud Source Repositories. Ngoài ra, GCP còn có IDE Cloud rất hiệu quả dành cho các bạn lập trình viên – Cloud Shell.

Nay trong bài viết này, mình giới thiệu cho các bạn bộ ba sản phẩm của GCP để build – store – deploy ứng dụng của mình nhanh chóng, hiệu quả khi làm việc với các dự án công nghệ liên quan đến GCP.

Cloud Build

Đây là một sản phẩm của GCP nhằm build mã nguồn của tất cả ngôn ngữ lập trình.

  • Tăng tôc độ build với VMs trên Cloud và không tốn tài nguyên của máy cá nhân.
  • Mã nguồn được đặt ở Local, Github, Cloud Source Repositories hoặc Bitbucket  đều sử dụng được Cloud Build
  • Cloud Build hỗ trợ nhiều sự lựa chọn để build mã nguồn: Docker container,Maven, Gradle, webpack, Go hoặc Bazel.
  • Kết quả sau khi thực hiện build sẽ được đẩy lên Docker Hub hoặc Container Registry.
  • Có thể tùy chỉnh luồng xử lý build theo ý muốn của bạn.
  • Miễn phí cho thời gian build là 120 phút/ 1 ngày.

Chỉ cần vài lệnh đơn giản là có thể sử dụng được Cloud Build dễ dàng.

gcloud builds submit --tag <đường dẫn lưu file sau khi build xong>
Hình 1: Màn hình theo dõi quá trình build của Cloud Build
Hình 2: Màn hình tạo trigger lựa chọn nơi đặt mã nguồn và lưu image sau khi build xong.

Container Registry

Sau khi Cloud Build tạo container image thì cloud build sẽ lưu image vào trong container register (mặc định) hoặc đẩy lên Docker Hub. Container registry là nơi để chứa và quản lý image. Nghĩ đơn giản, Container Registry là kho chứa các container image – dùng để deploy lên container hoặc kubernet engine,…

Hình 3: Màn hình của container registry.

Cloud Run

Sau khi có được container image. Việc còn lại là deploy image này. Theo như tài liệu của Google đưa ra thì mình sẽ có 3 cách để deploy.

  • Deploy lên container.
  • Deploy lên cluster của Kubernetes Engine. (sử dụng gcloud)
  • Deploy lên container và Kubernetes Engine. (sử dụng gcloud)

Trên giao diện của Cloud Run, mình có thể dễ dàng deploy image của mình với một vài thao tác đơn giản (Hình 4). Nếu các bạn muốn đơn giản hơn nữa thì chỉ cần một lệnh là đơn giản là có thể deploy nhanh chóng 1 image của mình.

Hình 4: Với Cloud Run, mình chỉ cần click chọn và deploy.

Hoặc sử dụng gcloud.

gcloud beta run deploy --image <đường dẫn chứa file container image>

Thật dễ dàng và nhanh chóng để build và deploy ứng dụng của mình trên môi trường Google Cloud Platform.

Với bài viết này, hy vọng chúng ta có thêm kiến thức về ba sản phẩm nữa của Google Cloud Platform. Khi thực hành có chỗ nào chưa hiểu, cần support, các bạn hãy liên hệ với các chuyên gia – Cloud Ace Việt Nam – để được hỗ trợ tốt hơn.

Bao Vuong

Vương hiện là Cloud Engineer của Cloud Ace Vietnam.+6 năm kinh nghiệm phát triển backend +2 năm kinh nghiệm Data Analytics +1 năm kinh nghiệm Machine Learning

View all posts by Bao Vuong →