728x90
반응형
현재에는 yml 파일에 latest 로 태그가 들어가기 때문에 롤백을 실행할 수 없다. 이미지에 고유 식별자가 없으면 어떤 변경이 언제 이루어졌는지 추적할 수 없고 오류진단과 디버깅을 쉽게 할 수 없다. 또한 새롭게 배포가 된 이후에 에러가 발생했을 때 안정적인 버전으로 빠르게 복귀가 필요한 경우도 종종 발생한다.
기본적으로 태그를 여러개 등록이 가능하기 때문에 유니크한 정보값을 생성을 위해 timestamp 를 사용하고 롤백을 위한 다중 태그를 등록하자.
# yml 파일
env:
# IMAGE_TAG: ${{ vars.NCP_CONTAINER_REGISTRY }}/lion-app:latest
IMAGE: ${{ vars.NCP_CONTAINER_REGISTRY }}/lion-app
IMAGE_TAG: ${{ vars.NCP_CONTAINER_REGISTRY }}/lion-app:latest
...
- name: Get current timestamp
id: timestamp
run: echo "timestamp=$(date '+%s')" >> "$GITHUB_OUTPUT"
- name: Build and Export
uses: docker/build-push-action@v4
with:
context: lion_app # location where image will be built
push: true # This indicates push event
tags: ${{ env.IMAGE_TAG }},"${{ env.IMAGE }}:${{ steps.timestamp.outputs.timestamp }}"
git push 이후에 NCP 로 push 가 잘 이루어 졌는제 확인
728x90
반응형
'Dev. > Cloud' 카테고리의 다른 글
AWS: Access Key, CLI and SDK (0) | 2023.11.09 |
---|---|
AWS: IAM (Identity and Access Management) (0) | 2023.11.08 |
[Cloud] CD - NCP: Load balancer (0) | 2023.08.22 |
[Cloud]배포 AWS: Secrets Manager (0) | 2023.08.17 |
[Cloud] 배포 - NCP : 클라우드 서버에서 DB 띄우기: NoSQL (0) | 2023.08.15 |
댓글