AgentSkillsCN

docker-commands

ICJC Docker 服务管理与 Make 命令。适用场景:(1) 针对 Docker、Make、容器、服务、重启、日志等相关请求;(2) 后端/前端/代理的重启操作;(3) 在需要进行构建、容器接入、日志查看或服务状态检查时使用。

SKILL.md
--- frontmatter
name: docker-commands
description: "ICJC Docker 서비스 관리 및 Make 명령어. Use when: (1) docker, make, 컨테이너, 서비스, 재시작, 로그 관련 요청, (2) 백엔드/프론트엔드/에이전트 재시작, (3) 빌드, 컨테이너 접속, 로그 확인, 서비스 상태 확인 필요시."

Docker Commands Skill

ICJC 프로젝트의 Docker 서비스 관리를 위한 스킬입니다.

<trigger_conditions>

사용 시점

다음 키워드나 상황에서 이 스킬을 사용하세요:

  • "docker", "make", "컨테이너", "서비스", "재시작", "로그"
  • "백엔드 재시작", "프론트엔드 재시작", "빌드"
  • "컨테이너 접속", "로그 확인", "서비스 상태" </trigger_conditions>

<service_architecture>

서비스 아키텍처

의존성 순서: MongoDB (27017) → Redis (6379) → Backend (8000) → Agent Gateway (8100→8080) → Frontend (3000)

서비스컨테이너명외부포트내부포트설명
mongodb-primarymongodb-primary-dev2701727017MongoDB Atlas Local
redisredis-dev63796379Redis 캐시
backendbackend-dev80008000FastAPI 백엔드
agent-multi-gatewayagent-multi-gateway-dev81008080AI Agent Gateway
frontendfrontend-dev30003000Next.js 프론트엔드
</service_architecture>
<commands> ## 명령어 레퍼런스

빠른 시작

명령어설명사용 시점
make build전체 빌드 및 실행첫 실행, 의존성 변경
make all빌드 없이 실행이미 빌드된 상태
make devDocker Watch 개발 모드개발 중

개별 서비스

명령어설명영향 범위
make backend백엔드 + Agent 재시작DB/Frontend 유지
make frontend프론트엔드 재시작 (dev)Frontend만
make frontend-prod프론트엔드 (prod)Frontend만
make agentAgent Gateway만 실행Agent만
make agents모든 Agent 재빌드Agent 전체
make agents-light모든 Agent 재시작 (빌드X)Agent 전체
make re-app앱 컨테이너만 재시작DB 유지

로그

명령어대상
make logs전체
make logs-backend백엔드
make logs-frontend프론트엔드
make logs-agentAgent Gateway
make logs-mongoMongoDB 초기화
docker logs -f backend-dev백엔드 (직접)
docker logs -f --tail 100 frontend-dev프론트엔드 최근 100줄

컨테이너 접근

명령어대상
docker exec -it backend-dev bash백엔드
docker exec -it frontend-dev sh프론트엔드
docker exec -it mongodb-primary-dev mongoshMongoDB
docker exec -it agent-multi-gateway-dev bashAgent

클린업

명령어설명주의
make down컨테이너 중지 + 볼륨 삭제데이터 유지됨
make fcleandown + 이미지/네트워크 정리
make purge모든 Docker 리소스 제거매우 주의

MongoDB 관리

명령어설명
make mongoMongoDB 레플리카셋 테스트
make mongo-resetMongoDB 완전 초기화 (데이터 삭제!)
make mongo-backup-devDev DB 백업
make mongo-restore백업 복원
make mongo-sync-dev백업 → 복원
make mongo-rebuild초기화 + 재시작 + 복원

문제 해결

명령어설명
make fix-permissions파일 권한 문제 해결
make frontend-fix-next-perms.next 볼륨 권한 수정
make mem-watch메모리 모니터링
</commands>

<environment_variables>

환경 변수

변수기본값설명
FRONTEND_MODEdevelopment프론트엔드 모드
USER_ID$(id -u)컨테이너 사용자 ID
GROUP_ID$(id -g)컨테이너 그룹 ID
bash
# 프로덕션 모드로 빌드
make build FRONTEND_MODE=production

</environment_variables>

<workflows> ## 일반적인 워크플로우

코드 변경 후 테스트

  1. 백엔드 변경: make backend (빠른 재시작)
  2. 프론트엔드 변경: Hot reload 자동 적용 (재시작 불필요)
  3. Agent 변경: make agents-light (빌드 없이 재시작)
  4. 의존성 변경: make build (전체 재빌드)

문제 발생 시

  1. 로그 확인: make logs-backend 또는 make logs-frontend
  2. 컨테이너 상태: docker ps
  3. 앱만 재시작: make re-app
  4. 그래도 안되면: make down && make build

깨끗한 환경으로 시작

bash
make fclean && make build
</workflows> <instructions> ## 이 스킬 사용 시 지침
  1. 명령어 실행 전 상황 파악: 사용자가 원하는 작업을 정확히 이해하고, 최소한의 영향을 주는 명령어를 선택하세요.
  2. DB 보존 우선: 가능하면 DB를 유지하는 명령어 (make backend, make re-app)를 먼저 시도하세요.
  3. 로그 확인 습관화: 서비스 재시작 후 반드시 로그를 확인하여 정상 동작을 검증하세요.
  4. purge 사용 주의: make purge는 모든 Docker 리소스를 삭제합니다. 사용자에게 경고하세요.
</instructions>