본문 바로가기
Cloud Side/Platform > Azure

[Azure] AKS를 이용해서 서버 배포하기 (1) 컨테이너 레지스트리 만들기

by developerBeluga 2022. 8. 2.
728x90
반응형

 

 

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-registry/container-registry-get-started-portal?tabs=azure-cli 

 

빠른 시작 - 포털에서 레지스트리 만들기 - Azure Container Registry

Azure Portal을 사용하여 프라이빗 Azure 컨테이너 레지스트리를 만드는 방법을 빠르게 알아봅니다.

docs.microsoft.com

https://docs.microsoft.com/ko-kr/azure/container-instances/tutorial-docker-compose

 

자습서 - Docker Compose를 사용하여 다중 컨테이너 그룹 배포 - Azure Container Instances

Docker Compose를 사용하여 다중 컨테이너 애플리케이션을 빌드 및 실행한 다음, 애플리케이션을 Azure Container Instances로 가져옵니다.

docs.microsoft.com

https://docs.microsoft.com/ko-kr/azure/aks/tutorial-kubernetes-prepare-acr?tabs=azure-cli 

 

Azure의 Kubernetes 자습서 - 컨테이너 레지스트리 만들기 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 Azure Container Registry 인스턴스를 만들고 애플리케이션 예제 컨테이너 이미지를 업로드합니다.

docs.microsoft.com

 

 

 

 

728x90
반응형

댓글