인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
Programming

/

Devops & Infra

Application Deployment Automation and CI/CD

Through this course, you will experience application deployment automation. While deploying a project, you will also learn how to use Jenkins and gain basic knowledge about CI/CD!

(4.8) 6 reviews

356 students

Jenkins
CI/CD
nginx
github-webhook
Thumbnail

This course is prepared for Basic Learners.

What you will learn!

  • Jenkins

  • Deployment Automation

  • CI/CD Testing

"Click" → Distribution complete

How great would it be if deploying an application could be this simple? It's time to move away from manual deployment and realize the importance of deployment automation and CI/CD (Continuous Integration and Deployment). One of the big differences between when I was developing alone and now is the efficiency of the deployment process. When I was developing alone, manual deployment was not a big problem, but in the real world, fast and stable deployment is essential. This is because in an environment where you collaborate with many developers and frequent code changes occur, deployment automation is essential.

Even if the application actually works well, if the deployment process is complex and inefficient, it can become a failure point for the entire system. If a problem occurs during deployment and the service is interrupted or an error occurs, it can create a bad experience for the user.

This lecture covers how to automate deployments, set up zero-downtime deployments, and build CI/CD pipelines using Jenkins to solve these problems. We will automate the deployment process using Jenkins, create a zero-downtime deployment environment for the API server using nginx, and cover CI testing and CD rollback strategies.

Of course, it is difficult to perfectly implement deployment automation and CI/CD from the beginning. However, this lecture will be enough to learn the basic concepts of deployment automation and CI/CD and apply them to your projects and team projects. After the lecture, you will be able to think about and implement a deployment automation method that suits your project.


Automating deployment and configuring CI/CD environment through Jenkins pipeline creation


Learn about these things

Jenkins

Jenkins is an open source automation server that is used to build and manage CI/CD pipelines through various plugins. In this course, you will learn how to set up a Jenkins server, configure a deployment environment, and implement deployment automation using WebHooks.

Continuous distribution

Non-stop deployment is a method of deploying new versions of an application without interrupting the service. This allows you to provide uninterrupted service to your users. In this lecture, you will learn how to create a non-stop deployment environment using nginx and how to test it.

CI/CD

CI/CD is a method of deploying code changes frequently and reliably through an automated process of software development. This lecture covers the concepts of CI and CD, writing and setting up CI test code, and troubleshooting issues that may arise during the CD process.

Things to note before taking the class

Practice environment

  • Operating System and Version (OS): Windows 10,

  • Tools used: Intellij Community 2023.2, Google Chrome



Learning Materials

Player Knowledge and Notes

  • The cloud service is Vultr , but you can also use other cloud services such as AWS or GCP. However, there will be some differences, such as firewall settings, when using other cloud services. However, I think you will be able to gain more if you search for these problems yourself and experience them yourself.

  • The training will be based on an application created with Spring Boot, but it can be applied to other languages and frameworks by modifying only some scripts. If you have any questions, please leave a question. I will help you as much as I can.


  • If you have any questions while taking the course, please leave a question. I will update it if there is anything that needs to be updated.


Recommended for
these people!

Who is this course right for?

  • Anyone who can deploy applications manually but wants to learn how to deploy them automatically

  • People who already know the concept of deployment automation but want to quickly create an automated deployment environment through Jenkins

  • Anyone who wants to know why a CI/CD process is needed

Need to know before starting?

  • Experience with manual deployment

  • Experience using Git and GitHub

Hello
This is

3,720

Students

141

Reviews

80

Answers

4.9

Rating

8

Courses

안녕하세요.

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

잘 부탁 드리겠습니다.


이력

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

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

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

 

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

 

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

GitHub - https://github.com/lleellee0

Curriculum

All

20 lectures ∙ (2hr 56min)

Published: 
Last updated: 

Reviews

Not enough reviews.
Become the author of a review that helps everyone!