Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
Programming

/

Devops & Infra

アプリケーション展開の自動化とCI/CD

レッスンでは、アプリケーションのデプロイの自動化を体験することができます。

  • foo
배포
젠킨스
3시간 만에 완강할 수 있는 강의 ⏰
이론 실습 모두
강의자료
Jenkins
CI/CD
nginx
github-webhook

学習した受講者のレビュー

こんなことが学べます

  • Jenkins

  • 展開の自動化

  • CI/CDテスト

「カチッ」→配布完了

アプリケーションをデプロイするのがこのように簡単な場合は、どれほど良いでしょうか。これは、手動展開から離れて、展開の自動化とCI / CD(持続的な統合と展開)の重要性を実感する時です。私が単独で開発するときと今の大きな違いの1つは、まさに展開プロセスの効率性です。単独で開発するときは手動配布も大きな問題にはなりませんでしたが、実際の現業では迅速で安定的な配布が必須です。多くの開発者とコラボレーションし、頻繁なコード変更が行われている環境では、展開の自動化が不可欠です。

実際にアプリケーションがうまく動作していても、配備プロセスが複雑で非効率的である場合、これはシステム全体の障害点になる可能性があります。デプロイ中に発生する問題によってサービスが中断されたりエラーが発生した場合、ユーザーに悪い経験を与える可能性があります。

このレッスンでは、これらの問題を解決するためにJenkinsを使用した展開の自動化、無中断の展開設定、およびCI / CDパイプラインの構築方法について説明します。 Jenkinsを活用してデプロイプロセスを自動化し、nginxを使用してAPIサーバー用の無中断デプロイメント環境を作成し、CIテストとCDロールバック戦略まで取り上げています。

もちろん、展開自動化とCI / CDは最初から完全に実装するのは難しいです。しかし、このレッスンでは、展開の自動化とCI / CDの基本概念を学び、あなたのプロジェクトやチーム内のプロジェクトにも適用するのに十分です。講義が終わったら、あなたのプロジェクトに合わせた配布自動化方法も、自分で悩んで直接実装することもできます。


Jenkinsパイプライン作成による展開の自動化とCI / CD環境の構成


このようなことを学びます。

Jenkins

Jenkinsはオープンソースの自動化サーバーで、さまざまなプラグインを介してCI / CDパイプラインを構築および管理するために使用されます。このレッスンでは、Jenkinsサーバーを設定し、展開環境を設定し、WebHookを利用した展開自動化を実装する方法を学びます。

無中断展開

非中断展開は、サービスを中断することなく新しいバージョンのアプリケーションを展開する方法です。これにより、ユーザーにシームレスなサービスを提供できます。レッスンでは、nginxを活用した無中断展開を作成し、それをテストする方法を学びます。

CI/CD

CI/CDは、ソフトウェア開発の自動化されたプロセスを通じて、コードの変更を頻繁かつ確実に展開する方法です。このレッスンでは、CIとCDの概念を理解し、CIテストコードを作成および設定し、CDプロセスで発生する可能性のある問題を解決する方法について説明します。

受講前の注意

練習環境

  • オペレーティングシステムとバージョン(OS):Windows 10、

  • 使用ツール: Intellij Community 2023.2, Google Chrome



学習資料

  • スクリプト例: https://github.com/lleellee0/application-deploy-advanced

  • デプロイ対象プロジェクトの例: https://github.com/lleellee0/deploy-test

    • そのプロジェクトを fork して使ったり、自分で作った別のプロジェクトを使って練習してみてください。まだテストコードを書くなど、CI / CDについてよく知られていない場合は、サンプルプロジェクトをforkして使用することをお勧めします。

