다가오는 다음을 향해

[Jenkins] Jenkins Job - Item Django 추가 방법 본문

Jenkins

[Jenkins] Jenkins Job - Item Django 추가 방법

hyeseo 2024. 1. 2. 17:03
Jenkins Item Django 추가 방법 안내

 

 

0. 사전준비


  1. GitHub 계정 등록 : Credentials 등록
  2. Jenkins GitHub 연동
  3. GitHub Webhook 설정

 

1. env 파일 등록


1.0. Django ENV 예시

SECRET_KEY='****'
DJANGO_SETTINGS_MODULE='scwpbackend.settings.dev'
DEV_DB_ENGINE='django.db.backends.postgresql'
DEV_DB_NAME='****'
DEV_DB_USER='****'
DEV_DB_PASSWORD='****'
DEV_DB_HOST='**.**.**.***'
DEV_DB_PORT='5432'
DEBUG=True

1.1. jenkins 컨테이너 접속

docker exec -u 0 -it jenkins-dev /bin/bash

1.2. /****/***/****/dev/ 경로에 .env.development 파일 생성 및 환경변수 저장

mkdir -p /****/****/****/*****/
vim /****/****/****/*****/.env.development

 

2. Django Item 추가


2.1. DashBoard 화면에서 새로운 Item 추가 선택

2.2. Enter an item name

  • 아이템 이름을 작성, Freestyle project 선택 후 OK

2.3. Git

  1. Repository URL : 프로젝트 GitHub URL
  2. Credentials : add>Jenkins 를 선택하여 Git 정보 등록 후 등록정보 선택
  3. Branches to build: 배포할 브렌치 이름 기재

2.4. 빌드 유발

GitHub hook trugger for GITScm polling 체크

2.5. 빌드 환경

2.6. Build Steps

1. Add build step > Execute shell 선택

2. 실행에 필요한 스크립트 입력 후 저장

#!/bin/bash
cd ****

# .env 파일 복사
cp /****/****/****/****/.env* ./

docker-compose -f docker-compose-dev.yml up -d --build django

 

🔮 Django 컨테이너 실행 시 PostgerSQL DB 연동
: 아래 docker-compose command 내 makemigrations, migrate 적용 스크립트가 포함되어 있음

 

    command: "/bin/sh -c 'python manage.py makemigrations &&
              python manage.py migrate &&
              gunicorn scwpbackend.wsgi.dev:application --bind 0.0.0.0:8000'"