View a markdown version of this page

MCP 서버 Docker 이미지 빌드 단계 - AWS의 생성형 AI 애플리케이션 빌더

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

MCP 서버 Docker 이미지 빌드 단계

AWS에서 생성형 AI Application Builder와 함께 MCP(모델 컨텍스트 프로토콜) 서버를 사용하려면 첫 번째 단계로 프라이빗 Amazon ECR 리포지토리에 빌드되고 저장된 Docker 이미지가 필요합니다.

참고

현재 Amazon Bedrock AgentCore 런타임에 배포된 기존 MCP 서버는 GAAB로 내보낼 수 없습니다. MCP 서버를 GAAB를 통해 생성된 에이전트에 연결하려면 GAAB를 통해 생성해야 합니다.

1단계: MCP 서버 생성

먼저 MCP 서버 구현을 준비해야 합니다. MCP 서버 생성에 대한 자세한 지침은 Amazon Bedrock AgentCore 개발자 안내서 - MCP 서버 생성을 참조하세요.

다음과 같은 프로젝트 구조를 권장합니다.

.
├── __init__.py
├── extras/
│   ├── extra_dependencies.py
│   ├── Dockerfile
├── requirements.txt
└── server.py <-- Server Entry point

Dockerfile 구조의 경우 다음 예와 유사한 형식을 사용하는 것이 좋습니다.

FROM ghcr.io/astral-sh/uv:python3.13-bookworm-slim WORKDIR /app # All environment variables in one layer ENV UV_SYSTEM_PYTHON=1 \ UV_COMPILE_BYTECODE=1 \ UV_NO_PROGRESS=1 \ PYTHONUNBUFFERED=1 \ DOCKER_CONTAINER=1 \ AWS_REGION=us-east-1 \ AWS_DEFAULT_REGION=us-east-1 COPY requirements.txt requirements.txt # Install from requirements file RUN uv pip install -r requirements.txt RUN uv pip install aws-opentelemetry-distro>=0.10.1 # Signal that this is running in Docker for host binding logic ENV DOCKER_CONTAINER=1 # Create non-root user RUN useradd -m -u 1000 bedrock_agentcore USER bedrock_agentcore EXPOSE 9000 EXPOSE 8000 EXPOSE 8080 # Copy entire project (respecting .dockerignore) COPY . . # Use the full module path CMD ["opentelemetry-instrument", "python", "-m", "server"]

2단계: 로컬에서 MCP 서버 테스트

AWS에 배포하기 전에 MCP 서버를 로컬에서 테스트하여 예상대로 작동하는지 확인하는 것이 중요합니다. 로컬 테스트에 대한 자세한 지침은 Amazon Bedrock AgentCore 개발자 안내서 - 로컬에서 MCP 서버 테스트를 참조하세요.

3단계: Amazon ECR에 배포

MCP 서버가 로컬에서 생성 및 테스트되면 다음 단계에 따라 Amazon ECR에 배포합니다.

  1. 최신 버전의 AWS CLI 및 Docker가 설치되어 있는지 확인합니다. 자세한 내용은 Amazon ECR 시작하기를 참조하세요.

  2. 인증 토큰을 검색하고 Docker 클라이언트를 레지스트리에 인증합니다. AWS CLI를 사용합니다.

    aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin <account-id>.dkr.ecr.us-east-1.amazonaws.com
  3. 다음 명령을 사용하여 Docker 이미지를 빌드합니다. Docker 파일을 처음부터 빌드하는 방법에 대한 자세한 내용은 Docker 설명서를 참조하세요. 이미지가 이미 빌드된 경우이 단계를 건너뛸 수 있습니다.

    docker build -t <repository-name> .
  4. 빌드가 완료되면 이미지를이 리포지토리로 푸시할 수 있도록 이미지에 태그를 지정합니다.

    docker tag <repository-name>:latest <account-id>.dkr.ecr.us-east-1.amazonaws.com/<repository-name>:latest
  5. 다음 명령을 실행하여이 이미지를 새로 생성된 AWS 리포지토리로 푸시합니다.

    docker push <account-id>.dkr.ecr.us-east-1.amazonaws.com/<repository-name>:latest

전체 배포 지침은 Amazon Bedrock AgentCore 개발자 안내서 - AWS에 MCP 서버 배포를 참조하세요.

4단계: GAAB에서 ECR URI 사용

Docker 이미지를 Amazon ECR에 성공적으로 푸시한 후 ECR 콘솔에서 이미지 URI를 복사합니다. AWS의 생성형 AI Application Builder 배포 마법사를 통해 MCP 서버를 배포할 때이 URI를 사용합니다.