🔑 Docker Image를 Git repo로 관리하기
GHCR에 이미지를 푸시하려면 인증이 필요하다. 이를 위해 Personal Access Token(PAT)을 생성하고 설정해야 한다.
GitHub 계정의 Settings > Developer settings > Personal access tokens로 이동한다.
Generate new token을 클릭하고, 권한을 선택
write:packages
read:packages
delete:packages
(선택 사항)
토큰을 생성하고 안전한 곳에 저장 후
로컬 환경에서 다음 명령어로 Docker에 로그인한다.
$ docker login ghcr.io -u "gitHub아이디"
Password: #<Pesonal Access Token> 입력
Dockerfile이 있는 디렉토리에서 다음 명령어로 이미지를 빌드하고 태깅한다.
docker tag "이미지ID" ghcr.io/"gitHub아이디"/"repo이름"/"이미지:태그"
위에서 빌드(태깅)한 이미지를 GHCR에 푸시한다.
docker push ghcr.io/"gitHub아이디"/"repo이름"/"이미지:태그"
푸시가 완료되면, 해당 이미지는 GitHub의 Packages 섹션에서 확인할 수 있다.
GHCR에 푸시된 이미지는 다음 명령어로 사용할 수 있다.
docker pull ghcr.io/OWNER/REPOSITORY/IMAGE_NAME:TAG
또한, Kubernetes 등의 오케스트레이션 도구에서 해당 이미지를 참조하여 배포할 수 있다.
이러한 과정을 통해 Docker 이미지를 GitHub 팀 저장소에서 효과적으로 관리하고 배포할 수 있다.
또한, 추가적인 자동화나 보안 설정이 필요하다면, GitHub Actions의 다양한 기능과 GHCR의 접근 제어 설정을 활용할 수 있다.