選手の知識と注意事項

  • クラウドサービスはVultrというサービスを使用していますが、AWSやGCPなど他のクラウドサービスを使用しても構いません。ただし、他のクラウドサービスを使用する場合は、ファイアウォールの設定など、いくつかの違いがあります。しかし、このような問題は、皆さんが直接検索してみて、体にぶつかってみればもっと多く得られると思います。

  • Spring Bootで作成されたアプリケーションに基づいて練習を進めますが、一部のスクリプトのみを変更すると、他の言語や他のフレームワークにも適用可能です。ご質問があれば質問を残してください。私が助けることができる限り、できるだけお手伝いします。


  • 受講中に質問がある場合は、質問を残してください。更新する必要がある場合は、更新します。


こんな方に
おすすめです

学習対象は
誰でしょう?

  • 手動でアプリケーションをデプロイしたいが、自動的にデプロイできる方法について学びたい人

  • 展開自動化の概念自体はすでに知っていますが、Jenkinsを介して迅速に展開自動化環境を作成したい人

  • CI/CDプロセスがなぜ必要なのか知りたい人

前提知識、
必要でしょうか?

  • 手動展開を行った経験

  • Git、GitHubの使用経験

こんにちは
です。

5,200

受講生

220

受講レビュー

104

回答

4.9

講座評価

9

講座

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

カリキュラム

全体

20件 ∙ (2時間 56分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

14件

4.4

14件の受講レビュー

  • 채종훈님의 프로필 이미지
    채종훈

    受講レビュー 7

    平均評価 5.0

    5

    55% 受講後に作成

    기존 젠킨스 파이프라인을 활용하는 강의들은 기본적인 사항부터 시작해 많은 기능을 사전에 설명하며 진행하려 합니다. 이 강의의 장점이자 단점은 그런 깊은 부분을 생략하고 간다는 것인데 초급 강의임을 감안하면, 여기서 먼저 사용하는 법을 익히고 그 다음 좀 더 깊은 이해를 하는 방식도 좋다고 생각합니다. 짧은시간에 숏컷으로 활용하는 법을 배울 수 있다는 점이 장점이고, 파이프라인의 장점인 디테일한 단계별 처리라는 강점을 제대로 실습해 볼 수 있어서 좋았습니다. 당장 내일부터 업무에 젠킨스 파이프라인을 쓰셔야 하는 분들 혹은 취준하며 본인 포트폴리오를 고도화시킨 배포방식으로 마무리짓고 싶은 분들에게 강력추천합니다.

    • 이준형(Foo)
      知識共有者

      채종훈님 정성스러운 수강평 감사합니다!! 수강 고민하는 다른 분들께도 도움이 될 것 같습니다. ㅎㅎ

  • charo님의 프로필 이미지
    charo

    受講レビュー 8

    平均評価 4.8

    5

    75% 受講後に作成

    2~3시간 정도 강의다 보니, 세세한 부분에서는 설명이 다소 짧긴 하지만 무 중단 배포를 한번 경험해 볼 수 있는 강의라고 생각합니다. 사전에 docker 사전 지식이 어느 정도 있으면 들으실때 조금 수월하다고 생각합니다. 강의 자체를 일부러 오류가 있는 스크립트로 진행하고 그 뒤에 오류를 해결해 나가는 방식이기 때문에 저는 재밌게 들었습니다.

    • 문경민님의 프로필 이미지
      문경민

      受講レビュー 1

      平均評価 3.0

      3

      30% 受講後に作成

      • syhan7516님의 프로필 이미지
        syhan7516

        受講レビュー 9

        平均評価 5.0

        5

        30% 受講後に作成

        • 이준형(Foo)
          知識共有者

          syhan7516님 수강평 남겨주셔서 감사합니다~ :)

      • 유희준님의 프로필 이미지
        유희준

        受講レビュー 33

        平均評価 5.0

        5

        30% 受講後に作成

        • 이준형(Foo)
          知識共有者

          유희준님 수강평 남겨주셔서 감사합니다!!

      ¥3,367

      fooの他の講座

      知識共有者の他の講座を見てみましょう!

      似ている講座

      同じ分野の他の講座を見てみましょう!