본문 바로가기

Tech/[CI & CD] Jenkins

Jenkins 를 활용하여 AWS EC2 인스턴스 + Docker Compose 빌드 자동화 구성하기

파이프라인 구성 전 EC2 인스턴스에서 Docker Compose 테스트

[패키지 업데이트]

sudo apt-get update sudo apt-get upgrade -y

 

[도커 설치]

sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release -y

sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io -y

 

[도커 서비스 활성화]

sudo systemctl enable docker sudo systemctl start docker

 

[Docker Compose 설치]

sudo curl -L "https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose docker-compose --version

 

[권한 할당]

  • Jenkins Agent 가 사용할 사용자에게 권한 할당

sudo usermod -aG docker ubuntu

 

[Git 및 파이썬 설치]

sudo apt install python3-pip python3-venv git -y

 

[Git Clone]

git clone --branch [브랜치이름] [깃주소]

해당 프로젝트 폴더 내에 .env 파일 직접 작성

docker-compose up

아래와 같이 정상적으로 외부에서 AWS EC2 인스턴스의 Public IP 주소로 Django 앱 접근이 가능해야 함.

 

Jenkins를 활용하여 자동 배포 구현

아래와 같이 Jenkins의 Build Steps 에 bash 스크립트 추가

아래와 같이 빌드가 정상적으로 완료됐는지 확인

아래와 같이 상태도 정상적이여야 함.

'Tech > [CI & CD] Jenkins' 카테고리의 다른 글

Mac 로컬 환경에서 Jenkins 설치 및 Github 연동  (0) 2025.05.21