GitLab AI Gateway 설치
Docker, Helm 차트, NGINX 등 다양한 방법으로 GitLab AI Gateway를 설치하고 구성하는 방법을 설명합니다.
AI Gateway 는 AI 네이티브 GitLab Duo 기능에 대한 액세스를 제공하는 두 서비스의 조합입니다. AI Gateway 서비스 GitLab Duo Agent Platform 서비스 인증과 JSON 웹 토큰(JWT) # GitLab Duo 기능에 액세스하기 위해 AI Gateway는 JWT를 사용하여 요청이 GitLab 인스턴스의 인증된 사용자에게서 왔는지 확인합니다. GitLab 인스턴스가 토큰을 요청하면 서비스는 해당 요청을 인가하는 수명이 짧은 서명 토큰을 발급합니다. AI Gateway를 직접 호스팅하는 경우 서명 키 페어를 생성하고 그 키를 환경 변수로 서비스에 전달해야 합니다. 각 서비스는 자체 키 페어를 사용합니다. AI Gateway는 GitLab Duo Code Suggestions, GitLab Duo Chat과 같은 기능에 AIGW_SELF_SIGNED_JWT__SIGNING_KEY 와 AIGW_SELF_SIGNED_JWT__VALIDATION_KEY 를 사용합니다. GitLab Duo Agent Platform 서비스는 DUO_WORKFLOW_SELF_SIGNED_JWT__SIGNING_KEY 와 DUO_WORKFLOW_SELF_SIGNED_JWT__VALIDATION_KEY 를 사용합니다. 각 페어의 키는 다음 역할을 합니다. 서명 키는 서비스가 발급하는 토큰에 서명합니다. 검증 키는 키 교체 중에 토큰을 검증하여, 이전 키로 서명된 토큰이 만료될 때까지 계속 유효하도록 합니다. 한 페어의 두 키는 모두 PEM 형식의 RSA 2048비트 개인 키여야 합니다. 이 키가 없으면 서비스는 토큰에 서명할 수 없고 요청은 토큰 생성 오류로 실패합니다. Docker로 설치 # GitLab AI Gateway Docker 이미지는 필요한 모든 코드와 의존성을 단일 컨테이너에 담고 있습니다. 사전 요구 사항: Docker 같은 Docker 컨테이너 엔진을 설치합니다. 네트워크에서 액세스할 수 있는 유효한 호스트명을 사용합니다. localhost 는 사용하지 않습니다. linux/amd64 아키텍처 기준으로 약 340MB(압축) 공간과 최소 512MB의 RAM을 확보합니다. 컨테이너가 ai_gateway 와 duo-workflow-service 서비스를 위해 최소 2개의 CPU에 액세스할 수 있도록 합니다. JWT 서명 키를 생성합니다. GitLab Duo Agent Platform 용: openssl genrsa -out duo_workflow_jwt.key 2048 openssl genrsa -out duo_workflow_validation.key 2048 AI Gateway 용(Duo Chat과 같은 기능에 필요): openssl genrsa -out aigw_signing.key 2048 openssl genrsa -out aigw_validation.key 2048 [!warning] 생성된 키 파일은 모두 안전하게 보관하고 공개적으로 공유하지 않습니다. 이 키는 JWT 서명에 사용되므로 민감한 자격 증명으로