0. Azure CLI 설치하기
brew update && brew install azure-cli
설치 후 az --version으로 설치 되었는지 확인하기
1. Azure Container Registry 만들기
저는 CLI 대신 포털을 이용해서 만들어주었습니다.
우선 Azure에 접속한 다음
Create a resource > Containers > Container Registry의 Create를 눌러주세요.
Resource group 이름과 Registry name 그리고 SKU를 Bascic(기본)으로 해주세요.
그 다음 Review + create (검토 + 만들기)를 눌러주시고 문제가 없다면 설정 검토한 후 만들기를 누르면 끝입니다.
2. 컨테이너 레지스트리에 로그인
az acr login --name <acrName>
ACR 인스턴스를 사용하기 위해 만들어 놓은 레지스트리에 로그인합니다.
acrName은 위에서 설정한 Registry name입니다.
혹시 please run 'az login' to setup account. 라는 문구가 나왔다면 차례대로 username에 계정 아이디를 password에는 계정 비밀번호를 넣어주면 해결.
컨테이너 레지스트리에 로그인 성공하면 위 캡쳐처럼 Login Succeeded가 나옵니다.
3. 레지스트리에 이미지 푸시
3-1. 단일 이미지일 경우
3-1-1. 컨테이너 이미지 태그 지정하기
컨테이너 이미지 태그를 지정하기 위해서는 loginServer를 알아야합니다.
az acr list --resource-group <groupName> --query "[].{acrLoginServer:loginServer}" --output table
혹시 기억이 나지 않는 분들은 위 코드를 입력하여 확인하시길 바랍니다.
아니면 Azure Dashboard > Container registries에서 생성한 레지스트리를 선택하여 오른쪽 상단에 있는 Login server를 확인하시는 방법도 있습니다.
docker tag <imageName>:<tag> <acrLoginServer>/<imageName2>:<tag>
//예시
docker tag kibm/schemekit:latest <acrLoginServer>/schemekit:v1
이렇게 터미널에 쳐주시면 컨테이너 이미지 태그를 지정할 수 있습니다.
하지만 여기에서 dockerImageName2는 / 뒤 이름만 써주시는 것입니다.
예시를 보시면 원래는 kibm/schemekit였다면 뒤에는 kibm 대신 loginServer를 넣어주는 것입니다.
docker images
태그가 적용되었는지 docker 명령어를 이용하여 확인합니다.
3-1-2. 레지스트리에 이미지 푸시
docker push <acrLoginServer>/<imageName2>:v1
위에서 잘 만든 이미지를 레지스트리에 푸시해줍니다.
3-2. docker-compose로 다중 컨테이너 그룹 배포일 경우
services:
schemekit:
image: <acrLoginServer>/schemekit:v1
...
...
먼저 기존의 Docker compose 파일을 수정합니다.
image 값에 Azure loginServer를 추가해주세요.
docker-compose up --build -d
그 다음 이미지를 빌드하고 실행시켜줍니다.
docker-compose push
잘 돌아간다면 애플리케이션을 Azure Container Instances에 배포하기 위해 푸시합니다.
이때 푸시하는데 몇 분 정도 걸릴 수 있습니다.
3-3. 레지스트리 이미지 확인하기
az acr repository list --name <acrName> --output table
위 코드를 이용해서 이미지 목록을 반환합니다.
이렇게 잘 나왔다면 완료!
참고
https://docs.microsoft.com/ko-kr/azure/container-instances/tutorial-docker-compose
https://docs.microsoft.com/ko-kr/azure/aks/tutorial-kubernetes-prepare-acr?tabs=azure-cli
'Cloud Side > Platform > Azure' 카테고리의 다른 글
[Azure] ERROR: A different object named 'x' already exists in clusters in your kubeconfig file. (0) | 2023.04.18 |
---|---|
[Azure] Kubernetes를 이용한 MSA 배포 셋팅 일대기 (0) | 2023.04.14 |
[Azure] AKS를 이용해서 서버 배포하기 (3) AKS에서 애플리케이션 실행 with.kompose (0) | 2022.08.05 |
[Azure] AKS Failed to pull image 오류해결 (0) | 2022.08.05 |
[Azure] AKS를 이용해서 서버 배포하기 (2) Kubernetes 클러스터 만들기 (0) | 2022.08.03 |
댓글