강의

멘토링

커뮤니티

BEST
Programming

/

Devops & Infra

Tự động hóa triển khai ứng dụng và CI/CD

Thông qua bài giảng, bạn có thể trải nghiệm tự động hóa triển khai ứng dụng. Bằng cách triển khai dự án, bạn có thể học cách sử dụng Jenkins và có được kiến ​​thức cơ bản về CI/CD!

(4.5) 20 đánh giá

542 học viên

Độ khó Cơ bản

Thời gian Không giới hạn

  • foo
Jenkins
Jenkins
CI/CD
CI/CD
nginx
nginx
github-webhook
github-webhook
Jenkins
Jenkins
CI/CD
CI/CD
nginx
nginx
github-webhook
github-webhook

Đánh giá từ những học viên đầu tiên

Đánh giá từ những học viên đầu tiên

4.5

5.0

charo

75% đã tham gia

Vì bài giảng kéo dài khoảng 2-3 giờ nên phần giải thích có phần ngắn gọn chi tiết nhưng tôi nghĩ đây là bài giảng cho phép bạn trải nghiệm sự phân bổ không bị gián đoạn. Tôi nghĩ sẽ dễ nghe hơn nếu bạn có một số kiến ​​thức trước về Docker. Tôi rất thích nghe nó vì bản thân bài giảng được dạy bằng cách sử dụng một kịch bản cố ý có lỗi và các lỗi sau đó đã được giải quyết.

5.0

채종훈

55% đã tham gia

Các bài giảng sử dụng quy trình Jenkins hiện có bắt đầu với những điều cơ bản và giải thích trước nhiều chức năng. Ưu điểm và nhược điểm của bài giảng này là bỏ qua những phần sâu sắc như vậy, nhưng xét vì đây là bài giảng dành cho người mới bắt đầu, tôi nghĩ nên học cách sử dụng nó ở đây trước rồi mới hiểu sâu hơn. Ưu điểm là bạn có thể học cách sử dụng nó bằng các phím tắt trong một khoảng thời gian ngắn và thật tốt khi có thể thực hành đúng sức mạnh của quy trình xử lý từng bước chi tiết. Tôi đặc biệt giới thiệu nó cho những ai cần sử dụng Jenkins Pipeline cho công việc bắt đầu từ ngày mai hoặc cho những người đang tìm việc làm và muốn hoàn thành danh mục đầu tư của mình bằng phương pháp phân phối nâng cao.

5.0

김영웅

100% đã tham gia

Tôi rất cảm ơn vì bạn đã chỉ ra rằng tôi đã giải thích chi tiết mọi quy trình, nhưng tôi hơi thất vọng vì đôi khi tôi dựa vào ChatGPT.

Bạn sẽ nhận được điều này sau khi học.

  • Jenkins

  • Tự động hóa triển khai

  • Kiểm tra CI/CD

"Nhấp" → Phân phối hoàn tất

Sẽ thật tuyệt vời nếu việc triển khai ứng dụng có thể đơn giản như thế này phải không? Đã đến lúc vượt qua việc triển khai thủ công và nắm bắt tầm quan trọng của tự động hóa triển khai và CI/CD (Tích hợp liên tục và Phân phối liên tục). Một trong những khác biệt lớn nhất giữa thời tôi còn phát triển độc lập và hiện tại là hiệu quả của quy trình triển khai. Mặc dù triển khai thủ công không phải là vấn đề lớn khi tôi còn phát triển độc lập, nhưng trong thực tế, việc triển khai nhanh chóng và đáng tin cậy là điều cần thiết. Trong môi trường mà bạn phải cộng tác với nhiều nhà phát triển và thường xuyên thay đổi mã, tự động hóa triển khai là điều cần thiết.

Ngay cả khi ứng dụng thực sự hoạt động tốt, nếu quy trình triển khai phức tạp và kém hiệu quả, nó có thể trở thành điểm lỗi cho toàn bộ hệ thống. Nếu phát sinh sự cố trong quá trình triển khai, dịch vụ sẽ bị gián đoạn hoặc lỗi, dẫn đến trải nghiệm người dùng kém.

Khóa học này bao gồm cách tự động hóa triển khai bằng Jenkins, cấu hình triển khai không thời gian chết và xây dựng quy trình CI/CD để giải quyết những thách thức này. Chúng ta sẽ tự động hóa quy trình triển khai bằng Jenkins, tạo môi trường triển khai không thời gian chết cho máy chủ API bằng nginx, và thậm chí đề cập đến các chiến lược kiểm tra CI và khôi phục CD.

