강의

멘토링

로드맵

BEST
Programming

/

Devops & Infra

Xây dựng CI/CD Pipeline bằng Jenkins

Bài giảng này tập trung vào CI (Continuous Integration, tích hợp liên tục) và CD (Continuous Deployment, triển khai liên tục), hai trong bốn yếu tố cốt lõi cấu thành ứng dụng gốc đám mây (MSA, CI/CD, DevOps, Container). Thông qua bài giảng này, bạn sẽ hiểu và thực hành các quy trình cần thiết để xây dựng và triển khai đường ống tự động hóa riêng của mình trên môi trường cục bộ và môi trường đám mây bằng công cụ CI/CD Jenkins.

(4.7) 209 đánh giá

4,610 học viên

  • Dowon Lee
Jenkins
CI/CD
Ansible
Kubernetes
SonarQube

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

Dịch cái này sang tiếng Việt

  • Bạn có thể học về quá trình xây dựng, đóng gói và triển khai ứng dụng bằng Jenkins.

  • Thông qua đường ống tự động hóa CI/CD, bạn có thể triển khai ứng dụng trên nhiều môi trường khác nhau.

  • Bạn có thể học cách triển khai ứng dụng vào môi trường Docker và Kubernetes cũng như cách sử dụng Ansible để kiểm soát thông tin cấu hình của máy chủ.

Xu hướng bắt nguồn từ đám mây! ☁️
Xây dựng quy trình tự động hóa CI/CD .

📢 Vui lòng kiểm tra trước khi tham gia khóa học!

  • Tùy thuộc vào môi trường học tập của bạn, âm thanh bài giảng có thể không đồng đều. Bạn có thể nghe thấy những âm thanh ồn ào không liên tục trong các lớp học phần 0-2, vì vậy vui lòng kiểm tra lớp [Preview] trước khi tham gia lớp học.

Có lẽ đây không phải là mối quan tâm của bạn sao?

Tôi nên phân phối kết quả phát triển đã hoàn thành đến máy chủ vận hành như thế nào ?

Tôi nên định cấu hình môi trường triển khai như thế nào để triển khai kết quả cho nhiều môi trường?

Làm cách nào để định cấu hình ứng dụng của tôi với môi trường ảo hóa vùng chứa ?

Làm cách nào để triển khai ứng dụng của tôi lên môi trường Kubernetes ?


Cốt lõi của DevOps, CI/CD
Nhanh hơn và mạnh hơn với Jenkins!

Jenkins?

Bạn có thể xây dựng quy trình tự động hóa của riêng mình bằng Jenkins, một công cụ tự động hóa giúp tích hợp liên tục (CI) và triển khai liên tục (CD).

Khóa học này là khóa học để hiểu các quy trình cần thiết để xây dựng và triển khai các ứng dụng được phát triển bằng Jenkins, một công cụ tự động hóa CI/CD và để xây dựng một quy trình tự động hóa. Thông qua 20 mẫu học tập được sử dụng trong khóa học, sinh viên tìm hiểu toàn bộ quy trình cần thiết để xây dựng, thử nghiệm và triển khai một ứng dụng được phát triển hoàn chỉnh. Ngoài ra, bạn có thể xây dựng quy trình triển khai tự động của riêng mình trên PC cục bộ và môi trường đám mây.

Từ những năm 2010, các hệ thống CNTT đã phát triển với Resilient + Anti-Fragile + Cloud Native làm từ khóa chính. Một nền văn hóa CNTT có tên DevOps đã xuất hiện, kiến ​​trúc dựa trên nền tảng đám mây được giới thiệu và các hệ thống phải có khả năng đáp ứng linh hoạt với mọi môi trường. Khi thiết kế ứng dụng, chúng tôi bắt đầu phát triển chúng bằng cách tách các miền bằng kiến ​​trúc microservice và các dịch vụ được chia thành vài chục hoặc hàng trăm hoặc nhiều hơn. Mỗi dịch vụ tạo nên ứng dụng đã được chuyển đổi sang môi trường nơi ứng dụng đó có thể được phát triển, xây dựng và triển khai riêng lẻ. Trong môi trường DevOps, các cải tiến và vấn đề với dịch vụ cần được phản ánh nhanh chóng. Các đơn vị phát triển phải nhỏ hơn và việc triển khai phải diễn ra thường xuyên hơn.

