컨테이너 레지스트리
플랫폼 사용 방법을 알게 되었으니 게임 서버를 컨테이너화해야 합니다. 게임 서버를 배포할 때 접근할 수 있도록 컨테이너 이미지를 저장할 장소가 필요합니다.
그래서 Edgegap 컨테이너 레지스트리를 만들었습니다. 이는 일반 공개 컨테이너 레지스트리처럼 작동하는 사설 관리형 컨테이너 저장소로, 보안 강화, 취약점 스캔 등 추가적인 이점이 있습니다! 고가용성과 대시보드 통합을 제공하므로 새로운 도구를 배우는 시간을 줄일 수 있고 서버는 항상 준비된 상태로 유지됩니다.
자격증명(크레덴셜) 얻기
이미지를 푸시하려면 먼저 레지스트리에 인증해야 하며, 이를 위해 자격증명이 필요합니다. 사이드바에서 컨테이너 레지스트리 탭을 서비스 섹션에서 찾아 자격증명을 요청하세요. 거기에서 레지스트리 접근을 요청할 수 있습니다.

화면 하단 상자에는 레지스트리에 연결하고 컨테이너 이미지를 푸시하는 데 필요한 모든 정보가 있습니다.

URL
레지스트리의 URL입니다. 로그인하고 이미지를 푸시할 때 이 값을 사용해야 합니다.
프로젝트
할당된 프로젝트의 이름입니다. 이미지 리포지토리 경로에 반드시 포함해야 합니다.
사용자 이름
레지스트리에 로그인할 때 사용할 사용자 이름입니다.
토큰
레지스트리에 로그인할 때 사용할 비밀번호입니다.
이제 선호하는 도구를 사용해 리포지토리에 로그인할 수 있습니다:
리눅스
명령 프롬프트(cmd)
파워셸(Powershell)
Docker 로그인 경고
다음을 따라 자격증명 저장소를 설정할 수 있습니다 이 설정. 이 경고는 Docker의 정상 동작임을 기억하세요.
이는 중요합니다 로봇 사용자 이름과 사설 리포지토리용 토큰이 이 경로에 있는 머신에서 base64로 인코딩되어 저장된다는 점을 이해하는 것이 $HOME/.docker/config.json. 이 파일에 접근할 수 있는 누구든지 base64 디코더로 로봇 계정 토큰을 쉽게 복호화할 수 있습니다. 환경이 docker login registry.edgegap.com 안전하고 이 파일에 대한 접근 권한이 제한되어 있는지 확인하세요.
이 파일에서 자격증명을 제거하려면 다음을 사용하면 됩니다 docker logout registry.edgegap.com 개인 이미지를 푸시하거나 풀할 때마다.
레지스트리에 이미지 푸시하기
프로젝트를 컨테이너화하는 데 도움이 필요하면 이 주제에 대한 문서 를 참조하여 시작하세요.
먼저 이미지에 레지스트리에 해당하는 태그를 추가해야 합니다. 그런 다음 레지스트리에 로그인되어 있으므로 페이지에서 찾은 URL과 프로젝트로 이미지를 푸시하면 됩니다:
저장소 허용량이 허용하는 한 원하는 만큼 이미지를 푸시하고 다른 리포지토리로 분리할 수 있습니다. 다만 이미지를 너무 많이 푸시하기 전에 "앱 템플릿(App templates)" 섹션을 읽어보시기 바랍니다!
그 후 페이지를 새로고침하면 해당 리포지토리를 찾을 수 있습니다.
동일 빌드 아티팩트를 여러 번 태깅(이미지 중복 푸시)
동일한 빌드 아티팩트를 두 번 푸시했는데 태그 값이 같다면 변경 사항이 발생하지 않습니다.
동일한 빌드 아티팩트를 두 번 푸시했지만 태그 값이 서로 다르다면 추가 저장 공간이 소비되지 않으며 레지스트리는 동일한 빌드 아티팩트를 가리키는 새 태그를 생성합니다.
이미지 관리하기
이미지를 최소한 하나 푸시한 후에는 동일한 페이지에서 리포지토리를 볼 수 있습니다.
해당 리포지토리 중 하나를 클릭하면 포함된 이미지가 아티팩트별로 그룹화되어 표시됩니다. 동일한 이미지를 서로 다른 두 태그로 태그하고 레지스트리에 푸시했다면 이를 동일한 아티팩트로 볼 수 있습니다.


위 그림에 태그된 이미지들은 1.0.1 및 1.0.2 동일한 아티팩트를 가지고 있습니다. 그러나 1.0.3태그된 이미지는 서로 다른 아티팩트를 가지고 있습니다.
아티팩트를 삭제하면 해당 아티팩트에 연결된 태그들도 삭제됩니다. 확인 대화상자는 이 작업으로 삭제될 모든 태그를 나열하여 필요한 리소스를 실수로 삭제하지 않도록 합니다.
API를 통해 빌드 아티팩트 삭제하기
대시보드 UI가 너무 느리거나 레지스트리 사용량을 제한 내로 유지하기 위해 오래된 빌드 아티팩트를 자동으로 삭제하는 자동화된 CI 파이프라인이 필요한 경우 컨테이너 레지스트리 API 사용을 고려하세요. 당사의 컨테이너 레지스트리 API 는 주어진 앱(이미지)에 대한 모든 태그를 나열하고 개별 태그를 삭제할 수 있게 합니다. 각 이미지 아티팩트(빌드)는 동시에 여러 태그(예: v1.1.0, dev, latest또는 그 외)와 연결될 수 있으므로 특정 아티팩트와 연결된 모든 태그를 삭제해야 Edgegap 컨테이너 레지스트리의 공간을 확보할 수 있습니다.
저장 공간 추가 요청하기
레지스트리 접근 요청이 승인되면 레지스트리에서 일정량의 저장 공간이 제공됩니다.
공간 사용량 표시 옆의 "저장 공간 추가 요청(Request more storage)" 버튼을 클릭하여 추가 공간을 요청할 수 있습니다.

직원(스태프)이 요청을 승인하면 이미지를 푸시할 수 있는 공간이 늘어납니다.
다음 단계
가이드로 애플리케이션을 컨테이너화하는 방법을 배우세요: Docker 시작하기.
마지막 업데이트
도움이 되었나요?

