GitHub Actions로 로컬 레지스트리 사용하기
GitHub Actions로 로컬 레지스트리 사용하기 (Local registry with GitHub Actions)
테스트 목적으로 이미지를 push할 로컬 레지스트리를 만들어야 할 수 있어요. GitHub Actions의 services로 로컬 레지스트리 컨테이너를 띄울 수 있어요.
출처: 문서
본문
다음 워크플로는 registry:3 이미지로 로컬 레지스트리를 서비스로 띄우고, 그곳으로 이미지를 빌드·push해요:
name: ci
on:
push:
jobs:
docker:
runs-on: ubuntu-latest
services:
registry:
image: registry:3
ports:
- 5000:5000
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
with:
driver-opts: network=host
- name: Build and push to local registry
uses: docker/build-push-action@v7
with:
push: true
tags: localhost:5000/name/app:latest
- name: Inspect
run: |
docker buildx imagetools inspect localhost:5000/name/app:latest
driver-opts: network=host로 Buildx가 로컬 레지스트리(localhost:5000)에 접근할 수 있게 하고, imagetools inspect로 push된 매니페스트를 확인해요. 이 방식은 레지스트리 push 흐름을 실제 환경 없이 테스트할 때 유용해요.