카카오 클라우드의 컨테이너 레지스트리를 만들자.
도커 이미지를 빌드해보자.
이미지를 올려보자.
kr-centeal-2
사용자 엑세스키 준비
프로그램 설치
여기선 centos에 git , docker 설치한다.
yum install git -y
yum install docker -y
비공개
tutorial
태그 덮어쓰기 가능
이미지 스캔 자동
1
mkdir -p ~/Downloads/kakaocloud-library
cd ~/Downloads/kakaocloud-library
pwd
/root/Downloads/kakaocloud-library
2
git clone -b kakaocloud-library https://github.com/kakaoenterprise/kakaocloud-tutorials
3
cd kakaocloud-tutorials
4
예제 프로젝트 파일 확인
ls
예제 프로젝트 빌드
1
프로젝트를 빌드하기 위해 Docker daemon이 실행 상태인지 확인합니다.
다음 명령어 이후 에러 메시지가 뜬다면, Docker desktop을 통해 Docker daemon을 실행합니다.
MacOS 환경에서는 Docker desktop이 실행되면, Docker daemon도 자동으로 같이 실행됩니다.
docker info
에러 예제
Client:
Version: ...
Context: ...
...
...
Server:
ERROR: Cannot connect to the Docker daemon at unix:///Users/kakao_cloud/.docker/run/docker.sock. Is the docker daemon running?
errors pretty printing info
2
서버 프로젝트를 linux/amd64환경으로 빌드합니다.
docker build -t kakaocloud-library-server:latest --platform linux/amd64 -f ./server/deploy/Dockerfile ./server
(완료 될때까지 기다려 주세요~ 10분)
3
빌드된 서버 컨테이너 이미지를 카카오클라우드 환경에 맞게 태그를 설정합니다.
docker tag kakaocloud-library-server:latest {PROJECT_NAME}.kr-central-
2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-server:latest
docker tag kakaocloud-library-server:latest kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-server:latest
PROJECT_NAME
컨테이너 레지스트리를 생성한 카카오클라우드 콘솔의 프로젝트 이름
REPOSITORY_NAME
컨테이너 레지스트리에서 생성한 리포지토리의 이름
4
클라이언트 프로젝트를 linux/amd64환경으로 빌드합니다
docker build -t kakaocloud-library-client:latest --platform linux/amd64 -f ./client/deploy/Dockerfile ./client
(10분 걸림)
5
빌드된 클라이언트 컨테이너 이미지를 카카오클라우드 환경에 맞게 태그를 설정합니다.
docker tag kakaocloud-library-client:latest {PROJECT_NAME}.kr-central-2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-client:latest
docker tag kakaocloud-library-client:latest kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-client:latest
컨테이너 레지스트리 로그인
1
로컬 머신에 사용자 정보를 입력하여 카카오클라우드 컨테이너 레지스트리에 로그인합니다.
docker login {PROJECT_NAME}.kr-central-2.kcr.dev --username {ACCESS_KEY} --password {ACCESS_SECRET_KEY}
docker login kakao-infraeng-dev-pz.kr-central-2.kcr.dev --username {ACCESS_KEY} --password {ACCESS_SECRET_KEY}
2
로그인 결과 확인합니다
Login Succeeded!
컨테이너 이미지 업로드
1
서버 컨테이너 이미지를 업로드 합니다.
docker push {PROJECT_NAME}.kr-central-2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-server:latest
docker push kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-server:latest
2
클라이언트 컨테이너 이미지를 업로드합니다.
docker push {PROJECT_NAME}.kr-central-2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-client:latest
docker push kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-client:latest
결과 확인
1
콘솔
Container Registry 메뉴에서 생성한 tutorial Repository에 접속
2
이미지 이름 확인.
kakaocloud-library-client
kakaocloud-library-server
자동 스캔
3
업로드된 이미지를 다운로드.
로컬 머신에 입력하여 이미지를 설치한다.
서버이미지
docker pull {PROJECT_NAME}.kr-central-2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-server:latest
docker pull kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-server:latest
클라이언트 이미지
docker pull {PROJECT_NAME}.kr-central-2.kcr.dev/{REPOSITORY_NAME}/kakaocloud-library-server:latest
docker pull kakao-infraeng-dev-pz.kr-central-2.kcr.dev/tutorial/kakaocloud-library-server:latest
4
이미지 설치 확인합니다
docker images
https://docs.kakaocloud.com/tutorial/dev-ops/cr-basic
https://brunch.co.kr/@topasvga/3651
감사합니다.