Gordon의 능력
Gordon의 능력 (Gordon's capabilities)
Gordon이 Docker 워크플로를 처리하기 위해 결합하는 능력들을 설명해요. 무엇을 할 수 있고 어떤 도구를 쓰는지 정리해 드려요.
출처: 문서
본문
Docker Desktop 4.74.0 이상
Gordon은 Docker 워크플로를 처리하기 위해 여러 능력을 결합해요. 이 페이지는 Gordon이 무엇을 할 수 있고 어떤 도구를 쓰는지 설명해요.
핵심 능력
Gordon은 사용자 대신 동작을 취하기 위해 다섯 가지 능력을 사용해요:
- 특정 Docker 작업을 위한 전문화된 서브 에이전트
- 명령을 실행하는 셸 접근
- 파일을 읽고 쓰는 파일시스템 접근
- Docker 문서와 모범 사례의 지식 베이스
- 외부 리소스를 가져오는 웹 접근
내부 아키텍처
Gordon은 대부분의 작업을 처리하는 주 에이전트와 특정 워크플로를 위한 전문화된 서브 에이전트를 사용해요:
- 메인 에이전트: 모든 Docker 작업, 소프트웨어 개발, 컨테이너화, 일반 개발 작업 처리
- DHI 마이그레이션 서브 에이전트: Dockerfile을 Docker Hardened Images로 마이그레이션하는 전문화된 핸들러
메인 에이전트는 다음을 처리해요:
- Docker 자산 생성(Dockerfile, compose.yaml, .dockerignore)
- 이미지 크기를 줄이고 빌드 성능을 높이도록 Dockerfile 최적화
- Docker 명령 실행(ps, logs, exec, build, compose)
- 컨테이너 문제 디버깅과 구성 분석
- 여러 프로그래밍 언어로 코드 작성·리뷰
- 일반 개발 질문과 작업
DHI 마이그레이션을 요청하면 Gordon은 자동으로 DHI 마이그레이션 서브 에이전트에 위임해요.
셸 접근
Gordon은 승인 후 사용자의 환경에서 셸 명령을 실행해요. Docker CLI 명령, 시스템 유틸리티, 애플리케이션별 도구를 포함해요.
Gordon이 실행할 수 있는 예시 명령:
$ docker ps
$ docker logs container-name
$ docker exec -it container-name bash
$ grep "error" app.log
명령은 사용자 권한으로 실행돼요. Gordon은 명시적으로 부여하지 않는 한 sudo에 접근할 수 없어요.
파일시스템 접근
Gordon은 사용자의 시스템에서 파일을 읽고 써요. 승인 없이 Dockerfile을 분석하고, 구성 파일을 읽고, 디렉터리를 스캔하고, 로그를 파싱할 수 있어요. 파일 쓰기는 승인이 필요해요.
작업 디렉터리가 파일 작업의 기본 맥락을 설정하지만, Gordon은 필요할 때 이 디렉터리 밖의 파일에도 접근할 수 있어요.
지식 베이스
Gordon은 검색 증강 생성(RAG)으로 Docker 문서, 모범 사례, 문제 해결 절차, 보안 권장 사항에 접근해요. 이렇게 해서 Gordon이 질문에 정확히 답하고, 오류를 설명하며, Docker 지침을 따르는 해결책을 제안할 수 있어요.
웹 접근
Gordon은 오류 메시지, 패키지 버전, 프레임워크 문서를 찾아보기 위해 외부 웹 리소스를 가져와요. 이것은 Docker 자체 문서 밖의 맥락이 필요한 문제를 디버깅할 때 도움이 돼요.
Gordon은 인증되거나 사적인 리소스에 접근할 수 없고, 외부 요청은 속도 제한돼요.
다른 도구와 함께 쓰기
Gordon은 Docker 워크플로에 초점을 맞춰 일반 목적 AI 코딩 어시스턴트를 보완해요. 애플리케이션 코드와 리팩터링에는 Cursor이나 GitHub Copilot 같은 도구를, 컨테이너화, 배포 구성, Docker 작업에는 Gordon을 사용하세요. 서로 잘 어울려요.
더 알아보기 (Learn more)
- Gordon 개요에서 시작하기
- Docker Desktop에서 Gordon 사용하기 살펴보기