Tất nhiên, việc triển khai tự động hóa triển khai và CI/CD một cách hoàn hảo ngay từ đầu là rất khó khăn. Tuy nhiên, khóa học này sẽ cung cấp cho bạn những khái niệm cơ bản về tự động hóa triển khai và CI/CD, cho phép bạn áp dụng chúng vào các dự án của riêng mình và trong nhóm. Sau khi hoàn thành khóa học, bạn sẽ có thể thiết kế và triển khai các phương pháp tự động hóa triển khai phù hợp với dự án của riêng mình.


Tự động triển khai và cấu hình môi trường CI/CD bằng cách viết các đường ống Jenkins.


Tìm hiểu về những điều này

Jenkins

Jenkins là một máy chủ tự động hóa mã nguồn mở được sử dụng để xây dựng và quản lý các pipeline CI/CD thông qua nhiều plugin khác nhau. Trong khóa học này, bạn sẽ học cách thiết lập máy chủ Jenkins, cấu hình môi trường triển khai và triển khai tự động hóa triển khai bằng webhooks.

Phân phối không ngừng

Triển khai không thời gian chết là phương pháp triển khai các phiên bản mới của ứng dụng mà không làm gián đoạn dịch vụ. Điều này cho phép cung cấp dịch vụ liên tục cho người dùng. Trong bài giảng này, bạn sẽ tìm hiểu cách tạo môi trường triển khai không thời gian chết bằng nginx và cách kiểm tra nó.

CI/CD

CI/CD là một phương pháp triển khai các thay đổi mã thường xuyên và đáng tin cậy thông qua các quy trình phát triển phần mềm tự động. Bài giảng này bao gồm các khái niệm về CI và CD, viết và cấu hình mã kiểm thử CI, cũng như xử lý các sự cố có thể phát sinh trong quá trình CD.

Những điều cần lưu ý trước khi tham gia khóa học

Môi trường thực hành

  • Hệ điều hành và Phiên bản (OS): Windows 10,

  • Công cụ được sử dụng: Intellij Community 2023.2, Google Chrome



Tài liệu học tập

Kiến thức và biện pháp phòng ngừa của người chơi

  • Chúng tôi sử dụng Vultr cho dịch vụ đám mây của mình, nhưng bạn cũng có thể sử dụng các dịch vụ đám mây khác như AWS hoặc GCP. Tuy nhiên, sẽ có một số khác biệt, chẳng hạn như cài đặt tường lửa, khi sử dụng các dịch vụ đám mây khác. Tuy nhiên, tôi tin rằng bạn sẽ hiểu rõ hơn nếu tự mình tìm hiểu và trải nghiệm những vấn đề này.

  • Hướng dẫn này dựa trên một ứng dụng được xây dựng bằng Spring Boot, nhưng bạn có thể áp dụng cho các ngôn ngữ và framework khác chỉ với một vài chỉnh sửa nhỏ trong tập lệnh. Nếu bạn có bất kỳ thắc mắc nào, vui lòng để lại bình luận. Tôi sẽ rất vui lòng hỗ trợ bạn hết sức có thể.


  • Nếu bạn có bất kỳ thắc mắc nào trong quá trình học, vui lòng để lại câu hỏi. Tôi sẽ cập nhật thông tin nếu cần thiết.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Những người có thể triển khai ứng dụng theo cách thủ công nhưng muốn tìm hiểu cách thực hiện việc đó một cách tự động

  • Những người đã biết khái niệm tự động hóa triển khai nhưng muốn nhanh chóng tạo môi trường tự động hóa triển khai thông qua Jenkins

  • Bất cứ ai muốn biết tại sao cần có quy trình CI/CD

Cần biết trước khi bắt đầu?

  • Kinh nghiệm triển khai thủ công

  • Kinh nghiệm sử dụng Git và GitHub

Xin chào
Đây là

6,034

Học viên

300

Đánh giá

117

Trả lời

4.9

Xếp hạng

9

Các khóa học

Xin chào.

Tôi là Foo, một người luôn trăn trở về việc làm thế nào để có thể truyền đạt những khái niệm mà các lập trình viên cấp dưới (junior) cảm thấy khó khăn một cách dễ hiểu nhất trong quá trình cố vấn (mentoring).

Rất mong nhận được sự giúp đỡ của mọi người.


