코딩공부/Server

[CI/CD] Django Jenkins 자동 배포하기 - Ec2 Ubuntu 22.04 설치 (2)

integerJI 2022. 5. 15. 21:53

본 게시글은 Django 및 Aws Ec2의 기초 지식을 알고 있는 전재 하에 처음부터 빠르게 진행됩니다.

 

해당 프로젝트를 통하여 Docker를 이용해 Jenkins 서버를 구축, Django 프로젝트를 Github와 Webhock으로 연결하여 자동 빌드하는 CI/CD 만들기가 목표입니다!


기존 Aws Ec2를 이용해 Django 프로젝트를 한번 배포하였지만 시간이 많이 흐른 뒤라 다시 한번 작성하였습니다.


[CI/CD] Django Jenkins 자동 배포하기 - Django 프로젝트 생성 (1) : https://integer-ji.tistory.com/379

 

Django 기초 시작 : https://integer-ji.tistory.com/81

Aws Ec2 프로젝트 배포 기초 시작 : https://integer-ji.tistory.com/300

 

개발 환경 : Window10

개발 언어 : Python - 설치 : https://integer-ji.tistory.com/64

개발 툴 : VS Code  - 설치 : https://integer-ji.tistory.com/65

개발 Terminal : Git Bash - 설치 : https://integer-ji.tistory.com/66


1. Aws 로그인 및 지역 설정

 

Aws 사이트에 회원가입 및 로그인을 해줍니다. 

 

Aws 사이트 : https://aws.amazon.com/ko/

 

로그인 한 뒤 지역 설정이 서울이 아니면 서울로 바꾸어 줍니다.

 

 

"아시아 태평양 (서울) ap-northeast-2" 선택

 

2. EC2 인스턴스 생성

 

검색 창에 EC2를 검색하여 EC2 서비스로 진입합니다.

 

 

저의 EC2 대시보드와 조금 다를 수 있지만 최종적으로 해야 할 것은 인스턴스를 생성하는 것입니다.

 

메인 페이지의 "인스턴스 시작" 혹은 좌측 메뉴에서 인스턴스 메뉴 진입 후 인스턴스를 만들어주세요

 

2-1. 이름 및 태그

이름을 입력해 줍니다. 

 

 

2-2. 애플리케이션 및 OS 이미지(Amazon Machine Image)

"Quick Start" 탭 중 Ubuntu를 선택해줍니다.

 

Amazon Machine Image(AMI) : Ubuntu Server 22.04 LTS (HVM), SSD Volume Type

(Ubuntu 버전은 상관없지만 무료로 사용할 수 있는 "프리 티어 사용 가능"으로 해주세요!)

 

 

2-3. 인스턴스 유형

Default 값인 t2.micro를 사용

 

 

2-4. 키 페어(로그인) 및 키 페어 생성

"새 키 페어 생성"을 눌러주세요.

 

 

키 페어 이름을 입력 후 "키 페어 생성"을 눌러주세요.

 

 

그러면 새로운 pem 파일이 저장이 됩니다. 

 

해당 파일은 꼭 보안에 주의해주셔야 하고 잃어버리면 안 됩니다!!

 

앞으로 이 key를 이용해 Ec2 서버를 들어갈 것입니다.

 

 

새로 만든 키 페어를 select box에서 선택해줍니다.

 

 

2-5. 네트워크 설정

 

네트워크 설정에서는 "편집"을 눌러줍니다. 

 

Django에서 runserver을 하였을 때 열리는 Port를 열어 접근을 허용해 주어야 합니다. 

 

 

편집을 누른 뒤 하단을 보시면 "인바운드 보안 그룹 규칙"이 있습니다. 

 

"Add security group rule"을 눌러 보안 그룹 규칙을 2개 추가해 줍니다.

 

각각 HTTP, 사용자 지정(Django 서버 포트)입니다.

 

유형 : HTTP, 원본 정보 0.0.0.0/0, ::/0 
사용자 지정 TCP : 포트 범위 : 8000, 원본 정보 0.0.0.0/0, ::/0

 

 

3. 인스턴스 시작

 

이제 2번 Step에서 설정 한 값을 가지고 인스턴스 시작을 눌러줍니다!

 

 

인스턴스가 정상 실행되었고 다음 게시물에서는 서버에 접속 방법을 알아보겠습니다~