Github Package 배포 해보기

gimseonjin616·2022년 11월 25일

간단 실습

목록 보기
1/1

들어가며

Github에서는 코드 및 라이브러리 공유를 위한 Packages 서비스를 제공한다.

제공하는 패키지 관리자 툴은 아래와 같다.

(Docker도 있고 npm도 있네!)

이 Github Packages를 사용하면 쉽게 내가 만든 라이브러리, 코드, 프레임워크들을 공유할 수 있다.

우리 팀에서도 Docker를 활용하여 여러 패키지를 공유하고 있기 때문에 나도 간단하게 실습해보려고 한다.

1. Token 발행하기!

Github에서 제공하는 거의 모든 기능은 Token을 필요로 한다. 따라서 우리도 Github Packages 용 Token을 발급받아 보자!!

  • Settings > Developer Settings > Personal access tokens로 이동하여 토큰 발급 버튼을 클릭합니다.

  • 그리고 아래 packages 관련된 권한을 체크한 후 만들어줍니다!!

발급받은 토큰을 잘 복사해두고 제대로 발급됐는 지 확인해봅니다.

확인하는 방법은 packages의 주소인 ghcr.io에 로그인 해보는 것으로 아래 명령어를 cmd or teminal에 입력해봅니다.

docker login ghcr.io -u username

// password에는 아까 발급받은 토큰을 입력해주시면 됩니다.

아래와 같이 로그인 성공이 뜨면 토큰이 잘 발급된 것입니다.

2. Docker 이미지 PUSH & PULL

이제 Github Packages에 올릴 도커 이미지를 준비합니다.

저는 이전에 만든 사서 봇 관리자 페이지를 재활용하겠습니다.

우선 Dockerfile을 만든 후, 아래 조건에 맞게 docker image를 만듭니다.

docker build -t ghcr.io/OWNER/IMAGE_NAME VERSION

저는 아래와 같이 명령어를 입력했습니다.

도커 이미지 생성이 완료가 되면 그대로 push 요청을 보내면 됩니다.

docker push ghcr.io/OWNER/IMAGE_NAME

저는 아래와 같이 입력했습니다.

그리고 github package 탭으로 이동하면 제가 만든 패키지가 올라온 것을 볼 수 있습니다.

사용법도 간단합니다!! 그냥 Pull 받아오시면 됩니다!!

docker pull ghcr.io/OWNER/IMAGE_NAME:VERSION

실제로 packages 탭에서도 이쁘게 알려줍니다

실제로 이렇게 하면 제가 만든 도커 이미지 파일을 공유할 수 있어서 Dockerfile이나 코드를 통해 공유했을 때 걸리는 시간을 획기적으로 줄여줄 수 있습니다!!

따라서 "어 우리팀은 docker를 쓰는데 dockerfile을 넘겨주고 build 시키는 과정이 불편하다!" 하시면 써보셔도 괜찮을 거 같습니다!!!

profile
백엔드 개발자

0개의 댓글