Lịch sử

  • 08/2019 ~ Hiện tại : Nhà phát triển Java Backend tại Kakao

  • 2021. 08 ~ hiện tại : Mentor khóa học Backend DevCourse tại programmers

  • 2021. 12 ~ Hiện tại : Mentor Java Backend tại F-Lab

Sách

  • Đây là Phát triển Backend để xin việc với Java (Link)

 

Các lịch sử khác và bài giảng trên các nền tảng khác có thể được kiểm tra tại liên kết GitHub bên dưới.

GitHub - https://github.com/lleellee0

Chương trình giảng dạy

Tất cả

20 bài giảng ∙ (2giờ 56phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

20 đánh giá

4.5

20 đánh giá

  • tjsdnd6274234님의 프로필 이미지
    tjsdnd6274234

    Đánh giá 9

    Đánh giá trung bình 4.8

    5

    75% đã tham gia

    Vì bài giảng kéo dài khoảng 2-3 giờ nên phần giải thích có phần ngắn gọn chi tiết nhưng tôi nghĩ đây là bài giảng cho phép bạn trải nghiệm sự phân bổ không bị gián đoạn. Tôi nghĩ sẽ dễ nghe hơn nếu bạn có một số kiến ​​thức trước về Docker. Tôi rất thích nghe nó vì bản thân bài giảng được dạy bằng cách sử dụng một kịch bản cố ý có lỗi và các lỗi sau đó đã được giải quyết.

    • perfectgame님의 프로필 이미지
      perfectgame

      Đánh giá 7

      Đánh giá trung bình 5.0

      5

      55% đã tham gia

      Các bài giảng sử dụng quy trình Jenkins hiện có bắt đầu với những điều cơ bản và giải thích trước nhiều chức năng. Ưu điểm và nhược điểm của bài giảng này là bỏ qua những phần sâu sắc như vậy, nhưng xét vì đây là bài giảng dành cho người mới bắt đầu, tôi nghĩ nên học cách sử dụng nó ở đây trước rồi mới hiểu sâu hơn. Ưu điểm là bạn có thể học cách sử dụng nó bằng các phím tắt trong một khoảng thời gian ngắn và thật tốt khi có thể thực hành đúng sức mạnh của quy trình xử lý từng bước chi tiết. Tôi đặc biệt giới thiệu nó cho những ai cần sử dụng Jenkins Pipeline cho công việc bắt đầu từ ngày mai hoặc cho những người đang tìm việc làm và muốn hoàn thành danh mục đầu tư của mình bằng phương pháp phân phối nâng cao.

      • foo
        Giảng viên

        Cảm ơn Jong-Hoon Chae vì sự đánh giá chân thành của bạn!! Tôi nghĩ nó sẽ hữu ích cho những người đang cân nhắc tham gia khóa học. cười

    • syhan75162629님의 프로필 이미지
      syhan75162629

      Đánh giá 16

      Đánh giá trung bình 5.0

      5

      30% đã tham gia

      • foo
        Giảng viên

        Cảm ơn bạn syhan7516 đã để lại đánh giá khóa học~ :)

    • uheejoon님의 프로필 이미지
      uheejoon

      Đánh giá 45

      Đánh giá trung bình 5.0

      5

      30% đã tham gia

      • foo
        Giảng viên

        Cảm ơn bạn Yoo Hee-jun đã để lại đánh giá khóa học!!

    • 941021081384님의 프로필 이미지
      941021081384

      Đánh giá 8

      Đánh giá trung bình 5.0

      Đã chỉnh sửa

      5

      100% đã tham gia

      Tôi rất cảm ơn vì bạn đã chỉ ra rằng tôi đã giải thích chi tiết mọi quy trình, nhưng tôi hơi thất vọng vì đôi khi tôi dựa vào ChatGPT.

      • foo
        Giảng viên

        Cảm ơn anh Young-woong Kim đã để lại đánh giá về khóa học. (__) Tôi đã cố gắng thực hành như thể tôi đang thực sự cấu hình quy trình CI/CD, vì vậy tôi đã sử dụng ChatGPT 😊... Tôi nghĩ rằng phần này có thể gây một chút thất vọng. Trong tương lai, tôi sẽ đề cập đến cách tự mình thử với ChatGPT bằng cách thêm vào nội dung được sắp xếp rõ ràng hơn. Cảm ơn anh!

    587.800 ₫

    Khóa học khác của foo

    Hãy khám phá các khóa học khác của giảng viên!

    Khóa học tương tự

    Khám phá các khóa học khác trong cùng lĩnh vực!