Giờ đây, nó đã đạt đến quy mô mà các nhà phát triển hoặc nhà điều hành không còn có thể xây dựng, đóng gói và triển khai hàng chục đến hàng trăm dịch vụ tạo nên một ứng dụng theo cách thủ công. Bất kể mức độ phức tạp của hệ thống, việc xây dựng và triển khai từng dịch vụ tạo nên ứng dụng có thể là một nhiệm vụ lớn và có thể là một khối lượng công việc đáng kể.

Ngày nay, việc xây dựng các quy trình tự động hóa để tích hợp liên tục (CI) và triển khai liên tục (CD) cho các ứng dụng đã trở thành một lựa chọn thiết yếu để phát triển ứng dụng trong môi trường dựa trên nền tảng đám mây. Toàn bộ quá trình lấy mã từ Git, thực hiện xây dựng, chạy các trường hợp thử nghiệm, tạo gói để triển khai và triển khai vào hệ điều hành đều được thực hiện bằng một quy trình tự động. Các quy trình tự động này cung cấp một môi trường nơi bạn có thể xây dựng thường xuyên hơn, kiểm tra thường xuyên hơn và triển khai thường xuyên hơn, cuối cùng dẫn đến chất lượng hệ thống được cải thiện.

Trong bài giảng “Xây dựng đường ống CI/CD bằng Jenkins”

Trong khi hai bài giảng trước, “ Phát triển dịch vụ WEB RESTful bằng Spring Boot ” và “ Ứng dụng microservice (MSA) được phát triển với Spring Cloud, ” đã cung cấp hướng dẫn phát triển ứng dụng web và ứng dụng gốc trên nền tảng đám mây, thì bài giảng này cung cấp hướng dẫn phát triển ứng dụng web và các ứng dụng gốc trên nền tảng đám mây + Trải nghiệm quá trình xây dựng quy trình tự động hóa cần thiết để triển khai một ứng dụng web được phát triển bằng Spring Boot lên môi trường cục bộ hoặc đám mây.

Thông qua bài giảng này, sinh viên sẽ có thể xây dựng quy trình tự động hóa để triển khai ứng dụng đã phát triển vào môi trường vận hành dựa trên sự hiểu biết về CI/CD và xây dựng quy trình triển khai của riêng mình.

Một bài giảng hay để cùng xem 📖


Với những người này
Khuyến khích.

ứng dụng web
Bạn đã bao giờ phát triển
Ai đó có

CI/CD của riêng bạn
đường ống tự động hóa
Những người muốn xây dựng

trên máy chủ điều hành
ứng dụng
Trong môi trường ảo hóa container
Những người muốn phân phối

Tự động hóa CI/CD
qua đường ống
trong môi trường đám mây
ứng dụng
Những người muốn phân phối

✅ Sau khi tham gia khóa học bạn sẽ làm được những điều này.

  • Hiểu tích hợp liên tục và triển khai liên tục.
  • Bạn có thể xây dựng quy trình triển khai mà bạn có thể thực hành trong môi trường cục bộ của mình.
  • Bằng cách sử dụng ứng dụng của riêng bạn hoặc ứng dụng web mẫu được cung cấp trong khóa học, bạn có thể xây dựng quy trình tự động hóa có thể triển khai tới máy chủ web Tomcat và môi trường ảo hóa Docker.
  • Bạn có thể xây dựng môi trường triển khai của riêng mình dựa trên tập lệnh mẫu được cung cấp trong bài giảng.

Nội dung học tập
Hãy kiểm tra nó.

💡 Bạn có thể tìm hiểu những kiến ​​thức cơ bản cần thiết để xây dựng quy trình tự động hóa CI/CD và tự mình xây dựng quy trình triển khai thông qua mã thực hành. Sinh viên có thể thực hành triển khai trong cả môi trường cục bộmôi trường đám mây tùy theo môi trường của chính họ. Bạn có thể xây dựng môi trường triển khai của riêng mình thông qua hơn 25 ví dụ thực hành có thể được áp dụng và thử nghiệm trực tiếp trong môi trường vận hành mà bạn muốn triển khai. *Hỗ trợ môi trường Windows, macOS (Intel Chip/Apple Silicon Chip)

