플로우 실행용 이미지 구성
CI/CD로 실행되는 플로우가 사용하는 Docker 이미지를 변경하고, 사용자 지정 이미지·오프라인 환경·Red Hat UBI 9 Minimal 하드닝 이미지를 구성하는 방법을 설명합니다.
CI/CD로 실행되는 플로우는 Docker 이미지 안에서 실행됩니다. 기본적으로 GitLab은 플로우에 필요한 도구와 네트워크 보호 기능이 포함된 이미지를 제공합니다. 프로젝트 종속성을 추가하거나, 컴플라이언스 요구 사항을 충족하거나, 오프라인 환경에서 플로우를 실행하기 위해 기본 이미지를 사용자 지정 이미지 또는 하드닝된 이미지로 교체할 수 있습니다. 기본 Docker 이미지 변경 # CI/CD로 실행되는 모든 플로우는 GitLab이 제공하는 Docker 이미지를 사용합니다. 이 Docker 이미지는 Anthropic Sandbox Runtime( srt ) 을 사용하여 네트워크 보호를 자동으로 포함합니다. 특정 종속성이나 도구가 필요한 복잡한 프로젝트가 있는 경우 Docker 이미지를 변경할 수 있습니다. 기본 Docker 이미지를 변경하려면 agent-config.yml 파일에 다음 구성을 추가합니다: image: YOUR_DOCKER_IMAGE 예를 들면 다음과 같습니다: Python project Node.js project image: python:3.11-slim image: node:20-alpine 네트워크 보호 추가 # 이미지에서 네트워크 보호를 사용하려면 원하는 버전의 srt 를 Docker 이미지에 추가합니다: # Install srt sandboxing with cache clearing and verification ARG SANDBOX_RUNTIME_VERSION=0.0.20 RUN npm cache clean --force && \ npm install -g @anthropic-ai/sandbox-runtime@${SANDBOX_RUNTIME_VERSION} && \ test -s "$(npm root -g)/@anthropic-ai/sandbox-runtime/package.json" && \ srt --version SRT와 이를 사용자 지정 이미지에 설치하는 방법에 대한 자세한 내용은 원격 실행 환경 샌드박스 를 참조하세요. 사용자 지정 이미지 사용 # 사용자 지정 Docker 이미지를 사용하는 경우, 에이전트가 올바르게 동작하도록 다음 명령을 사용할 수 있는지 확인하세요: git @gitlab/duo-cli 와 호환되는 Node.js 버전의 npm . 자세한 내용은 GitLab Duo CLI 전제 조건 을 참조하세요. 대부분의 베이스 이미지는 이러한 명령을 기본적으로 포함합니다. 그러나 최소 구성 이미지( alpine 변형 등)는 명시적으로 설치해야 할 수 있습니다. 필요한 경우 설정 스크립트 구성 에서 누락된 명령을 설치할 수 있습니다. Note GitLab 18.9 이하에서는 사용자 지정 이미지의 최신 git 버전에서 플로우가 실패할 수 있는 알려진 이슈(587996) 가 있습니다. 이 이슈는 @gitlab/duo-cli 버전 8.71.0에서 해결되었습니다. @gitlab/duo-cli 버전 8.71.0 이하를 사용하는 경우, 최신 Git 버전에