갬미의 성장일기

Day 66 - CICD (eks) 본문

Cloud/Cloud 공부일기

Day 66 - CICD (eks)

갬미 2022. 4. 14. 22:24

오늘 배운 내용

- eks로 CICD 


CICD

어제는 gke를 이용하여3tier를 구성하고 이 서비스에 적용할 cicd 파이프라인을 구상하였다

오늘은 어제와 동일한 구성을 가지지만 aws의 eks를 이용하여 cicd를 구상한다!

 

순서는 다음과 같다

 

1. build

   - jdk 설치

   - build

2. 도커 이미지

   - docker 로그인

   - docker image build, push

3. aws 

   - 계정인증

   - rollout restart deploy(was) 

   - 빌드 파일 백업

 

추가로 어제 해보려가다 못했던 ,,!! 환경변수 만드는 방법을 알게되었다!

env 만들기

      - name: Set env
        run: echo "DATE=$(date +%y-%m-%d-%H-%M)" >> $GITHUB_ENV

>>  == $GITHUB_ENV에 append

 

env 사용하기

      - name: filename change
        run: mv ./build/libs/*.war ./build/libs/${{ env.DATE }}.war

만든 환경변수는 다음과 같이 사용 ${{ env.DATE }}

 

어제 $GITHUB_ENV 자리에 엄한걸 넣었다가 안되었던것이었다 ㅎㅎ

강사님께서 정말 감사하게도 환경변수 만들기를 못하고 있었다는걸 기억하고 오늘 알려주셨다 github action이 자료도 많이 않아서 조금 막막했는데 한줄기 빛 같았다 

 

또 몇가지 팁을 알려주셨는데 

cicd yml에서 cli 명령어를 그냥 run에 냅다 치지말고 가급적이면 marketplace에서 패키지를 사용하라고 하셨다

이유를 생각해봤는데 코드가 길어지면 가독성도 떨어져 뭘 하고자하는지 잘 안보이기 때문인 것 같다 

수정중 잘못건드려서 오류가 날수도 있구 ..

 

+ 바뀔수있는 변수들은 시크릿 처리하기 (repo 이름 등..)

 

👇 eks-cicd.yml

 

GitHub - gymin97/dev-eks: eks github action 연습

eks github action 연습. Contribute to gymin97/dev-eks development by creating an account on GitHub.

github.com

 

사용한 marketplace

kubectl - https://github.com/marketplace/actions/kubectl-eks

 

kubectl-eks - GitHub Marketplace

'kubectl' for eks

github.com

s3 copy - https://github.com/marketplace/actions/s3-cp

 

S3 cp - GitHub Marketplace

AWS S3 cp

github.com

 

오늘의 회고

  • 오늘은 어제한 내용을 바탕으로 팀플로 eks-cicd yml을 만들어보았다.. 쉽겠거니~ 했는데 쉽지않았다 ㅎㅎ 역시 실습할때 시간이 제일 빨리가는것 같다
  • 내일부터는 세미프로젝트 주제를 정하고 큰 윤곽을 만들어간다~ 프로젝트를 진행하며 배우는게 많을것같아서 기대된다!

'Cloud > Cloud 공부일기' 카테고리의 다른 글

Day 68 - AWS 3tier (django 이용)  (0) 2022.04.18
Day 67 - CICD (eks)  (0) 2022.04.15
Day 65 - CICD  (0) 2022.04.13
Day 64 - Cloud network IAM, CICD  (0) 2022.04.12
Day 63 - Cloud network  (0) 2022.04.11
Comments