Phần 1 - DevOps và CI/CD

  • Tìm hiểu về quy trình DevOps và CI/CD.

Phần 2 - Học CI/CD bằng Jenkins

  • Tìm hiểu cách cài đặt và triển khai Jenkins để xây dựng quy trình CI/CD.
  • Tìm hiểu cách triển khai lên máy chủ web Tomcat và môi trường ảo hóa Docker.

Phần 3 - Jenkins + Cơ sở hạ tầng dưới dạng mã

  • Hiểu Cơ sở hạ tầng dưới dạng Mã và tìm hiểu cách sử dụng máy chủ Ansible.
  • Tìm hiểu cách tích hợp với máy chủ Jenkins và Ansible.

Phần 4 - Tích hợp Jenkins + Ansible + Kubernetes

  • Tìm hiểu cách cài đặt Kubernetes cho phòng thí nghiệm.
  • Tìm hiểu cách triển khai trong Jenkins bằng cách liên kết máy chủ Ansible và Kubernetes.

Phần 5 - Sử dụng Jenkins nâng cao ① - Pipeline

  • Hiểu các tính năng của Jenkins Pipeline.
  • Tìm hiểu cách triển khai một dự án bằng tập lệnh Jenkins Pipeline.

Phần 6: Sử dụng Jenkins nâng cao ② - SonarQube, Multi node

  • Tìm hiểu cách triển khai trên nhiều nút Jenkins.
  • Tìm hiểu cách sử dụng nó kết hợp với hệ thống SonarQube.

Phần 7: Triển khai lên môi trường đám mây thương mại

  • Định cấu hình môi trường triển khai của bạn trên đám mây thương mại.
  • Tìm hiểu cách cài đặt và triển khai các dịch vụ được sử dụng trong môi trường triển khai của bạn trên máy chủ AWS EC2.

Phần 8: SW thiết yếu cho môi trường thực hành

  • Tìm hiểu cách cài đặt SW và các công cụ sử dụng trong bài giảng. (Windows, MacOS)
  • Tìm hiểu cách tạo tài khoản để sử dụng dịch vụ đám mây và cách tạo máy chủ ảo.

💾 Ghi chú học tập

  • Khóa học này được thiết kế để giúp bạn tìm hiểu về nội dung và quy trình cần thiết để triển khai một ứng dụng. (Để biết kiến ​​thức cần có trước khi tham gia khóa học, vui lòng xem [Kiến thức của người chơi] và Hỏi đáp ở cuối trang giới thiệu.)
  • Bài giảng được thực hiện trong môi trường macOS, đồng thời các lệnh và tập lệnh cũng được cung cấp cho sinh viên trong môi trường Windows.
  • Phần 9 giới thiệu cách cài đặt phần mềm cần thiết cho bài giảng. Chúng tôi khuyên bạn nên học Phần 9 trước khi tiến hành đào tạo thực hành.

Hỏi đáp 💬

Q. Những môn học hoặc kiến ​​thức tiên quyết nào cần phải có để tham gia khóa học?

Trong các bài giảng, các khía cạnh lập trình hiếm khi được giải thích. Tìm hiểu từ những điều cơ bản về các quy trình và phương pháp cần thiết để triển khai các ứng dụng đã phát triển trong môi trường cục bộ hoặc đám mây. Ngoài ra, nếu bạn hiểu rõ mục đích của các dịch vụ quản lý cấu hình như Git, hiểu biết về ứng dụng web và dịch vụ ảo hóa, thì việc hiểu nội dung bài giảng sẽ rất hữu ích.

Q. Môi trường sử dụng trong bài giảng là gì?

Trong khóa học này, bạn đang sử dụng môi trường cục bộ để triển khai ứng dụng bạn đã phát triển hoặc ứng dụng web được cung cấp trong khóa học. Chúng tôi định cấu hình SW và các hệ thống (Tomcat, máy chủ SSH, Kubernetes, v.v.) cần thiết để tự động hóa triển khai bằng cách sử dụng Docker Desktop được cài đặt trong môi trường cục bộ và cung cấp các ví dụ để xây dựng quy trình triển khai. Ngoài ra, nửa sau của bài giảng cũng đề cập đến thực hành bằng cách triển khai nội dung được xây dựng trong môi trường cục bộ trên môi trường đám mây. Mặc dù các bài tập cho bài giảng này được thực hiện trong môi trường macOS nhưng các lệnh và tập lệnh dành cho người dùng Windows cũng được cung cấp.

