Communitygithub.com

wan-huiyan/cloud-run-batch-experiment

GCP Cloud Run Jobs에서 배치 Python 실험을 배포 및 실행합니다 — causal-impact-campaign의 보조 도구입니다.

cloud-run-batch-experiment란 무엇인가요?

이 스킬은 개발자나 데이터 과학자가 GCP Cloud Run Jobs를 사용하여 Python 기반 배치 실험을 손쉽게 배포하고 실행할 수 있도록 지원합니다. 주로 'causal-impact-campaign' 같은 프로젝트와 함께 사용되며, 실험 코드를 컨테이너화하고 Cloud Run Jobs에 등록하여 필요할 때마다 실행하거나 스케줄링할 수 있습니다. Cloud Run Jobs는 서버리스 환경에서 작업별로 리소스를 격리하고 자동으로 확장 및 종료되므로, 인프라 관리 부담 없이 반복적인 데이터 처리나 모델 평가 등에 적합합니다. 이 스킬은 gcloud CLI, Docker, Python 스크립트를 활용하며, 사용자는 자신의 실험 로직을 포함한 Docker 이미지를 빌드하고 Cloud Run Jobs로 배포하는 일련의 과정을 간단한 명령어로 수행할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add wan-huiyan/cloud-run-batch-experiment

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

cloud-run-batch-experiment은(는) 무엇을 하나요?

GCP Cloud Run Jobs에서 배치 Python 실험을 배포 및 실행합니다 — causal-impact-campaign의 보조 도구입니다.

개요

이 스킬은 Google Cloud Run Jobs를 사용하여 Python 기반 배치 실험을 서버리스 환경에서 실행할 수 있도록 해줍니다. 실험 코드를 컨테이너화하고 Cloud Run Jobs에 배포하면, 수동 인프라 관리 없이도 안정적이고 확장 가능한 배치 작업을 수행할 수 있습니다.

주요 기능

  • Python 스크립트를 Docker 이미지로 빌드
  • Cloud Run Jobs에 작업 등록 및 실행
  • 작업 로그 확인 및 모니터링
  • 스케줄링 또는 수동 트리거 지원

사전 요구사항

  • GCP 프로젝트가 설정되어 있어야 함
  • gcloud CLI 설치 및 인증 완료
  • Docker 설치 및 실행 가능해야 함
  • 필요한 Python 패키지가 requirements.txt에 정의되어 있어야 함

사용 방법

1. 실험 코드 준비

다음 구조로 디렉토리를 준비하세요:

my-experiment/
├── main.py
├── requirements.txt
├── Dockerfile
└── .dockerignore

2. Docker 이미지 빌드 및 푸시

docker build -t gcr.io/[PROJECT_ID]/my-experiment:latest .
docker push gcr.io/[PROJECT_ID]/my-experiment:latest

3. Cloud Run Jobs 생성 및 실행

gcloud run jobs create my-experiment-job \
  --image gcr.io/[PROJECT_ID]/my-experiment:latest \
  --region us-central1 \
  --tasks 1 \
  --max-retries 0 \
  --memory 512Mi \
  --cpu 1

gcloud run jobs execute my-experiment-job --region us-central1

예제

main.py 예제:

def main():
    # 실험 로직 작성
    print("Hello from Cloud Run Jobs!")

if __name__ == "__main__":
    main()

Dockerfile 예제:

FROM python:3.11-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install -r requirements.txt

COPY . .

CMD ["python", "main.py"]

참고 사항

  • Cloud Run Jobs는 작업이 완료되면 자동으로 종료되므로 비용 효율적입니다.
  • 환경 변수는 --set-env-vars 플래그를 통해 전달할 수 있습니다.
  • 로그는 Cloud Logging에서 확인 가능합니다.

관련 프로젝트

관련 스킬