티스토리 뷰

반응형

Docker를 이용한 AI 에이전트 컨테이너화 및 배포

AI 시스템을 개발한 후에는 언제 어디서든 실행할 수 있도록 배포해야 합니다.
이번 글에서는 Docker를 활용하여 CrewAI + FastAPI 기반 AI 에이전트를 컨테이너화하고,
배포하는 방법
을 실습합니다.


🔹 1. Docker를 활용한 AI 배포의 필요성

📌 Docker란?

Docker는 애플리케이션을 컨테이너로 패키징하여 실행 환경을 통일할 수 있는 기술입니다.
이를 활용하면 AI 시스템을 어떤 환경에서도 동일하게 실행 가능하게 만들 수 있습니다.

Docker 기반 AI 배포의 장점

  • 어떤 서버에서도 동일한 실행 환경 유지
  • 설치 과정 없이 실행 가능 (패키지 의존성 해결)
  • 클라우드 및 로컬 환경에서 실행 가능
  • 배포 및 유지보수 용이 (CI/CD 연동 가능)

Docker를 활용한 AI 시스템 배포 흐름

1️⃣ FastAPI + CrewAI 기반 AI 서비스 개발  
2️⃣ Docker 컨테이너로 패키징  
3️⃣ 클라우드 (AWS, GCP, Railway) 또는 로컬에서 실행  

💡 목표: AI 에이전트를 Docker 컨테이너화하고, 쉽게 배포 및 실행 가능하도록 구성


🔹 2. Docker 환경 설정 및 Dockerfile 작성

1. Docker 설치 확인

Docker가 설치되어 있는지 확인합니다.

docker --version

설치되지 않았다면 공식 사이트에서 다운로드:
👉 Docker 공식 다운로드


2. 프로젝트 폴더 구조

ai-agent-project/
│── app/
│   ├── main.py        # FastAPI 서버 실행 파일
│   ├── crewai_agent.py  # CrewAI 기반 AI 에이전트 설정
│── Dockerfile         # Docker 컨테이너 설정 파일
│── requirements.txt   # Python 패키지 목록
│── .dockerignore      # Docker 빌드 제외 파일

3. requirements.txt 생성

 

FastAPI 및 CrewAI 관련 패키지를 정리합니다.

fastapi
uvicorn
crewai
ollama

4. Dockerfile 작성 (AI 컨테이너 설정)

반응형

🔹 Dockerfile (FastAPI + CrewAI 환경 설정)

# 베이스 이미지 설정 (Python 3.12 사용)
FROM python:3.12

# 작업 디렉토리 생성
WORKDIR /app

# 필수 패키지 설치
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# 앱 코드 복사
COPY . .

# FastAPI 서버 실행
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

이 Dockerfile의 주요 역할

  • Python 3.12 환경을 사용
  • 필요한 패키지(requirements.txt)를 설치
  • FastAPI 서버 실행

🔹 3. Docker 컨테이너 빌드 및 실행

1. Docker 이미지 빌드

docker build -t ai-agent .

빌드 성공 예제

Successfully built ai-agent

2. Docker 컨테이너 실행

docker run -p 8000:8000 ai-agent

실행 결과

  • AI API가 http://localhost:8000에서 실행됨
  • React 프론트엔드와 연동 가능

3. 실행 중인 컨테이너 확인

docker ps

컨테이너 중지

docker stop <컨테이너_ID>

🔹 4. Docker 컨테이너를 클라우드에 배포

1. Docker Hub에 업로드

클라우드에서 실행하려면 Docker Hub 또는 클라우드 서비스를 활용합니다.

🔹 Docker Hub 로그인

docker login

🔹 Docker Hub에 이미지 푸시

docker tag ai-agent mydockerhub/ai-agent
docker push mydockerhub/ai-agent

Docker Hub에서 실행 가능

docker run -p 8000:8000 mydockerhub/ai-agent

2. Railway에 배포 (서버리스 환경)

Railway는 Docker 기반 배포를 지원하는 클라우드 플랫폼입니다.

🔹 Railway CLI 설치 및 로그인

npm install -g railway
railway login

🔹 Railway에 Docker 컨테이너 배포

railway up

📌 배포 후 생성된 URL에서 AI API 실행 가능!


🎯 5. Docker 기반 AI 배포 정리

Docker를 활용하면 AI 시스템을 컨테이너로 패키징할 수 있다.
FastAPI + CrewAI를 Docker로 배포하면 어디서든 실행 가능하다.
Docker Hub 또는 Railway를 활용하여 쉽게 클라우드에 배포 가능하다.
React 프론트엔드와 연동하면 AI 웹 서비스 구축이 가능하다.


🚀 다음 글 미리보기:

👉 "Ollama 기반 AI 에이전트 성능 최적화 및 유지보수"
👉 AI 시스템의 속도를 개선하고, 유지보수 전략을 배워봅니다.

 

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함
반응형