Câu hỏi: Nó bao gồm việc triển khai tự động hóa CI/CD ở mức độ nào?

Khóa học này cung cấp khoảng 20 mã thực hành có thể được thực hành bởi bất kỳ ai mới làm quen với các khái niệm tích hợp liên tục (CI) và triển khai liên tục (CD), cũng như các nhà phát triển muốn triển khai ứng dụng đến máy chủ sản xuất thông qua quy trình CI/CD Chúng tôi đang cung cấp nó. Dựa trên những gì bạn học được trong khóa học, bạn có thể xây dựng quy trình CI/CD để triển khai các ứng dụng web cơ bản và ứng dụng vi dịch vụ. Công việc sử dụng Jenkins bằng Kubernetes Cluster, giám sát liên tục và lập lịch liên tục đang được chuẩn bị thông qua “Khóa học nâng cao về triển khai tự động hóa CI/CD (tiêu đề dự kiến)”.

Hiện có hơn 6.000 người đang nghe
Bạn có tò mò về bí quyết phát triển MSA không?
Xếp hạng trung bình 4,8★ Đánh giá khóa học tích lũy 500+

Lộ trình phát triển ứng dụng microservice Spring Boot & Spring Cloud (Nhấp chuột)

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

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

  • 개발된 ứng dụng để triển khai bằng cách sử dụng CI/CD

  • Docker và Kubernetes để triển khai ứng dụng Spring Boot, người muốn xây dựng môi trường xây dựng tự động

  • IaC được sử dụng để quản lý thông tin cấu hình của máy chủ chạy ứng dụng

  • Những người muốn sử dụng Jenkins như một công cụ triển khai tự động CI/CD

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

  • Hiểu việc xây dựng và triển khai ứng dụng

  • 컨테이너 ảo hóa là gì?

  • 웹 ứng dụng hiểu biết

Xin chào
Đây là

29,483

Học viên

1,580

Đánh giá

1,355

Trả lời

4.8

Xếp hạng

8

Các khóa học

저는 IT 엔지니어입니다. 언젠가 직업란에 "회사원?", "개발자?", "강사?" 어떤 단어를 선택해야 할 지 고민이 되었던 때가 있었습니다. 그러다가, IT 엔지니어라는 표현이 제가 잘 어울리는 직업명이라는 생각이 들어 지금까지도 직업란에는 "IT 엔지니어"라고 적고 있습니다.

직업이라는 것은 자신의 일을 나타내는 것이고, 일이라는 것은 재미있고, 도움이 되는 일이면 좋겠다는 생각을 가지고 있습니다. 누구나 다 원하는대로 일을 하며 살수는 없지만, 저는 제가 하는 있는 이 일을 좋아하는 있고, 잘하고 싶어하는 사람입니다. 개발자로써, 강사로써, 컨설턴트로써의 역할을 해 오면서, 매번 새롭게 출시되고 변화하는 IT 신기술을 따라가기에 급급하지만, 그래도, 남들보다 조금이라도 먼저 접하고, 전파하고, 사용하고 싶은 사람 중 한명입니다. 

최근 관심을 가지고 있는 분야는 온라인 교육 컨설팅입니다. 그리고 관심있는 기술은 Cloud Native Architecture, Blockchain, Machine Learning, Kafka, Kuberbetes 등입니다. 이러한 기술은 실제로 강의도 하고 있고 업무에 적용해서 사용도 하고 있습니다. 하지만, 워낙 방대한 주제이다 보니, 아직까지도 계속 공부하고 있습니다.

머리속에 가지고 있는 것은 진정한 지식이 아니라고 합니다. 저는 제가 가진 지식과 경험을 다양한 방벙을 통해 공유하려 합니다. 그리고, 새로운 분야, 새로운 기술에 계속 도전하고 있는 IT 엔지니어가 될 것입니다.  

 

 

  • ) 엔제이원컴퍼니 대표 

  • ) 동국대학교 국제정보대학원 정보보호학과 대우교수

  • ) JP Morgan Chase AMJ Tech consultant (일본)

  • ) 삼성 SDS CMS 사업본부 책임 엔지니어

 

 

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

