GitHub의 Container Registry에 Docker 이미지를 게시하는 방법

여름 인턴십 기간 동안 GitHub Actions를 사용하여 GitHub의 Container Registry에 도커 이미지를 게시하는 방법을 배웠습니다. 공유하는 것이 좋을 것 같아서 블로그 게시물을 작성했습니다.

1단계: 새 리포지토리 생성



이 자습서에서는 저장소 이름을 "publish-to-gcr"로 지정합니다. 리포지토리의 이름을 지정한 후에는 리포지토리가 공용인지 확인해야 합니다.



2단계: 파일 만들기



원하는 파일로 모든 프로그램을 만들 수 있지만 제 예에서는 app.js 파일을 만들겠습니다. app.js 파일 내부에 "Hello, world!"라는 단어를 console.log하겠습니다.



3단계: 도커 파일 만들기



프로젝트의 루트에 다음 내용으로 Docker 파일을 생성했습니다.

FROM node:alpine
COPY . /app
WORKDIR /app
CMD node app.js




4단계: 작업 만들기



내 프로젝트의 루트에 .github/workflows 폴더를 만들었습니다. 그 안에 publish.yml라는 파일을 만들었습니다. 내 publish.yml 내부에 다음 코드를 작성했습니다(사용자 이름과 같은 일부 값을 바꿔야 함을 유의하십시오.

name: publish
on: [push]
jobs:
publish-hello-docker-image:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Login to GitHub Container Registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build the hello-docker Docker image
run: |
       docker build . --tag ghcr.io/deselikem/hello-docker-gcr-demo:latest
       docker run ghcr.io/deselikem/hello-docker-gcr-demo:latest
       docker push ghcr.io/deselikem/hello-docker-gcr-demo:latest


5단계: 변경 사항을 푸시하고 커밋하여 작업을 트리거합니다.



리포지토리의 작업 아이콘으로 이동합니다. 텍스트 편집기를 사용하여 만든 작업이 표시되어야 합니다. 모든 작업이 올바르게 완료되었으면 작업이 실행되었어야 하며 작업이 제대로 게시되었는지 확인하기 위해 수행한 모든 단계를 확인할 수 있습니다.



6단계: GitHub의 컨테이너 레지스트리에 게시된 패키지를 확인하세요!



리포지토리에서 아래로 스크롤하면 리포지토리와 연결된 패키지를 강조표시하는 섹션이 표시됩니다. 방금 만든 것이어야 합니다!





블로그 자습서보다 비디오 자습서를 선호하는 경우 따라할 수 있는 비디오 자습서를 만들었습니다. 확인 해봐!

좋은 웹페이지 즐겨찾기