갬미의 성장일기
Day 66 - CICD (eks) 본문
오늘 배운 내용
- 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
사용한 marketplace
kubectl - https://github.com/marketplace/actions/kubectl-eks
s3 copy - https://github.com/marketplace/actions/s3-cp
오늘의 회고
- 오늘은 어제한 내용을 바탕으로 팀플로 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 |