Tất cả

85 bài giảng ∙ (15giờ 29phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

209 đánh giá

4.7

209 đánh giá

  • najh05283457님의 프로필 이미지
    najh05283457

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Jenkinsが何であるか、どのように書くかを確かに学ぶことができました。おまけでドッカー、k8sまでも。最近は、MavenビルドよりもGradleビルドをもっと使う傾向にあるだけに、Gradleビルドが例だったらもっと良かったと思います!

    • hyunybutterchip님의 프로필 이미지
      hyunybutterchip

      Đánh giá 4

      Đánh giá trung bình 4.8

      4

      78% đã tham gia

      ドッカーとCI/CDを学習するのに本当に良い講義だと思います。 おすすめですが残念な部分が多かったです。 1. 間違って言われるのがよくある。 8080ポートを8088に変えて話す 2. 環境設定セクションも別にあり講義もあるということについての説明がなくて混同を与える。 3. 講義と環境設定 講義があまりに別にあるので、行き来するというのが不便だ。 あらかじめ設定しておけばいいのではないかと思うかもしれませんが、設定してみたらコンテナを使わないとメモリを無駄にして速度だけ落ちるので非効率的でした。 4. コースの半分程度が環境設定がすぐにならず、進度が遅れる トラブルシューティングももちろん良いと思いますが、基本講義のせいで早く学習し、本人が実習しながらトラブルシューティングするのが効率的ではないかと思います。 5.コミュニティに答えをほとんどしないでください。 練習する上で多くの人がエラーを経験していますが、単純な質問にだけ答えをつけてくれるようですね。 川の価格は決して安い方ではありません。 コースは本当に良いですが、全体的に現行化が必要だと思います。

      • kenneth
        Giảng viên

        こんにちは、離島院です。フィードバックいただいた内容はレッスンの更新時にぜひ!反映させていただきます。講義の性質上、コンテナの実行 VM の実行には多くのリソースが必要な場合や、複数の Host PC が必要な場合が多い。したがって、可能であれば、受講生の方が実習環境に対する負担や困難を軽減しようとするDind方式や、別途のVM設定関連講義を準備しました。レッスンで使用されているすべてのスクリプトとサンプルコードは、Windows10、Windows 11、MacOS Inter chip(2018)、MacOS M1 chip(2022)バージョンでテストされていますが、いくつかの受講生は実行に困難があることを知っています。今後、このようなインフラ関連講義には、もう少し多様な環境でのテストを提供したり、インフラ講義以外のプログラミング講義に専念(?)しなければならないという考えをしたりもしました。 ^^;コミュニティーアップという質問にもすぐに確認できず、回答できなかったことも申し訳ありません。昨年からAIの回答が追加されており、すぐに通知を確認できなかった点やプロジェクトに押されて回答をすぐにできなかったことも事実です。それでも、受講してくださる方には個人的な状況がありますので、すぐに応対に差し上げるよう努力いたします。ありがとうございました。

    • jaehyoni님의 프로필 이미지
      jaehyoni

      Đánh giá 1

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!ガドウォン!

      • rjm93036154님의 프로필 이미지
        rjm93036154

        Đánh giá 51

        Đánh giá trung bình 5.0

        5

        25% đã tham gia

        長く待ちました。 今回の講義も気軽に見てWebFlux講義まで呼吸します!

        • kenneth
          Giảng viên

          こんにちは、WebFlux講義の準備中です。今年中にオープンできるよう、お早めに仕上げさせていただきます。

      • fkauskm0550님의 프로필 이미지
        fkauskm0550

        Đánh giá 10

        Đánh giá trung bình 4.7

        3

        100% đã tham gia

        環境設定を先に始めてから本講義を始める仕組みにするのが初心者が理解しやすいようですね

        Ưu đãi có thời hạn, kết thúc sau 2 ngày ngày

        8.072 ₫

        24%

        1.850.280 ₫

        Khóa học khác của Dowon Lee

        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!